Converting coordinates to ITM with 7 parameters

144 views
Skip to first unread message

Renanel Pickholtz

unread,
Feb 19, 2015, 10:53:38 AM2/19/15
to israel-r-...@googlegroups.com
Hello,
I am trying to convert WGS 84 coordinates to Israeli new system (ITM) with 7 parameters rather than the simple 3 parameters, but I can't figure out where to add the parameters in the code. 

The parameters are:

X Axis Translation   =  - 24.2204 
Y Axis Translation   =  - 17.2200 
Z Axis Translation   =  - 17.8444 
X Axis Rotation   =  - 0.33009 
Y Axis Rotation   =  - 1.85269 
Z Axis Rotation)    =  1.66969 
Scale Difference    =  5.4248 

I'm currently using the following code to define ITM
> DF.latlong <- SpatialPoints(DF[ , c("LON","LAT")], proj4string=CRS("+proj=longlat +ellps=WGS84")) 
> ITM = CRS("+proj=tmerc +lat_0=31.73439361111111 +lon_0=35.20451694444445 +k=1.0000067 +x_0=219529.584 +y_0=626907.39 +ellps=GRS80 +towgs84=-48,55,52,0,0,0,0 +units=m +no_defs")
> converted.DF <- spTransform(fish.sp.latlong, ITM)

This works but there is still an offset for all coordinates (something that always happens when using the defaults conversion rather than the full 7 parameters above - ftp://ftp.systematics.co.il/GIS/2012/PDF/7p_transformation.pdf).

Anyone? Please help

Renanel



Michael Dorman

unread,
Feb 19, 2015, 11:29:45 AM2/19/15
to israel-r-...@googlegroups.com
Hi Renanel,

The additional parameters go into the ITM CRS definition as following. Try using the this definition instead of the one you used in the example -

CRS("+proj=tmerc +lat_0=31.7343936111111 +lon_0=35.2045169444445 +k=1.0000067 +x_0=219529.584 +y_0=626907.39 +ellps=GRS80 +towgs84=-24.002400,-17.103200,-17.844400,-0.330090,-1.852690,1.669690,5.424800 +units=m +no_defs")

Michael

Renanel Pickholtz

unread,
Feb 19, 2015, 11:45:38 AM2/19/15
to israel-r-...@googlegroups.com
Worked great!

Much obliged,
Renanel

Yoni Sidi

unread,
Feb 24, 2015, 4:22:02 AM2/24/15
to israel-r-...@googlegroups.com
there is a shorter way to do this on the import of the shp file:

library(maptools);
shp_poly <- readShapePoly("file.shp", IDvar = "OBJECTID",  proj4string = CRS("+init=epsg:2039"))

Michael Dorman

unread,
Feb 24, 2015, 11:41:28 AM2/24/15
to israel-r-...@googlegroups.com
But this gives the less accurate 3-parameters transformation:

> CRS("+init=epsg:2039")
CRS arguments:
 +init=epsg:2039 +proj=tmerc +lat_0=31.73439361111111
+lon_0=35.20451694444445 +k=1.0000067 +x_0=219529.584 +y_0=626907.39
+ellps=GRS80 +towgs84=-48,55,52,0,0,0,0 +units=m +no_defs

--
You received this message because you are subscribed to the Google Groups "Israel R User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to israel-r-user-g...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Michael Dorman
PhD student
Geographic Information Laboratory
Department of Geography and Environmental Development
Ben-Gurion University, Israel

Reply all
Reply to author
Forward
0 new messages