<div dir="auto">Wow Nyall. This is huge. <div dir="auto">We will have to make some noise in the deodetic and topographic communities that QGIS is now fully z aware.</div><div dir="auto">Thanks for the very clear explanations and the cautious path you took to avoid regressions. </div><div dir="auto">Hats off</div><div dir="auto">Régis </div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le jeu. 1 août 2024, 05:26, Nyall Dawson via QGIS-PSC <<a href="mailto:qgis-psc@lists.osgeo.org">qgis-psc@lists.osgeo.org</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">PSC,<br><br>I'm writing to provide an update on the grant for QEP 267 -- Add vertical CRS handling to QGIS.<div><br></div><div>This project has been underway since the grant application, with work being slowly "drip-fed" into QGIS over the last year's worth of releases. All work has been done in a step-by-step, atomic approach, to ensure that every little part of it is thoroughly reviewed and that no regressions have been introduced before moving to the next step. This approach was taken to reduce the risk of regressions in our critical transformation code. I've been carefully monitoring the issue tracker after each part is merged (and after each stable release during this time) to watch for any regression reports, and thankfully we've avoided them so far!</div><div><br></div><div>Work which has been completed to date includes:</div><div><br></div><div>- As of QGIS 3.34, QGIS can now create and handle vertical and compound CRSes. (Prior to this work QGIS was limited to creation and handling of horizontal CRS only, for various legacy reasons). There are a range of new PyQGIS API calls which make creation of vertical and compound CRS easy, and to make it possible to eg query the vertical component of an existing compound CRS.</div><div>- In QGIS 3.36 the coordinate reference selection widgets were updated to offer choices of 2d only, compound, or vertical only CRSes. We use these in QGIS itself, but plugins can now also offer users choices of eg "pick a vertical CRS" where ONLY vertical CRSes are offered.</div><div> - In QGIS 3.34 coordinate transforms were reworked so that they function correctly with vertical transformation, if both the source and destination CRS have vertical components. (We delegate the actual transformation to PROJ, but QGIS itself no longer gets in the way and forces 2d only transformations!)</div><div>  - In version 3.38 we introduced a new setting for QGIS projects, for their vertical reference system. Users can control this through project properties, and it's accessible via PyQGIS and via associated expression variables (eg @project_vertical_crs) for use in print layouts.</div><div>- Similarly, in 3.38 we introduced the API support for map layers to have a vertical CRS. (This was not exposed to users in 3.38 though)</div><div>- In QGIS 3.40 so far we have exposed the vertical CRS setting for vector layers to users (via the layer properties dialog), allowing users to specify the associated vertical CRS for these layers. The vertical CRS is respected in elevation profile plots, in Identify tool results, and in 3D Map views (assuming the 3D map is created with an associated vertical CRS).</div><div>- There is an open pull-request for 3.40 to expose the vertical CRS for point cloud layers in a similar way, with the vertical CRS being respected in elevation profiles, identify tool results, and 3D map views</div><div>- We have open pull requests for 3.40 to show layer vertical CRS information in the layer properties "information" pages, and add expression variables at the layer scope (eg @layer_vertical_crs).</div><div><br></div><div>While the work conducted to date satisfies the original target deliverables of the grant*, we also accounted for follow ups to this work as user feedback and tickets are submitted. We'll continue to monitor the QGIS issue tracker and mailing lists for these reports, and (where appropriate) will address them in future releases.</div><div><br></div><div>Kind regards,</div><div>Nyall</div><div><br></div><div>* We've gone a little further than the original deliverables here, and have implemented some of the functionality originally identified as "out of scope"! 😁</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div>  - QGIS map layers also have individual settings for the vertical reference system. This isn't YET exposed for user control. Before I expose this setting I want to ensure that the layer type correctly uses vertical transforms in the elevation profiles, in 3d views, and in the identify tool z values. This will definitely be done for vector layers in 3.40, (and hopefully the other layer types too)<br></div></div>
_______________________________________________<br>
QGIS-PSC mailing list<br>
<a href="mailto:QGIS-PSC@lists.osgeo.org" target="_blank" rel="noreferrer">QGIS-PSC@lists.osgeo.org</a><br>
<a href="https://lists.osgeo.org/mailman/listinfo/qgis-psc" rel="noreferrer noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-psc</a><br>
</blockquote></div>