still an issue Re: *cs out EPSG:3042 and *declination auto - weird interaction

Olly Betts olly at survex.com
Mon Oct 23 22:35:59 BST 2023


On Thu, Oct 19, 2023 at 09:06:11PM +0100, Olly Betts wrote:
> |  o proj_factors(): make it work with projected CRS with non-metre unit and/or
> |  northing/easting axis order (#3826)
> 
> That patch is https://github.com/OSGeo/PROJ/pull/3826
> 
> I suspect just adding the code to select a consistent axis order will
> solve this.  If not we may be able to copy code from that patch.

It turns out copying code from the patch is tricky as it seems to use
PROJ functions which aren't exported in their public API, but just
normalising the output order like we already do when converting
coordinates seems to fix this for older PROJ.

I've converted your reduced reproducer into a testcase in the testsuite
and package builds run the testsuite so once I've made a release and
backported the packages we can be confident that this is fixed.  The
only wrinkle is that this new testcase is failing on macOS in CI due
to the coordinates of the fixed point converting differently by
(-0.28,1.41,0.00) (metres).  Homebrew currently provides the same
upstream PROJ version as Debian so I'm not sure what's up.  This seems
to be unrelated to your bug.

I'll try to resolve this and make a release fairly soon but if you're
affected by this then if you're able to move `*cs out` after
`*declination auto` that should provide a crude workaround (you'll end
up without grid convergence correction for now though).  This workaround
will function correctly and correct for grid convergence with the next
release.

Another way to work around it is to pick a different output coordinate
system which isn't affected by this issue.  If cavern sees `*cs out`
more than once it just uses the first it sees so you can use a
wrapper .svx file to use a different output coordinate system without
having to change your data, e.g. mycave-utm.svx with:

    *cs out UTM30N
    ; Any cs out in mycave.svx or files it includes will be ignored.
    *include mycave.svx

Cheers,
    Olly



More information about the Survex mailing list