<div dir="ltr"><div><div><br><br>On Sun, Nov 19, 2017 at 10:33 PM, Markus Metz <<a href="mailto:markus.metz.giswork@gmail.com">markus.metz.giswork@gmail.com</a>> wrote:<br>><br>><br>><br>> On Sun, Nov 12, 2017 at 12:21 AM, Markus Metz <<a href="mailto:markus.metz.giswork@gmail.com">markus.metz.giswork@gmail.com</a>> wrote:<br>> ><br>> ><br>> ><br>> > On Sat, Nov 11, 2017 at 8:05 PM, Helena Mitasova <<a href="mailto:hmitaso@ncsu.edu">hmitaso@ncsu.edu</a>> wrote:<br>> > ><br>> > ><br>> > > On Nov 10, 2017, at 7:20 PM, Markus Metz <<a href="mailto:markus.metz.giswork@gmail.com">markus.metz.giswork@gmail.com</a>> wrote:<br>> > ><br>> > ><br>> > ><br>> > > On Sat, Nov 11, 2017 at 12:22 AM, Helena Mitasova <<a href="mailto:hmitaso@ncsu.edu">hmitaso@ncsu.edu</a>> wrote:<br>> > > ><br>> > > > Please note, that  in spite of the fact that the datum.table shows same transformation parameters,<br>> > > > different nad83 datums are different (it is not just a different name for the same datum) and there are different EPSG codes associated<br>> > > > with the relevant CRS.<br>> > > > You can find more about it here (or just google it)<br>> > > > <a href="https://confluence.qps.nl/pages/viewpage.action?pageId=29855153">https://confluence.qps.nl/pages/viewpage.action?pageId=29855153</a><br>> > > ><br>> > > > Supposedly, the shift from NAD83(86) to NAD83(HARN) can be done with the NGS NADCON program (I have not checked it out)<br>> > > > (<a href="http://www.ngs.noaa.gov/TOOLS/Nadcon/Nadcon.shtml">http://www.ngs.noaa.gov/TOOLS/Nadcon/Nadcon.shtml</a>).<br>> > ><br>> > > There are 12 (!) different definitions for NAD83. What to do about this? Regard these 12 definitions as different datums? In this case I would need to reinstate the datum check and we need to add more entries to datum.table.<br>> > ><br>> > ><br>> > > Markus, we absolutely need to have a datum check<br>> ><br>> > This datum check has been first added in Oct 2003 and has been quickly removed again in Jan 2004. As long as we do not have proj-style definitions reflecting the differences in the various nad83 datums, it does not make sense to differentiate between say nad83 and nad83harn.<br>><br>> Apparently there is a way to construct different proj-style definitions for different nad83 datums:<br>><br>> - proj provides the hdatum grids nad83_2002.ct2 and nad83_2010.ct2<br>> - for nad83harn (High Accuracy Reference Networks), see <a href="http://proj4.org/grids.html#harn">http://proj4.org/grids.html#harn</a> on instructions to get an appropriate nadgrid<br>> - for fine grade conversions between various NAD83 epochs and WGS84, see <a href="http://proj4.org/htpd.html#htpd">http://proj4.org/htpd.html#htpd</a><br>><br>> This looks like users might need to modify proj-style definitions manually, after the appropriate grids have been manually obtained/created.<br><br></div>With PROJ 5, you can now define custom projection pipelines [0] in r.proj (trunk r72598) and v.proj (trunk r72599). I hope this solves issues with different NAD83 datum definitions.<br><br></div>Markus M<br><div><br>[0] <a href="https://proj4.org/usage/transformation.html#transformation">https://proj4.org/usage/transformation.html#transformation</a><br><div><br>><br>> Markus M<br>><br>> ><br>> > > - although the differences between different NAD83 datums are less than a meter, differences between NAD27 and NAD83 are over hundred meters in some areas. Anything that has a different EPSG should be treated as different CRS exactly for the reasons you mentioned in your answer to Vasek.<br>> ><br>> > GRASS does not use EPSG to construct proj-style definitions.<br>> ><br>> > Markus M<br>> ><br>> > ><br>> > > Helena<br>> > ><br>> > ><br>> > > Markus M<br>> > ><br>> > > ><br>> > > > Helena<br>> > > ><br>> > > > On Nov 10, 2017, at 5:30 PM, Markus Metz <<a href="mailto:markus.metz.giswork@gmail.com">markus.metz.giswork@gmail.com</a>> wrote:<br>> > > ><br>> > > ><br>> > > ><br>> > > > On Fri, Nov 10, 2017 at 8:46 PM, Vaclav Petras <<a href="mailto:wenzeslaus@gmail.com">wenzeslaus@gmail.com</a>> wrote:<br>> > > > ><br>> > > > > On Fri, Nov 10, 2017 at 2:21 PM, Markus Metz <<a href="mailto:markus.metz.giswork@gmail.com">markus.metz.giswork@gmail.com</a>> wrote:<br>> > > > > ><br>> > > > > > > ><br>> > > > > > > > 7.2 considers this OK while trunk considers this different. I'm not sure which one is correct.<br>> > > > > > ><br>> > > > > > > In this case, 7.2 is correct, but 7.2 does not compare datums, i.e. projections would be regarded as matching even with e.g. nad27 and nad83.<br>> > > > > > > The comparison of datums is new in 7.3 and needs some refinement.<br>> > > > > > ><br>> > > > > > > I will fix the comparison of swapped lat_1 and lat_2.<br>> > > > > ><br>> > > > > > Fixed in trunk r71656.<br>> > > > > ><br>> > > > > > The test for different datum names has been disabled again in trunk r71657. There are several different datum names in lib/gis/datum.table that apparently mean the same: same ellipsoid and same transformation parameters. Apparently, GRASS does not provide a datum name when converting projection information from GRASS to proj4 for reprojecting data.<br>> > > > ><br>> > > > ><br>> > > > > Thank you so much, Markus. This saves me a lot of trouble.<br>> > > ><br>> > > > About avoiding trouble, the motivation of the stricter CRS comparison is to avoid subsequent geolocation errors. If data have been imported and differences in the CRS were not detected, it can become very difficult later on in the processing to figure out the reason for geolocation errors (different data not matching each other spatially). I'm not sure what to do about different datum names. The current check relies on the test for differences in ellipsoids.<br>> > > ><br>> > > > Markus M<br>> > > ><br>> > > > ><br>> > > > > (I'm working on a Jupyter Notebook where I need trunk.)<br>> > > > > <a href="https://github.com/wenzeslaus/Notebook-for-processing-point-clouds-in-GRASS-GIS">https://github.com/wenzeslaus/Notebook-for-processing-point-clouds-in-GRASS-GIS</a><br>> > > > ><br>> > > > > ><br>> > > > > ><br>> > > > > > Markus M<br>> > > > > ><br>><br></div></div></div>