-
-
Notifications
You must be signed in to change notification settings - Fork 695
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mesh properties - elevation mode #9207
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@nyalldawson may I request your feedback here. I am bit confused on what these options actually do and am not sure we are clear enough.
The |elevationscale| :guilabel:`Elevation` tab provides options to control | ||
the layer elevation properties within a :ref:`3D map view <label_3dmapview>` | ||
and its appearance in the :ref:`profile tool charts <label_elevation_profile_view>`. | ||
Specifically, you can set: | ||
Specifically, you can set configuration: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@nyalldawson, unless there is a report that already explains it (and I'd be happy to be redirected to it), can you help clarify what the Elevation tab is now used for? In my understanding, it was the place to set how values are taken to shape the terrain for 3d map or profile tool, but it looks like it covers more ideas now... and I am a bit confused on what belongs to terrain behavior, and what to the 2D map filtering
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's everything related to elevation. These settings should ideally affect everywhere the layer is interpreted for heights, including elevation profile, 2d filtering AND 3d map canvases. But right now there's partial support, and eg some settings work in some contexts but not in others. That's due to funding limitations only...
Suffice to say, for the documentation I'd just say it's where you configure how the dataset heights should be interpreted.
@@ -658,9 +658,21 @@ Specifically, you can set: | |||
|
|||
Mesh Elevation properties | |||
|
|||
* :guilabel:`Elevation Surface`: how the mesh layer vertices Z values | |||
* :guilabel:`From vertices`: how the mesh layer vertices Z values |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As an example, does this option (also) interact with 2d filtered z map?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No -- that setting only applies to 3d map canvas & elevation profiles, not 2d filtering.
of elevation values. If a range is specified, mesh values will be extruded over this range. | ||
You can set the :guilabel:`Lower` and :guilabel:`Upper` | ||
elevation range values for the layer, and specify whether the lower or upper :guilabel:`Limits` | ||
are inclusive or exclusive. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I miss this feature, available in the issue report
are inclusive or exclusive. | |
are inclusive or exclusive. | |
When enabled, the layer will only be visible in :ref:`elevation filtered 2d maps <elevation_controller>` | |
when the layer's range is included in the map's z range. |
should be interpreted as terrain elevation. | ||
You can apply a :guilabel:`Scale` factor and an :guilabel:`Offset`. | ||
* :guilabel:`Fixed Elevation Range`: the mesh layer is linked to a fixed elevation range. | ||
This mode is applicable when a layer has either a single fixed elevation or a range (slice) | ||
of elevation values. If a range is specified, mesh values will be extruded over this range. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm trying to understand this sentence: does that mean that the lowest value of the layer is bound to the lower limit, same for the highest value and upper limit, and then there is some interpolation in-between to calculate extrusion value for the other faces/vertices? Or only the meshes falling in the range are taken into consideration (and then what is the extrusion offset?)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Think of it like a "voxel" (3d rectangle). Instead of the mesh values representing an infinitely narrow horizontal plane, they then represent pixels stretched up through elevation values. The actual value doesn't change, it's not interpolated.
You can set the :guilabel:`Lower` and :guilabel:`Upper` | ||
elevation range values for the layer, and specify whether the lower or upper :guilabel:`Limits` | ||
are inclusive or exclusive. | ||
* :guilabel:`Fixed Elevation Range Per Group`: each group in the mesh layer |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For this option also it is unclear to me if it is about map filtering and/or terrain interpolation...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This one ONLY applies to map filtering. Again, ideally it'd also affect the elevation profile and 3d map views, but that needs funding :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Better late than never: thanks @nyalldawson for explanation.
@DelazJ and @nyalldawson |
This feature is exposed as a user-editable table for dataset groups with lower and upper values. | ||
You can either populate the lower and upper values manually | ||
or use an |expression| :guilabel:`Expression` to auto-fill all group values based on an expression. | ||
When enabled, the layer will only be visible in :ref:`2D map view <label_mapview>`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmmm, this sentence sounds to me like the layer is no longer visible in 3d or profile views while in my understanding they just ignore the filtering and will display the full extent you request. On the contrary, the display in 2D view is limited to values falling within the map filter ranges, if enabled.
fixes #8978 ; fixes #9100