Peter Bennewitz via gdal-dev <gdal-dev@lists.osgeo.org> writes: > To get exact distances between local points, UTM requires a correction > factor, depending on local height and distance to the UTM reference > meridian. Mainly due to UTM's 6deg steps, - as opposed to the smaller > 3deg of GK, where this correction could have been neglected.
The concept of UTM is that one has coordinates in meters which correspond to physical distances, so that one can use cartesian distance in UTM to get distances between points along the surface, with mostly ignorable errors from scale factors. But, if you're e.g. trying to compare RTK-derived GNSS positions with distances from a total station, it's not ignorable. This concept is called "combined factor" by US NGS. This tool only works in the US, probably, but https://www.ngs.noaa.gov/NCAT/ I put in (lat first) 42.6 -73.2, 1000m, which is very roughly "Mount Greylock" in Western Mass, after changing to "horizontal plus height". I pushed convert. scale factor is 0.99986827 combined factor is 0.99971148 At 5000m scale factor is 0.99986827 combined factor is 0.99908483 I think that's grid distance divided by physical distance. I believe the first is on the ellipsoid, and the second is for the given height. > What would be the advised way to handle this in GDAL ? Or a good > keyword to find this in the GDAL doc ? "local coordinates" maybe ? Or > convert the dataset to the older GK and just use that ? Yes, one could convert to a local CS, but you'd have to compute the scale factor for the local CS to be based on height. That's just HAE/(HAE+local_radius). It would be nice for projections that aim to be in meters to have a function that returns both scales for a given horizontal+height input. That would let Peter just divide (multiply? too early!) all EN coordinates by the combined factor to get something which is UTM but with a different scale so that the combined factor for the area of interest -- in both EN and U -- is 1. Alternatively, only do this to computed distances. > My current idea is be to transform an area of 10km x 12km to XYZ > coordinates that closely match 'field measurable' distances between > two points. Variables are just names but that makes it sound like geocentric coordinates, when I would expect you'd want ENU. This is what others are suggesting, but you'll need to set the scale to deal with your project's average/typical height. I think people are steering you to geodesic length on the ellipsoid, which is not what you are measuring at terrain. _______________________________________________ gdal-dev mailing list gdal-dev@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/gdal-dev