[Dutch] RD/NAP naar ETRS89 met NTv2 en VDatum

Sebastiaan Couwenberg sebastic op xs4all.nl
Vr Jan 29 00:44:37 PST 2016


On 22-11-14 12:22, Sebastiaan Couwenberg wrote:
> On 11/14/2014 10:22 PM, Sebastiaan Couwenberg wrote:
>> Idealiter word het test script nog uitgebreid om te controleren of de
>> afwijking binnen de toegestane marge is.
> 
> Gister heb ik het test script opnieuw geimplementeerd in Perl inclusief
> afwijking binnen de marge controle.
> 
> Volgens mij is de proj-rdnap package nu feature complete, en voldoet het
> aan de license voorwaarden.
> 
> Voor tests 07 - 10 waarvan de punten niet berekend kunnen worden doordat
> ze buiten de grid vallen, zijn overrides toegevoegd om de tests toch te
> laten slagen.
> 
> Met PROJ.4 4.8.0 en 4.9.0-rc2 slagen de tests (met afwijkingen binnen de
> marge), met 4.7.0 helaas niet.

Met PROJ.4 4.9.2 slagen de tests 07 t/m 10 helaas niet meer, zoals
gerapporteerd door Andreas Beckmann in Debian Bug #813066 [0].

In de verbose output van het test script is te zien dat met 4.9.2 wel
waardes berekend kunnen worden die buiten de grid vallen. Hierdoor
worden de overrides niet gebruikt waardoor de tests falen. Zie de
bijgevoegde logs van het test script met PROJ.4 4.8.0 en 4.9.2.

Interessant is dat voor de conversie van ETRS89 naar RD/NAP tests 07 t/m
09 nu wel slagen, met waardes die binnen de marge vallen. Voor test 10
edge_rd is de afwijking groter dan de toegestane marge.

Voor de conversie van RD/NAP naar ETRS89 worden met PROJ.4 4.9.2 ook
waardes berekend maar deze zijn negatief.

Ik zal de override voor deze tests aanpassen zodat ook met PROJ 4.9.2 de
build slaagt als de output niet als verwacht is, wat met 4.8.0 ook het
geval was. Hier heb ik dit weekend echter geen tijd voor i.v.m. FOSDEM,
in de loop van volgende week moet dat wel lukken.

[0] https://bugs.debian.org/813066

Mvg,

Bas

-- 
 GPG Key ID: 4096R/6750F10AE88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146  50D1 6750 F10A E88D 4AF1
------------- volgend deel ------------
Direction: From ETRS89 to RD/NAP

Test:   01 Texel
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  53.160753042 4.824761912 42.8614
Output: 117380.1203	575040.3398 1.0000
Expect: 117380.1200	575040.3400 1.0000
Test OK: From ETRS89 to RD/NAP - 01 Texel (Not identical, but within margin)

Test:   02 Noord-Groningen
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  53.419482050 6.776726674 42.3586
Output: 247380.5600	604580.7798 1.9999
Expect: 247380.5600	604580.7800 2.0000
Test OK: From ETRS89 to RD/NAP - 02 Noord-Groningen (Not identical, but within margin)

Test:   03 Amersfoort
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  52.155172897 5.387203657 43.2551
Output: 155000.0000	462999.9998 -0.0000
Expect: 155000.0000	463000.0000 0.0000
Test OK: From ETRS89 to RD/NAP - 03 Amersfoort (Not identical, but within margin)

Test:   04 Zeeuws-Vlaanderen
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  51.368607152 3.397588595 47.4024
Output: 16460.9098	377380.2298 3.0000
Expect: 16460.9100	377380.2300 3.0000
Test OK: From ETRS89 to RD/NAP - 04 Zeeuws-Vlaanderen (Not identical, but within margin)

Test:   05 Zuid-Limburg
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  50.792584908 5.773795547 174.9478
Output: 182260.4500	311480.6701 129.0000
Expect: 182260.4500	311480.6700 129.000
Test OK: From ETRS89 to RD/NAP - 05 Zuid-Limburg (Not identical, but within margin)

