Matemaatiline kartograafia, praktikum nr 3

Koostanud Raivo Aunap

 

Eesmärk: geodeetiliste arvutuste sooritamine

Vahend: proj.4, MGE Geodetic Calculator

 

Ülesanded:

1. Pakktöötlusprogramm PROJ.4

Praktikumi töö nr 1 lahendamise käigus kirjeldasime ise matemaatiliselt otse- ja vastuülesande arvutamaks geograafilistest koordinaatidest tasapinnalised ristkoordinaadid ja vastupidi. Loomulikult on sedalaadi valmisprogramme, osa neist on kommertstarkvara, kuid leidub ka vabavara. Üheks selliseks on paljude tööjaamaprogrammide esiisa tingliku nimega PROJ.4. Seda programmikoodi kasutab nt ka selline tuntud UNIX-i vabavara-GIS nagu GRASS. Antud praktikumi eesmärgiks on õpetada triviaalsemal tasemel kasutama käsureal juhitavaid pakktöötlusprogramme, nagu PROJ.4 seda on.

PROJ.4 on UNIX programmi DOS-i versioon, seega pöördume programmi poole Windows’is üle käsuviiba ehk Command Promt’i. Mugavam, juhul kui DOS-is liikumine tekitab raskusi, on siiski opereerida DOS-i brauserite abil nagu näiteks Norton Commander vms. Üldiselt piisab siiski üpris vähestest DOS-i käsklustest nagu

[ketta nimi]:                 - kettale pöördumise vorm, näiteks c:

cd [pöördustee]                      - change directory, kataloogi pöördumise vorm

dir/p                            - directory, kataloogi sisu kuvamine lehe kaupa

exit                              - Command Promt’i lõpetamine

proj.4 võib leida geograafia instituudi sisevõrgu arvuti ARKAADIA väljajagatud kataloogist Proj

Programmi kodusait asub aadressil http://www.remotesensing.org/proj/, maha tasub laadida eelkõige Windowsile kirjutatud versioon (fail proj446_win32_bin.zip, seisuga 15.03.2005). Saidilt on kasulik järele vaadata ka mitmeid juhendmaterjale, dokumentatsiooni ja installeerimisjuhiseid.

 

Programmist endast. Kui trükkida käsureale lihtsalt EXE-programmi nimi “proj”, saame ülevaate käsu süntaksist:

proj [-bceEfiIlmorsStTvVwW [args]] [+args] file[s]

Programmi juhitakse kahesuguste käsklustega:

Niisiis peaksime näiteks Eesti baaskaardi süsteemi koordinaatide arvutamiseks sisestama minimaalselt järgneva käsurea:

proj +proj=tmerc +ellps=GRS80 +lat_0=0 +lon_0=24 +x_0=500000 +k=0.9996

programmi viip jääb järgnevalt ootama geograafiliste koordinaatpaaride sisestust, nende järjekord on vaikimisi pikkus ja laius eraldatuna tühikuga, formaat on õnneks küllaltki paindlik.

Programmi reziimist väljumiseks kasutatakse klaviatuuril katkestuskombinatsiooni Ctrl + C.

Kui aga soovime lisada mitmeid täpsustavaid võtmeid, parameetreid, argumente veel, siis võib jääda DOS-i käsurea 256-märgilisest puhvrist väheseks. Mõistlikum on kasutada initsialiseerimisfaile, kuhu saab kõik vajalikud +argumendid ette kirjutada. Vaata eeskujuna PROJ.4-ga sageli kaasa pandud initsialiseerimisfail world. Lahendus on sarnane ARC/INFO-le, milles kasutatakse samuti AML-käsufaile.

Loo sarnane omafail (nt tekstiredaktoriga Notepad), kuhu saaks kirjutada Eesti koordinaatsüsteemide initsialiseerimisparameetrid. Nagu märgata võib, üks koordinaadisüsteem algab ja sulgub selles failis klambritega < >, kus esimese vahele kirjutatakse kaardi- või geodeetilise süsteemi märksõna. Nii on võimalik ühte faili kirjutada paljude erinevate geodeetiliste süsteemide parameetrid. Initsialiseerimisfailis pole argumentidele vaja ette lisada +märki.

Kui selline initsialiseerimisfail on valmis, võib baaskaardi välja kutsuda näiteks järgnevalt:

proj +init=/proj/eesti:tm_balt

kus "/proj/eesti" märgib antud juhul loodud initsialiseerimisfaili nime koos pöördusteega ning "tm_balt" kooloni taga tähistab selles failis seda klambrites antud märksõna, millele järgnevad baaskaardi projektsiooniparameetrid.

