Croatia/Kratki vodici/transformacija koordinata cs2cs

From OSGeo
< Croatia
Revision as of 06:46, 13 December 2010 by Wiki-Mmiler (talk | contribs)
Jump to navigation Jump to search


Transformacija koordinata pomoću proj.4(cs2cs.exe) modula

Kratka teorija datuma i projekcija

U ovom vodiču ne bih ulazio u detaljno objašnjenje projekcija i datuma, već samo objasnio ono što je potrebno da bi na najjednostavniji način transformirali koordinate (datoteku) iz jedne projekcije u drugu pomoću proj.4 modula. Nažalost, dosta ljudi u praksi ne razumije razliku između datuma i projekcije te kada ima neke podatke najčešće ih ne znaju transformirati iz jedne projekcije u drugu upravo iz tog razloga. Pokušati ću to objasniti na laički način. Kada imamo neke prostorne podatke, primjerice shp, kml, dwg … podatke, oni skoro uvijek se nalaze u nekom koordinatom sustavu. Svaki koordinatni sustav mora sadržavati datum i može sadržavati projekciju. Primjerice, podaci koje snimamo s GPS-om se nalaze na WGS84 datumu, ali bez projekcije ili recimo podaci iz katastara se nalaze na Bessel1841 datumu i Transverse Mercator projekciji … itd. Dalje u tekstu će biti objašnjeno što je datum, a što projekcija.

Datum

Geoid c100.jpg

Zemlja nije okrugla, već je oblika "krumpira". S obzirom da se na "krumpiru" vrlo teško (čitaj: nikako) mogu obavljati matematičke operacije, potrebno je Zemlju aproksimirati s nekim matematičkim tijelom. Najbliže obliku Zemlje, a pravilnog oblika, je rotacioni elipsoid. Matematička definicija tog elipsoida i njegova orijentacija se naziva datumom. On se definira skupom parametara, koji trenutno nisu bitni. Na svijetu se koristi mnogo datuma (elipsoida), uglavnom svaka država ima neki svoj datum (elipsoid) koji najbolje paše obliku Zemlje na području te države, ali postoje i globalni datumi (elipsoidi) koje se odnose na cijelu Zemlju. Najpoznatiji globalni datum je WGS84, dok za područje Hrvatske se koristi (bolje rečeno koristio, ali o tome jednom drugi put) Bessel 1841. Koji parametri određuju te datume (elipsoide) je trenutno nebitno, glavno je da znate da postoje ova dva koja se najčešće koriste na području Hrvatske.

Uzmimo jedan primjer, imamo neku točku u jednom datumu (elipsoidu), primjerice na WGS84 (recimo točka snimljena GPS-om). Ukoliko bi htjeli dobiti koordinate te iste točke u drugom datumu (elipsoidu), primjerice Bessel1841, potrebni su nam transformacijski parametri. Ti parametri se nazivaju TOWGS parametri. Skoro svi datumi koji se koriste na svijetu imaju TOWGS parametre. Ukoliko njih ne bi bilo, vrlo teško bi uklopili GPS podatke koji se najviše koriste u praksi. TOWGS parametre definira 7 parametara, tri za translaciju, tri za rotaciju i jedan mjerilo. Primjerice, ovo možete zamisliti kao kada u CAD-u napravite move (translacija), rotate i scale polylinije u 2D prostoru. Za to je potrebno dva parametra translacije (po x i y osi), jedan za rotaciju oko z osi i mjerilo je scale. Ovo je ista stvar, samo u 3D prostoru, tri parametra za translaciju (po x, y i z), tri za rotaciju (oko x,y i z) te jedan za mjerilo (tj. scale). S obzirom da Hrvatska ima "super" sređeno stanje (primijetite navodnike), postoji nekoliko skupova TOWGS parametara. Da ne ulazim u detalje koji sve postoje i gdje se koriste koji, za većinu transformacija su dovoljni parametri koje možete pronaći na ovoj stranici (kasnije u tekstu će biti objašnjeno kako se oni koriste).

Niti pod kojim slučajem ne koristiti parametre koji dolaze u softverima poput AutoCAD-a, ArcGIS-a, QGIS-a i sl., niti sa stranica poput http://spatialreference.org/. U većini slučajeva su krivi i mogu dovesti do potpuno krivih transformacija.

Projekcija

S obzirom da smo Zemlju aproksimirali elipsoidom, još uvijek nam je to neupotrebljivo jer sve koordinate su na elipsoidu u obliku fi i lamda. U ovom obliku nije moguće mjeriti, računati površine ili raditi bilo kakve druge matematičke operacije (teoretski je moguće je dosta teško). Primjerice, s točkama snimljene GPS-om ne možemo raditi standardne operacije poput mjerenja udaljenosti ili površina jer se ti podaci nalaze u WGS84 datumu bez projekcije, tj. na elipslidu. Što znači da su jedinice kutne (fi i lambda) te rezultat mjerenja udaljenosti bi također davao neke kutne jednice koje nemaju nekog smisla. Da bi se to ispravilo, potrebne su nam projekcije.