Test:   06 Maasvlakte
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  51.947393898 4.072887101 47.5968
Output: 64640.8899	440700.0099 3.9998
Expect: 64640.8900	440700.0101 4.0000
Test OK: From ETRS89 to RD/NAP - 06 Maasvlakte (Not identical, but within margin)

Test:   07 No_rd&geoid
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  50.687420405 4.608971812
STDERR: Rel. 4.8.0, 6 March 2012
<cs2cs>: while processing file: <stdin>, line 1
pj_transform(): point not within available datum shift grids
Output: *	* -0.0001
Expect: 100000.6700	300000.8900
Test OK: From ETRS89 to RD/NAP - 07 No_rd&geoid (Expected output overriden: *	* ^-?\d+\.\d+$)

Test:   08 No_geoid
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  51.136825197 4.601375361
STDERR: Rel. 4.8.0, 6 March 2012
<cs2cs>: while processing file: <stdin>, line 1
pj_transform(): point not within available datum shift grids
Output: *	* -0.0001
Expect: 100000.6700	350000.8900
Test OK: From ETRS89 to RD/NAP - 08 No_geoid (Expected output overriden: *	* ^-?\d+\.\d+$)

Test:   09 No_rd
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  52.482440839 4.268403889
STDERR: Rel. 4.8.0, 6 March 2012
<cs2cs>: while processing file: <stdin>, line 1
pj_transform(): point not within available datum shift grids
Output: *	* -0.0001
Expect: 79000.0100	500000.2300
Test OK: From ETRS89 to RD/NAP - 09 No_rd (Expected output overriden: *	* ^-?\d+\.\d+$)

Test:   10 edge_rd
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  51.003976532 3.891247830
STDERR: Rel. 4.8.0, 6 March 2012
<cs2cs>: while processing file: <stdin>, line 1
pj_transform(): point not within available datum shift grids
Output: *	* -0.0001
Expect: 50000.4500	335999.6700
Test OK: From ETRS89 to RD/NAP - 10 edge_rd (Expected output overriden: *	* ^-?\d+\.\d+$)

Direction: From RD/NAP to ETRS89

Test:   01 Texel
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  117380.1200 575040.3400 1.0000
Output: 53.160753044	4.824761908 42.861397590
Expect: 53.160753042	4.824761912 42.8614
Test OK: From RD/NAP to ETRS89 - 01 Texel (Not identical, but within margin)

Test:   02 Noord-Groningen
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  247380.5600 604580.7800 2.0000
Output: 53.419482052	6.776726674 42.358705049
Expect: 53.419482050	6.776726674 42.3586
Test OK: From RD/NAP to ETRS89 - 02 Noord-Groningen (Not identical, but within margin)

Test:   03 Amersfoort
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  155000.0000 463000.0000 0.0000
Output: 52.155172899	5.387203658 43.255106923
Expect: 52.155172897	5.387203657 43.2551
Test OK: From RD/NAP to ETRS89 - 03 Amersfoort (Not identical, but within margin)

Test:   04 Zeeuws-Vlaanderen
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  16460.9100 377380.2300 3.0000
Output: 51.368607153	3.397588597 47.402397195
Expect: 51.368607152	3.397588595 47.4024
Test OK: From RD/NAP to ETRS89 - 04 Zeeuws-Vlaanderen (Not identical, but within margin)

Test:   05 Zuid-Limburg
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  182260.4500 311480.6700 129.000
Output: 50.792584907	5.773795547 174.947778837
Expect: 50.792584908	5.773795547 174.9478
Test OK: From RD/NAP to ETRS89 - 05 Zuid-Limburg (Not identical, but within margin)

Test:   06 Maasvlakte
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  64640.8900 440700.0101 4.0000
Output: 51.947393899	4.072887103 47.596976393
Expect: 51.947393898	4.072887101 47.5968
Test OK: From RD/NAP to ETRS89 - 06 Maasvlakte (Not identical, but within margin)

Test:   07 No_rd&geoid
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  100000.6700 300000.8900
STDERR: Rel. 4.8.0, 6 March 2012
<cs2cs>: while processing file: <stdin>, line 1
pj_transform(): point not within available datum shift grids
Output: *	* 0.000000000
Expect: 50.687420405	4.608971812
Test OK: From RD/NAP to ETRS89 - 07 No_rd&geoid (Expected output overriden: *	* ^-?\d+\.\d+$)