Programmi põhiliseks rakenduseks on siiski ette nähtud, et sisendina ja väljundina esinevad failid, mitte klaviatuurilt sissetoksitud koordinaadipaarid. Nii võime kirjutada meid huvitavad koordinaadid eelnevalt tekstifaili ja lasta see “masinast läbi”:

proj +init=/proj/eesti:tm_balt sisend.txt > väljund.txt

Peaksime olema varustatud küllaldase teadmisega, et lahendada nüüd konkreetsem ülesanne:

  1. kirjuta PROJ.4 jaoks initsialiseerimisfail, milles oleks defineeritud nelja Eestile olulise koordinaatsüsteemi – so L-EST'97; TM_Baltic-93; Pukovo-42; Pulkovo-63 – parameetrid (so vajalikud +argumendid)
  2. koosta praktikumitöös nr 2 leitud kuue linna keskpunktide L-EST’97 süsteemi geodeetiliste koordinaatide (B; L) loetelu tekstifailis (lihtne tekstifail, kus igal real on ühe punkti koordinaatpaar, eristajaks tühik). Läbi PROJ.4 arvuta nimetatud failist väljundfail, milles on samade punktide ristkoordinaadid L-EST’97 süsteemis. Arvutuste täpsuseks määra seitse kohta peale koma.

 

2. Koordinaatteisendused MGE mooduliga Projection Manager

Praktikumi ülesandes nr 2 me juba kasutasime ühte võimalust teada saada mingi punkti koordinaatide väärtust teises süsteemis. See toimus aktiivse päringu (nn coordinate readout) abil – pidime aktiveerima nn datapunkti, mille koordinaadid meid huvitasid. MGE pakub aga ka mittegraafilist võimalust arvutada koordinaadid ühest süsteemist teise ümber. Selleks on MGE Projection Manager (MGPM) moodulist leitav alamprogramm MGE Geodetic Calculator (Convert > Geodetic Calculator). Ühelt poolt on ebamugav, et meil tuleb arvutamiseks üles laadida kogu MGE ja sellega ka koordinaatide määratlused. Teiselt poolt, kui see juba tehtud on, siis leiame siit PROJ.4-ga võrreldes täiendavaid võimalusi ja mugavusi.

Kasuta Eesti geodeetilise põhivõrgu punktide andmebaasist väljavõetud, L-EST'97 tasapinnalisi ristkoordinaate sisaldavat, tabelit EVP3.txt (L-EST97 koordinaadid väljadel "Xl97" ja "Yl97") ja vormista sellest MGE Geodetic Calculator'i jaoks mõistetav tekstifail. Ümberarvutuste käigus tuleks säilitada punkte identifitseerivad nimetused.

Arvutusülesanne:

Arvuta ülesmärgitud punktide koordinaadid ümber

  1. Pulkovo-42 ristkoordinaatideks
  2. kolmemõõtmelisteks geotsentrilisteks ristkoordinaatideks

 

Ülesandest nähtub, et kasutama peaks eelmise praktikumi käigus kasutatud L-EST koordinaatsüsteemile loodud faili, mille teisese koordinaatsüsteemina defineeriti Pulkovo 42.

Nagu võib tähele panna, on Geodetic Calculator’il kolm põhilist välja: sisendi ja väljundi defineerimiseks ning protsessiväli, millel saame arvutustulemusi vaadata. Kui protsessime tekstifaili, tuleb loomulikult teha vastav valik sisendmenüüdes. Jälgida tuleb ka seda, et faili formaat tuleb programmile defineerida, näiteks leppenimede kasutamisel tuleb näidata, et esimene kirje reas on märgend.

 

Geodeetilisi arvutusi võib küllalt sageli ruumiandmete kokkupanemisel ja võrdlemisel ette tulla. Selle tõttu leiab ka internetist mitmeid lihtsaid vabavaralisi programmikesi. Viimastest on silma jäänud eelkõige GeoCalc 4.20 ja Viktor Nekrassovi loodud poolenisti vabavaralise Coordinate Calculator'i. Peotäis teisi lihtsamaid koordinaatide konverteerijaid leiab ka GeoCommunity kodulehelt. Kui keegi leiab PROJ.4-ga võrreldava vabavara, siis oleksin tänulik info eest ja plusspunktid praktikumiülesande eest.

 

Tulemused:



Tagasi, täiendused 04.05.2007