2012. 08. 21.
WGS84 koordináta formátumok kezelése tovább fejlesztve.
Nagyon hálás lennék, ha a felhasználók a fenti program használata során tapasztalt hibákról és hiányosságokról
e-mail -ben,
vagy az
üzenő-füzet
oldalon értesítenének.
A WGS84 pontlista konverzió GPX vagy KML formátumba program használata
A program pontlista fájlformátumú, földrajzi szélesség (Φ) és hosszúság (Λ), vagy geocentrikus XYZ koordináta adatokat tartalmazó fájlok
GPX vagy KML fájlformátumba konvertálására szolgál.
Ha a
WGS84 Φ, Λ, h koordinátákat tartalmazó fájl (Mérete max. 800 kByte):
címkéjű mezőben egy pontlista formátumú fájl elérési útját és nevét adjuk meg, majd a hozzá tartozó
Adatok elküldése címkéjű billentyűre kattintunk, akkor a fájl tartalmát konvertálhatjuk
GPX vagy
KML formátumba.
A megadott fájlnak a következő követelményeknek kell megfelelnie:
-
Nevében ne legyen szóköz (ASCII 32), vagy az angol abc-ben nem szereplő karakter.
A nem ajánlott karakterek használata nem okoz fatális hibát, csak a visszadott
fájl nevében lehetnek hibásan kódolt karakterek. Ahogy időm engedi megoldom a
karakter konverziót.
-
Bővítménye kötelezően txt.
-
Normál szövegfájl (DOS, Windows) formátumban kell tartalmaznia a pontokat.
Ilyen fájlokat állítanak elő például az Ms Notepad, ConTEXT, NotePad++
editorok. De az általam ismert összes szövegszerkesztő, táblázatkezelő stb. program is
képes az előállítására.
Hibás fájlformátum esetén a program üres, vagy nem megfelelő tartalmú állományt adhat vissza.
-
Rekordszerkezete:
Pontnév WGS84Φ WGS84Λ [Ellipszoid feletti magasság]
vagy
Pontnév WGS84X WGS84Y WGS84Z
Tehát a fájl minden rekordja (sora) egyetlen pont adatait tartalmazza. Minden pontnak kell, hogy legyen
pontneve/pontszáma, és a koordinátákat a fenti sorrendben kell megadni. Az Ellipszoid feletti magasság megadása nem kötelező,
a Z koordináta viszont nem hagyható el.
A fájl tartalmának elején ne legyen a rekordok (sorok) tartalmát leíró, magyarázó fejléc sor. A program nincs felkészítve ilyen
fejléc sorok értelmezésére, többek között azért sem, mert a felhasználók rendkívül változatos tartalommal szokták azokat megadni,
így az értelmezésükre tett próbálkozások az esetek nagy részében hibás eredményre vezetnének.
-
A WGS84 földrajzi szélesség (Φ) és hosszúság (Λ) koordinátákat fok.tizedesfok, vagy fok perc másodperc.tizedesmásodperc
formátumban adhatjuk meg. Az utóbbi esetben a fok, perc, másodperc adatokat szóköz (ASCII 32) karakterrel kell elválasztani, és nem szabad
bennük használni a ° ' " szimbólumokat. Tehát nem
47°12'23.4562" vagy 47° 12' 23.4562" hanem
47 12 23.4562 formában kell azokat megadni.
.
A WGS84 geocentrikus XYZ koordinátákat méter mértékegységben kell megadni.
A bemenő WGS84 koordináták hazánk területén egyszerűen megkülönböztethetőek.
A Φ (szélesség) 45°, a Λ (hosszúság) 20°, az X (északi)
4000000 m, az Y (keleti) 1000000 m körüli értékű.
-
Az egyes pontok adatait a rekordokban (sorokban) csak egy vagy több szóköz (ASCII 32), tabulátor (ASCII 9), vagy egy pontosvessző (ASCII 59)
karakter választhatja el.
Ebből következik, hogy a fájlban szóköz, tabulátor, pontosvessző karakter csak az adatmezők elválasztására használható, és
az egyes pont adatok (Pontnév, WGS84 koordináták, Ellipszoid feletti magasság) belső szóközt/tabulátort/pontosvesszőt nem
tartalmazhatnak. Kivéve a fok perc másodperc formátumú földrajzi koordinátákat, amelyekben a fok, perc, másodperc elválasztására szóköz karartert kell használni.
Helytelen: telefon fülke 46.68312 19.95786 132.71
Helyes: telefon_fülke 46.68312 19.95786 132.71
Helyes: telefon_fülke 46 40 59.232 19 57 28.296 132.71
Az egyes pontok soraiban (rekordjaiban) a pont program által értelmezett adatai (Pontnév, WGS84 koordináták,
Ellipszoid feletti magasság) után, azoktól a fentebb leírt módon elválasztva, tetszőleges további adatok szerepelhetnek.
A program azokat figyelmen kívül hagyja.
-
A koordinátákban a tizedeselválasztó jel vessző (ASCII 44), vagy pont (ASCII 47) karakter lehet.
Ebből és az előző pontból következően a koordináták nem tartalmazhatnak semmilyen ezres elválasztó karaktert!
-
Nem kötelező a pontok magasságának megadása.
Ha nem szerepel pont magasság egy rekordban, akkor ne szerepeljen abban más a program által nem kezelendő adat sem, mert a
program a pontok negyedik adatát mindenképpen magasságként próbálja meg értelmezni.
-
Az egyes pontok adatainak végét (rekordok / sorok) kocsivissza+sormelés (CR+LF = ASCII 13 + ASCII 10) karakterek jelzik.
Az editorokban, szövegszerkesztőkben ezek együttes bevitelére általában az Enter billentyű szolgál.
Linux operációs rendszer alatt a szabványos sorvég jel csak LF (soremelés, ASCII 10), MacOS alatt pedig
csak CR (kocsivissza, ASCII 13) karakter. A programot igyekeztem úgy megírni, hogy ezekkel a sorvég jelekkel is
elboldoguljon, de nincs lehetőségem ennek alapos tesztelésére.
Fontos Tudnivalók a programot használni kívánó látogatóim számára
2010. 09. 04.
A feltöltendő fájl szerkezetének eddigi módon történt leírása úgy tűnik nem bizonyult
eléggé egyértelműnek, vagy közérthetőnek. Igen gyakran kap a program olyan fájlszerkezeteket
amelyek kezelésére nincs felkészítve. Nekem ez furcsának tűnik, de hát én nap mint nap dolgozom
WORD, EXCEL, TXT formátumú koordináta állományokkal, és végzek formátum konvertálásokat
közöttük, így valószínűleg az elvárásaim túlzóak.
A fájlszerkezettel kapcsolatban támasztott apvető követelmények megegyeznek az
EOV>>WGS84
irányú koordináta transzformációnál ugyanilyen című fejezetében részletesen leírtakkal.
A konverzió elvégzése során a program a pontokat GPX vagy KML formátumú fájlba menti, és miután elkészült,
felkínálja annak letöltését.
Az
Az eredmény fájl szerkezete csoport kapcsolóival állíthatjuk be az eredmény fájl formátumát.
Az
Az eredmény fájl objektumai csoport kapcsolóival határozhatjuk meg, hogy a kimeneti
fájlban a pontokat egyedi útpontokként, vagy útvonalak, nyomvonalak töréspontjaiként kell megjeleníteni.
Ha egy bemeneti fájlban több útvonalat, vagy nyomvonalat akarunk megadni, akkor azok elválasztására
0 (nulla) pontnevű
pontokat kell használnunk, Tehát a másodiktól kezdve minden útvonalnak vagy nyomvonalnak 0 pontnevű ponttal kell kezdődnie.
A
kml formátum használata esetén a program nem tesz különbséget az útvonalak és nyomvonalak között, mindkét beállítás
esetén útvonal jelenik meg a kimeneti fájlban.
Ha az
Útpontok vagy
Útvonalak kapcsolót választjuk, akkor a bemeneti fájlban szereplő pontok önálló, pontmarkerrel megjelölt
objektumként is megjelennek a kimeneti fájlban, a
Nyomvonalak kapcsoló kiválasztása esetén, csak a bemeneti fájlban szereplő pontokat
összekötő vonalak/vonalláncolatok jönnek létre.
Az
Az eredmény fájl objektumai csoport szín, ikonméret, vonalvastagság beállítására szolgáló vezérlőivel
a kimeneti fájl objektumainak megjelenítési jellemzőit állíthatjuk be. Tapasztalataim szerint ez egyenlőre csak a
kml formátum használata
esetén határozza meg egyértelműen az objektumok tulajdonságait. Ahogyan időm és ambícióm engedi, megpróbálom a
gpx formátum esetén is
tisztázni ezek megadásának lehetőségeit.
Az
Útpontok vezérlőcsoport
Pontszámok címkéjű kapcsolójával állítható be, hogy a pontokat jelölő objektumok mellett megjelenjen-e
azok pontszáma/pontneve. KML formátum használata esetén a pontszám/pontnév a kapcsoló kikapcsolt állapota esetén is letárolódik a pontmarker
description attribútumában, és egy felbukkanó ablakban megjelenithető, ha egérrel a pontmarkerre kattintunk.