[PROJ] nadcon5 overtaken by ESRI?

Javier Jimenez Shaw j1 at jimenezshaw.com
Tue Sep 17 05:40:15 PDT 2024


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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/proj/attachments/20240917/ec2ef320/attachment.htm>


More information about the PROJ mailing list