Ovdje na red dolaze projekcije. One nam omogućavaju da Zemlju koja je trenutno definirana elipsoidom, pretvorimo u ravnu plohu. Kada imamo Zemlju u obliku ravne plohe (ravnina) na njoj možemo mjeriti, računati itd. Projekcija nije ništa više od skupa matematičkih formula koje koordinate na elipsoidu pretvaraju u koordinate u ravnini. Opet kao i kod datuma, za svako područje na Zemlji postoje najpovoljnije projekcije. Ovdje ne bih ulazio u detalje projekcija već se orijentirao samo na Hrvatsku i one "najpopularnije". U Hrvatskoj se koristi Transverse Mercator projekcija ili još zvana Gauss–Krüger projekcija. Ona je također definirana sa skupom parametra. Koji su to parametri, trenutno nije toliko bitno, ali možete ih vidjeti u gore navedenom linku. Koriste se dvije "varijacije" Transverse Mercator-ove projekcije koje za nazivaju 5.zona i 6.zona.

Proj.4 definicije pojedinih koordinatnih sustava

WGS84

  • nije ime za koordinatni sustav već za datum, ali se koristi također za koordinatni sustav koji je na datumu WGS84 bez projekcije
  • najčešće su to podaci koje dobijem pomoću GPS uređaja
  • Google Maps/Earth, OpenStreetMap, Bing Maps … koriste ga kao temeljni koordinatni sustav za pohranu podataka iako prikazuju podatke u projekciji

+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs +towgs84=0,0,0,0,0,0,0


HDKS (Hrvatski Državni Koordinatni Sustav)

  • još uvijek naviše korišten koordinati sustav u Hrvatskoj iako je novi stupio na snagu
  • podaci u ovom koordinatnom sustavu se nalaze na Bessel1841 datumu i Transverse Mercator projekciji

5. zona


+proj=tmerc +pm=greenwich +lat_0=0 +lon_0=15 +k=0.9999 +x_0=5500000 +y_0=0 +ellps=bessel +towgs84=550.499,164.116,475.142,5.80967,2.07902,-11.62386,0.99999445824 +units=m


6.zona


+proj=tmerc +pm=greenwich +lat_0=0 +lon_0=18 +k=0.9999 +x_0=6500000 +y_0=0 +ellps=bessel +towgs84=550.499,164.116,475.142,5.80967,2.07902,-11.62386,0.99999445824 +units=m


Proj.4 modul

Transformcija koordinata je moguća u skoro svakom CAD i GIS softveru, ali ovdje će biti objašnjeno pomoću proj.4 modula kojeg je moguće skinuti s ove stranice. Windows korisnici skidaju "Prebuilt Win32 executables". Nema instalacije već je dovoljno otpakirati zip datoteke bilo gdje na disk, primjerice na D disk (D:\proj). Ne pokušavajte pokretati exe datoteke jer nisu namijenjene za korištenje u windows okruženju već putem komadne linije. Odite na Start->All Programs->Accessories->Command Prompt. Trebala bi se otvoriti komandna linija. Napišite d: , pa cd proj\bin. Trebali bi se sada nalaziti u direktoriju gdje ste otpakirali proj.4 modul. Upišite sljedeću komandu:


cs2cs +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs +towgs84=0,0,0,0,0,0,0 +to +proj=tmerc +pm=greenwich +lat_0=0 +lon_0=15 +k=0.9999 +x_0=5500000 +y_0=0 +ellps=bessel +towgs84=550.499,164.116,475.142,5.80967,2.07902,-11.62386,0.99999445824 +units=m


nakon toga upisujete koordinatu koju želite pretvoriti iz WGS84 koordinatnog sustava u HDKS, odvojenu razmakom, ne zarezom ili točkom-zarez.

Cs2cs.jpg

U primjeru na slici je to koordinata 15d57'48.21" i 45d48'30.29" u WGS84 koordinatnom sustavu, koja označava lokaciju Geodetskog fakulteta u Zagrebu. Pretvorena koordinata u HDKS 5. zona se nalazi ispod unesene koordinate. Na slici se također može vidjeti i visina kod pretvorene koordinate (-41.672) iako nismo unijeli visinu za koordinatu, zanemarite to. Za područje cijele Hrvatske ne postoje parametri koji uključuju i 3. dimenziju, visinu. Visina se mora računati na drugi način, što nije trenutno tematika ovog vodiča.

Sintaksa cs2cs.exe programa je:


cs2cs definicija_koordinatkog_sustava_iz_kojeg +to definicija_koordinatkog_sustava_u_koji


Tako, primjerice, da želimo transformirati koordinatu iz 6. Zone HDKS u WGS84 naredba bi bila:


cs2cs +proj=tmerc +pm=greenwich +lat_0=0 +lon_0=18 +k=0.9999 +x_0=6500000 +y_0=0 +ellps=bessel +towgs84=550.499,164.116,475.142,5.80967,2.07902,-11.62386,0.99999445824 +units=m +to +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs +towgs84=0,0,0,0,0,0,0


Na ovaj način možete transformirati koordinatu po koordinatu. Sljedeći vodič će objasniti kako transformirati cijelu datoteku.