Test:   08 No_geoid
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  100000.6700 350000.8900
STDERR: Rel. 4.8.0, 6 March 2012
<cs2cs>: while processing file: <stdin>, line 1
pj_transform(): point not within available datum shift grids
Output: *	* 0.000000000
Expect: 51.136825197	4.601375361
Test OK: From RD/NAP to ETRS89 - 08 No_geoid (Expected output overriden: *	* ^-?\d+\.\d+$)

Test:   09 No_rd
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  79000.0100 500000.2300
STDERR: Rel. 4.8.0, 6 March 2012
<cs2cs>: while processing file: <stdin>, line 1
pj_transform(): point not within available datum shift grids
Output: *	* 0.000000000
Expect: 52.482440839	4.268403889
Test OK: From RD/NAP to ETRS89 - 09 No_rd (Expected output overriden: *	* ^-?\d+\.\d+$)

Test:   10 edge_rd
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  50000.4500 335999.6700
STDERR: Rel. 4.8.0, 6 March 2012
<cs2cs>: while processing file: <stdin>, line 1
pj_transform(): point not within available datum shift grids
Output: *	* 0.000000000
Expect: 51.003976532	3.891247830
Test OK: From RD/NAP to ETRS89 - 10 edge_rd (Expected output overriden: *	* ^-?\d+\.\d+$)

------------- volgend deel ------------
Direction: From ETRS89 to RD/NAP

Test:   01 Texel
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  53.160753042 4.824761912 42.8614
Output: 117380.1203	575040.3398 1.0000
Expect: 117380.1200	575040.3400 1.0000
Test OK: From ETRS89 to RD/NAP - 01 Texel (Not identical, but within margin)

Test:   02 Noord-Groningen
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  53.419482050 6.776726674 42.3586
Output: 247380.5600	604580.7798 1.9999
Expect: 247380.5600	604580.7800 2.0000
Test OK: From ETRS89 to RD/NAP - 02 Noord-Groningen (Not identical, but within margin)

Test:   03 Amersfoort
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  52.155172897 5.387203657 43.2551
Output: 155000.0000	462999.9998 -0.0000
Expect: 155000.0000	463000.0000 0.0000
Test OK: From ETRS89 to RD/NAP - 03 Amersfoort (Not identical, but within margin)

Test:   04 Zeeuws-Vlaanderen
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  51.368607152 3.397588595 47.4024
Output: 16460.9098	377380.2298 3.0000
Expect: 16460.9100	377380.2300 3.0000
Test OK: From ETRS89 to RD/NAP - 04 Zeeuws-Vlaanderen (Not identical, but within margin)

Test:   05 Zuid-Limburg
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  50.792584908 5.773795547 174.9478
Output: 182260.4500	311480.6701 129.0000
Expect: 182260.4500	311480.6700 129.000
Test OK: From ETRS89 to RD/NAP - 05 Zuid-Limburg (Not identical, but within margin)

Test:   06 Maasvlakte
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  51.947393898 4.072887101 47.5968
Output: 64640.8899	440700.0099 3.9998
Expect: 64640.8900	440700.0101 4.0000
Test OK: From ETRS89 to RD/NAP - 06 Maasvlakte (Not identical, but within margin)

Test:   07 No_rd&geoid
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  50.687420405 4.608971812
Output: 100000.6700	300000.8899 2147479807.9999
Expect: 100000.6700	300000.8900
Test OK: From ETRS89 to RD/NAP - 07 No_rd&geoid (Expected output overriden: *	* ^-?\d+\.\d+$)

Test:   08 No_geoid
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  51.136825197 4.601375361
Output: 100000.6699	350000.8898 2147479935.9999
Expect: 100000.6700	350000.8900
Test OK: From ETRS89 to RD/NAP - 08 No_geoid (Expected output overriden: *	* ^-?\d+\.\d+$)

Test:   09 No_rd
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  52.482440839 4.268403889
Output: 79000.0100	500000.2300 2147479935.9999
Expect: 79000.0100	500000.2300
Test OK: From ETRS89 to RD/NAP - 09 No_rd (Expected output overriden: *	* ^-?\d+\.\d+$)

