A Guide csillagászati szoftver bővítési lehetősége
A Project Pluto által készített Guide csillagászati
programrendszer méltán egyike a legnépszerűbbeknek, én is már jó néhány éve
használom. Mint a kettőscsillagok iránt érdeklődő amatőr, mégis szükségem volt
arra, hogy igénybe vegyem a bővítési lehetőséget. Ugyanis a Guide-ban található
számos katalógus mellett lehetőség van további adatbázisoknak az eredetivel egyenrangú
beépítésére. Ehhez csupán két dologra van szükség: bizonyos formai
követelményeket kielégítő adatállományra, és egy neki megfelelő definíciós
modulra, amely egyedül vagy többedmagával egy ".TDF" (Text Definition
File) kiterjesztésű állományban kell legyen. (Az egyszerűség kedvéért ezt a
továbbiakban gyakran "TDF fájlnak, állománynak" nevezem, de általában
egy modult értek alatta).
1. Adatállomány
A célunknak megfelelő egyszerű szövegállomány azonos
szerkezetű sorait rekordoknak nevezzük, melyet a különböző adatok (mezők)
alkotnak. Ilyen állományt sok esetben az Interneten készen találunk - más
szerkezetű anyagok átalakításáról a munka egyedisége folytán itt nem
beszélhetünk. Az viszont gyakrabban
előfordulhat, hogy egy sok megabájtos állományt speciális igényünknek
megfelelően leszűkítünk, amihez minimális számítógépes ismeretek elegendőek,
illetve segédprogramokkal megoldhatók. Ha az eredeti adatállományhoz van TDF
fájl, akkor azt (kisebb módosítással) ide is felhasználhatjuk.
A rekordok szerkezete a TDF ismertetésénél leírtakból
következik.
2. Definíciós modul
Ahhoz, hogy a Guide program az adatok megfelelő
megjelenítését el tudja végezni, szükség van egy pontos leírásra. Én itt csupán
a minimálisan szükséges tudnivalókat ismertetem saját tapasztalataim alapján.
További részletek megismeréséhez a program beépített TDF fájljainak vagy a
Project Pluto honlapjának tanulmányozását tudom ajánlani.
A leírásban minden utasítást külön sorba írjunk, üres
sorok tetszőleges számban lehetnek. Ugyanazon adatra szükség szerint többször
is lehet hivatkozni. Szigorúan kötött sorrend nincs, de a felhasználónak is
könnyebb, ha a leírásnál az áttekinthetőség céljából betart bizonyos
"logikai" sorrendet. A később ismertetésre kerülő "kiírt
adatok" sorrendjét a TDF-beli sorrendjük határozza meg. A sorok
kulcsszóval kezdődnek, melyeket a jelen leírásban bold betűtípussal
emelek ki.
A definíciós modul első sorában a
file d:\útvonal\adatfájl.név
információt adjuk meg értelem szerűen.
A második sorba a
title Katalógusnév
leírás kerül. A Katalógusnév fog megjelenni abban a
listában, ahol a képernyőn megjeleníteni kívánt adatállományokat választjuk ki.
Az állományt a
shown 0 # az adatállomány induláskor nem kerül
megnyitásra, VAGY a
shown 1 # az adatállomány induláskor megnyitásra
kerül,
# és a más helyekről is jól ismert befejezést jelentő
end
kulcsszóval fejezzük be, amire azért is szükség van, mert
ezzel választjuk el a leíró modulokat egymástól.
Egyúttal megismertük a megjegyzések beírását lehetővé
tevő # jelet is, amely akár a sor elején, akár a tényleges leírást
követően elhelyezhető, hatása a sor végéig tart.
A továbbiakban az egyes adatok
leírásánál a megfelelő kulcsszavakat kell használni, kiegészítve
általában az adat rekordbeli kezdő pozíciójának (KP) és hosszának (H)
megadásával, amit "formátum sztring" követhet. Pl. ha az objektum
fényessége mező a 28. oszloptól a 32. oszlopig tart a rekordban, akkor
28 5 számpárt adunk meg szóközzel elválasztva egymástól, és a
kulcsszótól is.
2.1. Az objektum megjelenítését leíró sorok
Bár az adatok különbözőek, nyilvánvalóan a koordináták nélkülözhetetlenek. Ezt a
RA H KP H
RA M KP H
RA S KP H # illetve
de d KP H
de m KP H
de s KP H
sorokkal határozzuk meg.
Az idő- és ívmásodperc (esetleg idő- és ívperc
adatok is) elmaradhatnak. Amennyiben bármelyikük tizedes tört alakban
szerepel, akkor az egységet követő sorban
units1 N
formában adjuk meg, hogy "N" tizedesről van szó;
ebből következik, hogy a tizedespontot(!) az adatállománynak nem kell
tartalmazni, ami gyakran szokásos is ilyen táblázatoknál.
Jó tudni! A rektaszcenzió és deklináció tényleges értékét az egyes mennyiségek összege adja. Lássunk erre egy példát:
Az adatállományunk valamelyik rekordja a következő:
01234+5432-098.7...............
A koordinátaleíró rész az alábbi:
RA H 1 2
RA M 3 3
units1 1
RA S 11 6
Az objektum rektaszcenziója 1h 21min 45,3s lesz (23,4min-98,7s)
A koordináta epocháját pl.
epoch 2000
formában adjuk meg.
A képernyőn megjeleníteni kívánt nevet a
text KP H
formátumban adjuk meg.
Az objektum "szimbolikus jelét" is definiálnunk
kell, ha a "beépített szimbólumok" között nincs megfelelő. Ezt a type
kulcsszóval kell megtennünk, amit egy s után következő, egymástól
pontosvesszővel elválasztott paramétersorozat követ.
Lássuk először a beépített szimbólumok listáját a megadás szerinti formátumban:
type 0 # nyílthalmaz
type 1 # gömbhalmaz
type 2 # diffúz köd
type 3 # planetáris köd
type 4 # galaxis
type 5 # OC és köd
type 6 # csillag
type 7 # háromszög szimbólum
type 8 # röntgen forrás
type 9 # rádió forrás
A saját definiálású szimbólumokat betű- és számkombinációkkal adjuk meg:
- A cN; az utána következő elemek színét határozza meg (tehát
többszínű szimbólumnál többször is előfordul). Az utolsóként megadott
színkód határozza meg a kiírásra kerülő név színét.
A színek N kódjai
1 - v.zöld | 5 - piros | 9 - s.lila | 14 - s.szürke |
2 - v.barna | 6 - barna | 10 - s.zöld | 15 - háttér inverze |
3 - v.kék | 7 - v.lila | 11 - zöld |
4 - sárga | 8 - s.kék | 13 - v.szürke |
- Az eX,Y,R; az adott pozíció koordinátarendszerében értendő X, Y középpontú R sugarú körvonal megadása.
- Az EX,Y,R; mint az előző, csak korong (a cN; színnel kitöltött kör).
- Az fN;X1,Y1;…...;XN,YN; sorozat N csúcspontú alakzat, a csúcspontok relatív koordinátáival.
- Az mX,Y; az X,Y relatív koordinátájú pontra mozgást jelenti.
- Az lX,Y; az "m" pozíciótól X, Y-ig vonalat húz (l (line) betű, nem 1 szám!).
Az alábbi leírás az objektum pozíciójában egy piros színű, 96 pixel nagyságú, négyágú csillagot jelenít meg, közepén 10 pixel sugarú koronggal:
type sc5;f8;-48,0;-8,8;0,48;8,8;48,0;8,-8;0,-48;-8,-8;E0,0,10;
Ha az állomány tartalmazza az objektumok látszó szögméretét, akkor a
sizx KP H
sorral érjük el a méretarányos ábrázolást, ahol az x
lehet d (=fok), m (=ívperc) vagy s (=ívmásodperc) az adatállományban
használt egységtől függően.
A csillagok kivételt jelentenek ez alól, mert méretük a fényességük szerint a
mag KP H
sor alapján, az egyéb beállítástól függően alakul.
Az eddig leírtak használatával tehát egy adott
epochájú égi koordinátánál az objektum (méretarányos) szimbólumát
tudjuk megjeleníteni a nevével együtt. További ide kapcsolódó hasznos
kulcsszavakat ld. a 2.3. alatt.
2.2. Adatok megjelenítése
Két - illetve három - esetet különböztethetünk meg.
A Guide használatakor az objektum jelére kattintva
egy kisebb ablakban megjelennek a fontosabb információk. Itt a
fényesség adatot, az időpontnak megfelelő horizontális koordinátákat,
valamint a kelés, delelés és nyugvás idejét a program automatikusan
jeleníti meg, a TDF állománytól függetlenül. Az ablak "More info"
gombját megnyomva pedig egy terjedelmesebb, akár több oldalnyi szöveg
válik láthatóvá.
A kattintásra megjelenő egyes adatokat "~c", a
bővebb információk adatait a "~r", a mindkét helyen azonos formában
megjelenőket a "~b" kulcsszóval jelöljük, a sor elején kezdve, és
természetesen idézőjelek nélkül. Ezt követi az adat helyének már ismert
KP és H számértéke, valamint legtöbb esetben a fentebb említett
formátum sztring.
Erről a következőket kell tudni:
- A szöveg a speciális vezérlő karakterek kivételével változatlanul kiírásra kerül.
- Lehetőség van a Guide Help állományában szereplő
egyes fogalmak elérésére oly módon, hogy a szót ^caret^ karakterek közé
zárjuk. Ezt - ha másért nem - az egyöntetűség kedvéért érdemes
használni; az ilyen, eltérő színnel látszó szóra kattintva megjelenik a
Guide vonatkozó magyarázata. Pl. a ^BD^ a Bonner Durchmusterungról ad
információt. Sajnos amíg a Guide teljes magyar nyelvű kiadása meg nem
jelenik, addig ennek a lehetőségnek az igénybevételéhez kénytelenek
vagyunk az angol (vagy más beépített) nyelv szavait használni. Ha ezzel
a segítséggel nem kívánunk élni, akkor akár magyar nyelvű szöveget is
használhatunk.
- A KP és H által meghatározott konkrét adatot a %s
jelképezi, helyén a képernyőn az adat fog megjelenni. Amennyiben ez a
vezérlőkarakter a sorban nem szerepel, akkor a kijelölt adat figyelmen
kívül marad, nem kerül kijelzésre ("fiktív adatkijelölés"). Nagyon
hasznos dolog, hogyha a meghatározott mezőben adat nincsen, akkor a
szöveg sem jelenik meg.
- Végül - akár több - soremelést a \n vezérlő karakter sztringbe helyezésével kell eszközölnünk.
Nem ritkán előfordul, hogy a rekord bizonyos mezői
kódot tartalmaznak, ami "feltételes" megjelenítési lehetőséget igényel.
Ezt a H=0 hossz jelzi, amit a "kódkarakterek" követnek, külön soronként
írva. Lássunk erre egy példát a CCDM katalógus TDF állományából:
~r 87 0 0 ^BD^
~r 87 0 2 ^CD^
~r 87 0 4 ^CPD^
~r 87 0 6 ^AGK^2/K
~r 87 0 8 ^SAO^
.
.
.
~r 88 8 %s\n
A fenti részlet mutatja, hogy a rekord 87.
pozíciójában lévő 0 kód esetén a BD, 2 kód esetén a CD sít.
katalógusból származik a 88. oszlopban kezdődő 8 karakter hosszú
csillagazonosító, ami az ~r kulcsszó következtében csak a "More info"
ablakában jelenik meg, help elérési lehetőséggel.
2.3. További (hasznos) lehetőségek
Fontos előírás a
sort 1
, amit csak akkor alkalmazhatunk, ha az adatállomány
rektaszcenzió szerint növekvő sorrendben rendezett; viszont akkor
célszerű, mert jelentősen meggyorsítja a kirajzolást. A
line size nnn #rekordhossz, illetve
nlines nnnnn #rekordok száma
definíciókra föltétlen szükség van, ha a rekordokat
soremelés/kocsi vissza karakterek nem különítik el egymástól, egyébként
elhagyhatók. Az
offset nnnnn #eltolás
kulcsszónak akkor vesszük nagy hasznát, ha az
adatállomány elején a tényleges adatok előtt egyéb szöveg található, és
ha CD-n van, akkor módosításra nincs lehetőség.
A rendszerhez hozzáadott adatállományban lévő
objektumokat adott esetben szeretnénk megkeresni: erre a célra szolgál
a Go to menü Go to .TDF object tétele.
Ennek kiválasztásakor megjelenik
a katalógusok listája, melyek közül egyet kiválasztva meg kell adnunk a
keresett objektum nevét. Ha ez karakter pontossággal nem egyezik az
állományban levővel, "Object not found!" üzenetet kapunk. A probléma
megelőzését segítik a
goto case #kis- és nagybetűk között ne legyen különbség, és a
goto spaces #többszörös szóközök
lekezelését biztosító sorok.
Végül megemlíthetem még a ritkábban szükséges
align nn
kulcsszót, ami az objektum nevének elhelyezését
szabályozza a szimbólumhoz viszonyítva (az nn kódszám jelentését ki
lehet kísérletezni annak, akit ez érdekel), ha a default jobbra fent
elhelyezés valami okból nem felel meg. A
pref ABCD #prefix kulcsszó segítségével az ABCD állandó szöveget kiírathatjuk a név elé.
Szintén praktikus lehetőség a
label spaces
, amely a név belsejében több egymásutáni space karakter helyett csak egyet jelenít meg (pl. WDS katalógus).
A programban található TDF állományok
tanulmányozásával nyílván további, adott esetben fontossággal bíró
kulcsszavakat lehet találni, és használatukat megfejteni. A TDF modulok
fejlesztését megkönnyíti az, hogy többfeladatos rendszerben (pl.
Windows) a Guide program működése közben síma szövegszerkesztővel (!)
módosított és elmentett állomány hatása azonnal, a program újraindítása
nélkül érvényesül és tanulmányozható.
Megjegyzem, hogy a fentieket jómagam is alapvetően a
Guide 6-os verziójában (majd később a 7-esben is) kipróbálva írtam le,
ezért a más verzióknál esetleg előforduló
eltérésekért "felelőséget nem vállalok".
Befejezésül ejtsünk pár szót a fentebb részletezett két állomány Guide-beli használatáról is.
- Az adatállomány tetszőleges adathordozón és könyvtárban lehet, ezt a TDF első sorában megadjuk.
- A TDF állomány(ok)nak a merevlemezen, a Guide
könyvtárában kell lenniük.
Az Extras menü Toggle user datasets
bejegyzését kiválasztva egy ablakban megjelenik a felhasználói
adatállományok listája, ahol megadhatjuk, hogy mely katalógusok
objektumait jelenítse meg a szoftver a képernyőn. Ennek a menüpontnak
minden kiválasztásakor vizsgálatra kerülnek a TDF kiterjesztésű
állományok, és moduljai 2. sorában talált címek beépülnek a
listába. Természetesen a katalógusok kijelzésre választásánál érdemes
kellő önmérsékletet tanúsítani, egyrészt a kép "szellőssége", de nem
kevésbé a megjelenítés gyorsasága érdekében.
Annak reményében, hogy az érdeklődőket sikerült a
fölöttébb hatékony Guide csillagászati program továbbfejlesztésének
izgalmas útján elindítani, mindenkinek javaslom, hogy a karosszékben
megismerteket lehetőség szerint a szabad ég alatt (is) hasznosítsa.
Vaskút, 2003.03.08. Nyomtatásban megjelent a Meteor 2003/9. számában,
valamint a 2003-ban kiadott MCSE CD-n.