OruxMaps
Visit the new forum: <a href="http://www.oruxmaps.com/foro">OruxMaps</a>

Join the forum, it's quick and easy

OruxMaps
Visit the new forum: <a href="http://www.oruxmaps.com/foro">OruxMaps</a>
OruxMaps
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Dutch datum and projection

2 posters

Go down

Dutch datum and projection Empty Dutch datum and projection

Post  Gijsbert Tue Dec 22, 2009 5:24 pm

I am trying to convert my dutch 1:25.000 maps using your OruxMapsDesktop application. The maps use the dutch datum ("RijksDriehoekMeting") and a Transverse Mercator projection. They are currently calibrated using OziExplorer .map files. When running the conversion I get the unknown datum and projection messages. What parameters to select manually in this case?

I tried among others to enter WGS84 as datum and specifying the coordinates of two corners as specified in the .map file (MMPL,2 and 4). When doing so I am about 2 km off position.

Below is, as an example, the .map file of the 1:25.000 map of my home location

OziExplorer Map Data File Version 2.2
40a_oosterbeek
40a_oosterbeek.jpg
1 ,Map Code,
Rijksdriehoeksmeting,WGS 84, 0.0000, 0.0000,WGS 84
Reserved 1
Reserved 2
Magnetic Variation, , , E
Map Projection,Transverse Mercator,PolyCal,No,AutoCalOnly,No,BSBUseWPX,No
Point01,xy, 100, 100,in, deg, , ,N, , ,W, grid, , 180000, 450000,N
Point02,xy, 4100, 5300,in, deg, , ,N, , ,W, grid, , 190000, 437000,N
Point03,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point04,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point05,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point06,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point07,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point08,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point09,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point10,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point11,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point12,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point13,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point14,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point15,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point16,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point17,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point18,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point19,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point20,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point21,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point22,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point23,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point24,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point25,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point26,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point27,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point28,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point29,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Point30,xy, , ,in, deg, , ,N, , ,W, grid, , , ,N
Projection Setup, 0, 5.3876333, 0.9999079, 155000, -5316592,,,,,
Map Feature = MF ; Map Comment = MC These follow if they exist
Track File = TF These follow if they exist
Moving Map Parameters = MM? These follow if they exist
MM0 , Yes
MMPNUM,4
MMPXY,1, 100, 100
MMPXY,2, 4100, 100
MMPXY,3, 4100, 5300
MMPXY,4, 100, 5300
MMPLL,1, 5.75204368914, 52.03873277362
MMPLL,2, 5.89780260717, 52.03819186738
MMPLL,3, 5.89647687159, 51.92133624326
MMPLL,4, 5.75109670079, 51.92187489502
MM1B,2.5
MOP,Map Open Position,0,0
IWH,Map Image Width/Height,4200,5400

Gijsbert

Cantidad de envíos : 2
Fecha de inscripción : 2009-12-22

Back to top Go down

Dutch datum and projection Empty Re: Dutch datum and projection

Post  orux Tue Dec 22, 2009 6:52 pm

Gijsbert wrote:I am trying to convert my dutch 1:25.000 maps using your OruxMapsDesktop application. The maps use the dutch datum ("RijksDriehoekMeting") and a Transverse Mercator projection. They are currently calibrated using OziExplorer .map files. When running the conversion I get the unknown datum and projection messages. What parameters to select manually in this case?

I tried among others to enter WGS84 as datum and specifying the coordinates of two corners as specified in the .map file (MMPL,2 and 4). When doing so I am about 2 km off position.

Below is, as an example, the .map file of the 1:25.000 map of my home location


Sorry, Gijsbert; but Transverse Mercator projection, and RijksDriehoekMeting Datum are not supported in OruxMaps.

I will study this datum/projection, and try to include them in future versions.

orux
orux
orux

Cantidad de envíos : 3946
Fecha de inscripción : 2009-07-06

Back to top Go down

Dutch datum and projection Empty Dutch datum and projection

Post  Gijsbert Tue Dec 22, 2009 8:53 pm

Thanks for delving into this. There are many users of OziExplorer out here using the dutch maps looking for an alternative for the Android platform.

I did some further tests. Noticed the LL coordinates of my test map, setting the map datum to WGS84 in OziExplorer and entered them in the otrk2.xml file of the converted OruxMaps map as the calibration corners (the map dimensions do correspond with the pixel-size of the image file). Still about 1 km off. Isn't that something that should work fine, irrespective of the datum setting? Normally datum errors result in position errors of a couple of 10's of meters. Or is there perhaps something wrong with the position algoritm of the application itself at this latitude?

Gijsbert

Gijsbert

Cantidad de envíos : 2
Fecha de inscripción : 2009-12-22

Back to top Go down

