Brukerdefinerte transformasjoner
I tillegg til transformasjoner med EPSG-koder har Proj stor fleksibilitet på å definere egne transformasjoner og konverteringer. Brukerdefinerte transformasjoner bygger på proj-kommandoen cct.
cct +proj=<operation>...
I eksemplet nedenfor transformeres geografiske til jordsentriske koordinater:
cct +proj=cart +ellps=GRS80
En transformasjon med cct kan være et sett av flere operasjoner som er satt sammen i en pipeline.
cct +proj=pipeline
+step +proj=<operation>
+step +proj=<operation>
Et praktisk eksempel:
cct +proj=pipeline
+step +proj=cart +ellps=GRS80
+step +proj=helmert +x=3000 +y=1000 +z=2000
+step +proj=cart +ellps=GRS80 +inv
I eksempelet blir disse tre stegene utført:
- Konvertering fra geografiske til kartesiske koordinater med GRS80-ellipsoiden.
- Translahere de kartesiske koordinatene med vektoren (3000, 1000, 2000).
- Konvertere tilbake til geografiske koordinater med GRS80-ellipsoiden.
Basisoperasjoner i Proj
- helmert
- 7-parameter Helmert-transformasjon. Eventuelt 14-parameter hvis hastigheter er definert.
- 4-parameter Helmert-transformasjon ved 2D. Parametrene ved 2D-Helmert brukes parametrene x, y, s og \(\theta\).
- molobadekas
- Molodensky-Badekas-transformasjon er en utvida 7-parameter Helmert-transformasjon med mulighet for å definere rotasjonspunktet for rx, ry og rz.
- molodensky
- Molodensky-transformasjon i Proj er en transformasjon som består i parametrene \(\delta x\), \(\delta y\), \(\delta z\), \(\delta a\) og \(\delta b\). \(\delta a\) og \(\delta a\) er forskjellen i stor og liten halvakse på kilde- og målkoordinatsystemet.
- affine
- Affin transformasjon i Proj følger standard 3D-affin transformasjon med 14 parametre
- hgridshift
- Ved hgridshift kan man påføre plane translasjoner fra gridd med to kanaler
- vgridshift
- Denne operasjonen korrigerer høyder med interpolasjon i gridd. For eksempel vertikal datumtransformasjon av ellipsoidiske høyder til NN2000 benytter denne operasjonen
- xyzgridshift
- xyzgridshift korrigerer jordsentriske koordinater med translasjoner fra gridd med tre kanaler
- tinshift
- tinshift-modell består av plane translasjoner linka sammen i en TIN-modell. Operasjonen egner seg godt hvis man har punkter i to ulike koordinatsystemer. For eksempel transformasjonen fra EUREF89 til NGO48 er implementert med denne operasjonen.
- deformation
- Denne operasjonen interpolerer hastigheter fra griddet. Griddet kan være 1-, 2- eller 3-dimensjonalt. Men for å benytte denne operasjonen må man ha oppgitt epoken (tida) på målingen og epoken på koordinaten det skal transformeres til.
- defmodel
- Ved denne operasjonen kan man korrigere for deformasjoner innen et gitt området. Korreksjoner kan være aktuelt i områder som for eksempel er utsatt for jordskjelv eller jordras. Metadata for operasjonen er gitt i json og korreksjonsdata på GeoTiff.
- horner
- I horner kan man legge inn parametre for Horner polynom, også kallt multipple regresjonligninger. Operasjonen er opprinnelig brukt i den forelda Nordsjøformelen, en transformasjon mellom ED50 og WGS84 i Nordsjøområdet.
Konverteringer
- cart
- Denne operasjonen konverterer fra geodetiske koordinater til jordsentriske koordinater. Ved å legge til +inv i operasjonen går transformasjonen motsatt vei.
- geoc
- Konverterer fra geodetisk breddegrad til jordsentrisk breddegrad
- topocentric
- Ved topocentic blir jordsentriske koordinater konvertert til topsentriske koordinater. Origo for det toposentriske koordinatsystemet må være oppgitt.
- unitconvert
- Innebærer konvertering av input- og outputkoordinater til ulike enheter.
- axisswap
- Ved denne operasjonen kan man swappe rekkefølgen på koordinatverdier
Konvertering til projeksjoner
Proj har støtte for en mengde ulike projeksjoner. I norske områder bruker for det meste UTM-, TM- eller Mercatorprojeksjoner.
- utm
- Ved denne operasjonen kan man transformere til UTM-soner (01-60) fra geografiske koordinater. Ellipsoiden er være oppgitt.
- tmerc
- Ved tmerc kan man definere transversale mercatorprojeksjoner.
Eksempel med “tmerc”; Konvertering fra geografiske koordinater til NGO48 III:
+proj=tmerc +lat_0=58.0 +lon_0=10.72291666666666667 +a=6377492.0176 +rf=299.15281285
- merc
- merc er standard Merkatorprojeksjon. Et eksempel på dette er WGS84 World Mercator