Javier,

fix and analysis in https://github.com/OSGeo/PROJ/pull/4252

Even

Le 17/09/2024 à 14:40, Javier Jimenez Shaw via PROJ a écrit :
Hi

I found a "strange" behaviour about EPSG, ESRI and nadcon5, that I do not know if we are aware of.

Running the next command
PROJ_NETWORK=ON ./projinfo -s EPSG:4269 -t EPSG:6318 --3d -o proj --spatial-test intersects

I get in PROJ 9.4.1

Candidate operations found: 5
-------------------------------------
Operation No. 1:

DERIVED_FROM(EPSG):8971, NAD83 to NAD83(2011) (1), 1.0 m, United States (USA) - offshore Gulf of Mexico outer continental shelf (GoM OCS) - protraction areas South Padre Island; North Padre Island; Mustan g Island; Matagorda Island; Brazos; Galveston; High Island; Sabine Pass; West Cameron; East Cameron; Vermilion; South Marsh Island; Eugene Island; Ship Shoal; South Pelto; Bay Marchand; South Timbalier; G rand Isle; West Delta; South Pass; Main Pass; Breton Sound; Chandeleur; Corpus Christi; Port Isabel; East Breaks; Alaminos Canyon; Garden Banks; Keathley Canyon; Sigsbee Escarpment; Ewing Bank; Green Cany on; Walker Ridge; Amery Terrace; Mobile; Viosca Knoll; Mississippi Canyon; Atwater Valley; Lund; Lund South; Pensacola; Destin Dome; De Soto Canyon; Lloyd Ridge; Henderson; Florida Plain; Campeche Escarpm ent; Apalachicola; Florida Middle Ground; The Elbow; Vernon Basin; Howell Hook; Rankin; Gainesville; Tarpon Springs; St Petersburg; Charlotte Harbor; Pulley Ridge; Dry Tortugas; Tortugas Valley; Miami; Key West.

PROJ string:
+proj=noop

-------------------------------------
Operation No. 2:

unknown id, NAD83 to NAD83(HARN) (47) + NAD83(HARN) to NAD83(FBN) (1) + NAD83(FBN) to NAD83(NSRS2007) (1) + NAD83(NSRS2007) to NAD83(2011) (1), 0.2 m, United States (USA) - CONUS onshore - Alabama; Arizon a; Arkansas; California; Colorado; Connecticut; Delaware; Florida; Georgia; Idaho; Illinois; Indiana; Iowa; Kansas; Kentucky; Louisiana; Maine; Maryland; Massachusetts; Michigan; Minnesota; Mississippi; M issouri; Montana; Nebraska; Nevada; New Hampshire; New Jersey; New Mexico; New York; North Carolina; North Dakota; Ohio; Oklahoma; Oregon; Pennsylvania; Rhode Island; South Carolina; South Dakota; Tenness ee; Texas; Utah; Vermont; Virginia; Washington; West Virginia; Wisconsin; Wyoming. US Gulf of Mexico offshore continental shelf (GoM OCS)., at least one grid missing

PROJ string:
+proj=pipeline
  +step +proj=axisswap +order=2,1
  +step +proj=unitconvert +xy_in=deg +z_in=m +xy_out=rad +z_out=m
  +step +proj=gridshift +grids=us_noaa_nadcon5_nad83_1986_nad83_harn_conus.tif   +step +proj=gridshift +grids=us_noaa_nadcon5_nad83_harn_nad83_fbn_conus.tif   +step +proj=gridshift +grids=us_noaa_nadcon5_nad83_fbn_nad83_2007_conus.tif   +step +proj=gridshift +grids=us_noaa_nadcon5_nad83_2007_nad83_2011_conus.tif
  +step +proj=unitconvert +xy_in=rad +z_in=m +xy_out=deg +z_out=m
  +step +proj=axisswap +order=2,1
...

While in PROJ 9.5.0 I get