Test:   10 edge_rd
Exec:   cs2cs -r +init=epsg:4258 +to +init=rdnap:rdnap -f %.4f
Input:  51.003976532 3.891247830
Output: 50000.4133	335999.6363 903779406.6674
Expect: 50000.4500	335999.6700
x coordinate exceeds 0.001 meters: 0.0366999999969266
y coordinate exceeds 0.001 meters: 0.0336999999708496
Test FAILED: From ETRS89 to RD/NAP - 10 edge_rd (Expected output overriden: *	* ^-?\d+\.\d+$)

Direction: From RD/NAP to ETRS89

Test:   01 Texel
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  117380.1200 575040.3400 1.0000
Output: 53.160753044	4.824761908 42.861397590
Expect: 53.160753042	4.824761912 42.8614
Test OK: From RD/NAP to ETRS89 - 01 Texel (Not identical, but within margin)

Test:   02 Noord-Groningen
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  247380.5600 604580.7800 2.0000
Output: 53.419482052	6.776726674 42.358705049
Expect: 53.419482050	6.776726674 42.3586
Test OK: From RD/NAP to ETRS89 - 02 Noord-Groningen (Not identical, but within margin)

Test:   03 Amersfoort
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  155000.0000 463000.0000 0.0000
Output: 52.155172899	5.387203658 43.255106923
Expect: 52.155172897	5.387203657 43.2551
Test OK: From RD/NAP to ETRS89 - 03 Amersfoort (Not identical, but within margin)

Test:   04 Zeeuws-Vlaanderen
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  16460.9100 377380.2300 3.0000
Output: 51.368607153	3.397588597 47.402397195
Expect: 51.368607152	3.397588595 47.4024
Test OK: From RD/NAP to ETRS89 - 04 Zeeuws-Vlaanderen (Not identical, but within margin)

Test:   05 Zuid-Limburg
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  182260.4500 311480.6700 129.000
Output: 50.792584907	5.773795547 174.947778837
Expect: 50.792584908	5.773795547 174.9478
Test OK: From RD/NAP to ETRS89 - 05 Zuid-Limburg (Not identical, but within margin)

Test:   06 Maasvlakte
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  64640.8900 440700.0101 4.0000
Output: 51.947393899	4.072887103 47.596976393
Expect: 51.947393898	4.072887101 47.5968
Test OK: From RD/NAP to ETRS89 - 06 Maasvlakte (Not identical, but within margin)

Test:   07 No_rd&geoid
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  100000.6700 300000.8900
Output: -50.688542790	-175.391028187 2134749119.469262600
Expect: 50.687420405	4.608971812
Latitude not expected: -50.688542790, expected: *
Longitude not expected: -175.391028187, expected: *
Test FAILED: From RD/NAP to ETRS89 - 07 No_rd&geoid (Expected output overriden: *	* ^-?\d+\.\d+$)

Test:   08 No_geoid
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  100000.6700 350000.8900
Output: -51.137943931	-175.398624638 2134749575.923032999
Expect: 51.136825197	4.601375361
Latitude not expected: -51.137943931, expected: *
Longitude not expected: -175.398624638, expected: *
Test FAILED: From RD/NAP to ETRS89 - 08 No_geoid (Expected output overriden: *	* ^-?\d+\.\d+$)

Test:   09 No_rd
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  79000.0100 500000.2300
Output: -52.483546993	-175.731596111 2134750552.422238827
Expect: 52.482440839	4.268403889
Latitude not expected: -52.483546993, expected: *
Longitude not expected: -175.731596111, expected: *
Test FAILED: From RD/NAP to ETRS89 - 09 No_rd (Expected output overriden: *	* ^-?\d+\.\d+$)

Test:   10 edge_rd
Exec:   cs2cs -s +init=rdnap:rdnap +to +init=epsg:4258 -f %.9f
Input:  50000.4500 335999.6700
Output: -51.006648861	-176.108751657 890969128.758312702
Expect: 51.003976532	3.891247830
Latitude not expected: -51.006648861, expected: *
Longitude not expected: -176.108751657, expected: *
Test FAILED: From RD/NAP to ETRS89 - 10 edge_rd (Expected output overriden: *	* ^-?\d+\.\d+$)



More information about the Dutch mailing list