Dutch datum and projection Empty Re: Dutch datum and projection

Post  orux Tue Dec 22, 2009 10:02 pm

Gijsbert wrote:Thanks for delving into this. There are many users of OziExplorer out here using the dutch maps looking for an alternative for the Android platform.

I did some further tests. Noticed the LL coordinates of my test map, setting the map datum to WGS84 in OziExplorer and entered them in the otrk2.xml file of the converted OruxMaps map as the calibration corners (the map dimensions do correspond with the pixel-size of the image file). Still about 1 km off. Isn't that something that should work fine, irrespective of the datum setting? Normally datum errors result in position errors of a couple of 10's of meters. Or is there perhaps something wrong with the position algoritm of the application itself at this latitude?

Gijsbert

You can use a transformation tool that converts from RD datum to wgs84.

I have found this :
http://www.xs4all.nl/~estevenh/1/frame/lndex.html

Perhaps there is one specific in your country. do google.

Then convert this coordinates:
Point01,xy, 100, 100,in, deg, , ,N, , ,W, grid, , 180000, 450000,N
Point02,xy, 4100, 5300,in, deg, , ,N, , ,W, grid, , 190000, 437000,N

Select wgs84 datum and 'flat earth' projection in OruxMapsDesktop. If the map is not very large, 'flat earth' could be a good approach.

Test the map.

You can send me one map -->oruxuro@gmail.com I will do more test.

orux
orux
orux

Cantidad de envíos : 3946
Fecha de inscripción : 2009-07-06

Back to top Go down

Dutch datum and projection Empty From RD (dutch grid) to WGS-84

Post  Mbetel Mon Jan 25, 2010 9:16 pm