Candidate operations found: 180
-------------------------------------
Operation No. 1:

unknown id, Null geographic offset from NAD83 to North_American_1983_3D + Null geographic offset from North_American_1983_3D to NAD83 + Inverse of WGS_1984_(ITRF00)_To_NAD_1983 + WGS_1984_(ITRF08)_To_NAD_1983_2011 + Null geographic offset from NAD83(2011) (geog2D) to NAD83(2011) (geog3D), 0.13 m, Puerto Rico - onshore and offshore. United States (USA) onshore and offshore - Alabama; Alaska; Arizona; Arkansas; California; Colorado; Connecticut; Delaware; Florida; Georgia; Idaho; Illinois; Indiana; Iowa; Kansas; Kentucky; Louisiana; Maine; Maryland; Massachusetts; Michigan; Minnesota; Mississippi; Missouri; Montana; Nebraska; Nevada; New Hampshire; New Jersey; New Mexico; New York; North Carolina; North Dakota; Ohio; Oklahoma; Oregon; Pennsylvania; Rhode Island; South Carolina; South Dakota; Tennessee; Texas; Utah; Vermont; Virginia; Washington; West Virginia; Wisconsin; Wyoming. US Virgin Islands - onshore and offshore.

PROJ string:
+proj=pipeline
  +step +proj=axisswap +order=2,1
  +step +proj=unitconvert +xy_in=deg +xy_out=rad
  +step +proj=push +v_3
  +step +proj=cart +ellps=GRS80
  +step +inv +proj=helmert +x=0.9956 +y=-1.9013 +z=-0.5215 +rx=0.025915
        +ry=0.009426 +rz=0.011599 +s=0.00062 +convention=coordinate_frame
  +step +proj=helmert +x=0.99343 +y=-1.90331 +z=-0.52655 +rx=0.02591467
        +ry=0.00942645 +rz=0.01159935 +s=0.00171504 +convention=coordinate_frame
  +step +inv +proj=cart +ellps=GRS80
  +step +proj=pop +v_3
  +step +proj=unitconvert +xy_in=rad +z_in=m +xy_out=deg +z_out=m
  +step +proj=axisswap +order=2,1
...

Based on the names in the operation description, this seems to be from ESRI. The first from EPSG appears at position 8.

If I try to do actual transformations, this is what I get with PROJ 9.4.1
$ echo "40 -100" | PROJ_NETWORK=ON ./cs2cs EPSG:4269 EPSG:6343 -d 6 --3d
414639.611409 4428235.937716 -0.004468
$ echo "40 -100" | PROJ_NETWORK=ON ./cs2cs EPSG:4269 EPSG:6318 -d 6 --3d
39.999999 -99.999999 -0.004468
$ echo "40 -100" | PROJ_NETWORK=ON ./cs2cs EPSG:4269 EPSG:6318 -d 6 --3d | ./cs2cs EPSG:6318 EPSG:6343 -d 6 --3d
414639.622273 4428235.952568 -0.004468

And this with PROJ 9.5.0
$ echo "40 -100" | PROJ_NETWORK=ON ./cs2cs EPSG:4269 EPSG:6343 -d 6 --3d
414639.611409 4428235.937716 -0.004468
$ echo "40 -100" | PROJ_NETWORK=ON ./cs2cs EPSG:4269 EPSG:6318 -d 6 --3d
40.000000 -100.000000 0.000000
$ echo "40 -100" | PROJ_NETWORK=ON ./cs2cs EPSG:4269 EPSG:6318 -d 6 --3d | ./cs2cs EPSG:6318 EPSG:6343 -d 6 --3d
414639.538157 4428236.064519 0.000000

What is the reason exactly? Is that expected?

Thanks
Javier

_______________________________________________
PROJ mailing list
PROJ@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/proj

--
http://www.spatialys.com
My software is free, but my time generally not.
_______________________________________________
PROJ mailing list
PROJ@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/proj

Reply via email to