Here's the transformations to get from Dutch Grid ( the metric system used in dutch topo maps) to WGS-84:
(source =

Code:

% First from RD meters to degrees on the Bessel ellipsoid
%
% rd2bessel
%
% Convert geo coordinates (Bessel) to RD-grid coordinaten
% Formulas from Geodetic Datum of Australia website
% 1 december 2001

%function geo = rd2bessel(rd);

%INPUT
rd(1)=84000;
rd(2)=448000;

RDx = rd(1);
RDy = rd(2);

deg = pi/180; %  to radials

% Bessel 1841 datum:
a = 6377397.155;
f = 1/299.1528128;

% RD grid parameters:
lab0 = 5.3876333*deg; % origin
Efalse = 155000; % false easting
K0 = 0.9999079; % scale factor
Nfalse = -5316592; % false northing

% convert:

e2 = f*(2-f);
e = sqrt(e2);

a0 = 1 - 1/4*e^2 - 3/64*e^4 - 5/256*e^6;
a2 = 3/8*(e^2 + 1/4*e^4 + 15/128*e^6);
a4 = 15/256*(e^4 + 3/4*e^6);
a6 = 35/3072*e^6;

m = (RDy-Nfalse)/K0;

n = f/(2-f);
G = a*(1-n)*(1-n^2)*(1+9/4*n^2 + 225/64*n^4)*pi/180;
sig = m/G*pi/180;

% phic = phi-accent.
phic = sig +((3*n/2)-(27*n^3/32))*sin(2*sig) + ((21*n^2/16)-(55*n^4/32))*sin(4*sig)...
+(151*n^3/96)*sin(6*sig) + (1097*n^4/512)*sin(8*sig);

rho = a*(1-e^2)/(1-e^2*(sin(phic))^2)^(3/2);
nu = a/sqrt(1-e^2*(sin(phic))^2);
psi = nu/rho;

% Grid to Geographical:

t = tan(phic);
Ec = RDx - Efalse;
x = Ec/(K0*nu);

term1 = (t/(K0*rho))*(x*Ec/2);
term2 = (t/(K0*rho))*(Ec*x^3/24)*(-4*psi^2+9*psi*(1-t^2)+12*t^2);
term3 = (t/(K0*rho))*((Ec*x^5)/720)*(8*psi^4*(11-24*t^2)-12*psi^3*(21-71*t^2)+15*(psi^2*15-98*t^2+15*t^4)+180*psi*(5*t^2-3*t^4)+360*t^4);
term4 = (t/(K0*rho))*(Ec*x^7/40320)*(1385+3633*t^2+4095*t^4+1575*t^6);

phi = phic - term1 + term2 - term3 + term4;

term1 = x*sec(phi);
term2 = (x^3/6)*sec(phi)*(psi+2*t^2);
term3 = (x^5/120)*sec(phi)*(-4*psi^3*(1-6*t^2)+psi^2*(9-68*t^2)+72*psi*t^2+24*t^4);
term4 = (x^7/5040)*sec(phi)*(61+662*t^2+1320*t^4+720*t^6);

omega = term1-term2+term3-term4;

lab = lab0 + omega;

geo(1) = phi/deg; % length [degrees]
geo(2) = lab/deg; % latitude [degrees]
%
%-------------------------------------------------------------------

% And then from Bessel to the WGS84 ellipsoïde:

% molodensky datum conversion Bessel1841 to WGS84
% Formulas from website Peter Dana.
% Gecontroleerd met rekenvoorbeeld en GPS.
% In/output in degrees and meter

%function [to_geo]=bessel2wgs(from_geo);


%INPUT
from_geo(1)=geo(1);
from_geo(2)=geo(2);
from_geo(3)=0;

deg = pi/180; %  radials

from_phi = from_geo(1)*deg; % from_height above equator
from_lab = from_geo(2)*deg; % from_oosterlengte
from_h = from_geo(3); % from_height avove sealevel

% parameters for WGS 84:
to_a = 6378137.000; % semi-major axis of ellipsoid
to_f = 1/298.257223563; % 1/flattening

% parameters voor Bessel 1841:
from_a = 6377397.155;
from_f = 1/299.1528128;

% calcluate correctionfactors:
da = to_a - from_a;
df = to_f - from_f;
bda = 1-from_f;
from_es = 2*from_f - from_f^2;

dx = 593;
dy = 26;
dz = 478;

% Covert from Bessel 1841 naar WGS84

sphi = sin(from_phi);
cphi = cos(from_phi);
slab = sin(from_lab);
clab = cos(from_lab);

Rn = from_a/sqrt(1.0 - from_es*(sin(from_phi))^2);
Rm = from_a*(1-from_es)/((1.0-from_es*(sin(from_phi)^2))^(3/2));

term1 = (((-dx*sphi*clab-dy*sphi*slab) + dz*cphi) + da*Rn*from_es*sphi*cphi/from_a);
term2 = df*(Rm/bda + Rn*bda)*sphi*cphi;

dphi = (term1 + term2)/(Rm+from_h);
dlab = (-dx*slab + dy*clab)/((Rn+from_h)*cphi);
dh = dx*cphi*clab + dy*cphi*slab + dz*sphi - da*from_a/Rn + df*bda*Rn*sphi*sphi;

to_phi = from_phi+dphi;
to_lab = from_lab + dlab;
to_h = from_h + dh;

to_phi = to_phi/deg;
to_lab = to_lab/deg;
to_h = from_h + dh;


LatitudeGraden = floor(to_phi)
LongitudeGraden = floor(to_lab)
                                           
LatitudeMinuten = (to_phi - LatitudeGraden) * 60.0
LongitudeMinuten = (to_lab - LongitudeGraden) * 60.0

%to_geo = [to_phi,to_lab,to_h]

Mbetel
Guest


Back to top Go down

Dutch datum and projection Empty Testing RD-grid conversion

Post  mbetel Wed Jan 27, 2010 1:46 pm

Orux,

I tested it by driving and looking at a number of converted dutch top25-to move OZI maps. As far as I could see
the mismatch between map and GPS position was never more then 50 meters!
This is great! Thankx a lot.

mbetel
Guest


Back to top Go down

Dutch datum and projection Empty Re: Dutch datum and projection

Post  orux Wed Jan 27, 2010 2:28 pm

mbetel wrote:Orux,

I tested it by driving and looking at a number of converted dutch top25-to move OZI maps. As far as I could see
the mismatch between map and GPS position was never more then 50 meters!
This is great! Thankx a lot.

Hmmm, this accuracy is not enough.

Are you using the last beta of oruxmaps (1.9.4)?

Orux
orux
orux

Cantidad de envíos : 3946
Fecha de inscripción : 2009-07-06

Back to top Go down

Dutch datum and projection Empty Dutch datum and projection

Post  mbetel Wed Jan 27, 2010 9:30 pm

Was still using 1.84, just upgraded to the 1.94 Beta and will try again tomorrow!
Thanks for the great support.

Michiel

mbetel
Guest


Back to top Go down

Dutch datum and projection Empty Re: Dutch datum and projection

Post  orux Wed Jan 27, 2010 9:33 pm

mbetel wrote:Was still using 1.84, just upgraded to the 1.94 Beta and will try again tomorrow!
Thanks for the great support.

Michiel

1.8.5 is using a 'flat earth' aproximation for RD, 1.95 is ready for full accuracy!

orux
orux
orux

Cantidad de envíos : 3946
Fecha de inscripción : 2009-07-06

Back to top Go down

Dutch datum and projection Empty Re: Dutch datum and projection

Post  Sponsored content


Sponsored content


Back to top Go down

Back to top

- Similar topics

 
Permissions in this forum:
You cannot reply to topics in this forum