We currently offer three renderer choices:
- Textured (default). Loads the texture image and paints the mesh using
these textures
- Texture color. Uses the center point color for rendering each mesh
triangle. Gives a clear visual overview of the mesh structure while
also providing some context via the texture color
- Mesh. Renders the scene's mesh using a fill symbol
This is an equivalent of the point cloud index class, with some
notable differences:
- The class is designed to be thread safe. There's a shallow copy
QgsTiledMeshIndex class, which contains an implicitly shared
QgsAbstractTiledMeshIndex object. Tiled mesh data providers will
be accompanied by a concrete class of QgsAbstractTiledMeshIndex.
- The QgsTiledMeshIndex class takes care of thread safety by
protecting the underlying QgsAbstractTiledMeshIndex via a read/write
lock
- Callers can request tiled mesh tiles from the index by calling
QgsTiledMeshIndex::getTiles along with a QgsTiledMeshRequest object.
This will return the unique IDs of tiles matching the request.
Currently only geometric error based filtering is supported
by QgsTiledMeshRequest, but bounding box based filtering will
also be introduced.
- Individual tile details are retrieved by calling
QgsTiledMeshIndex::getTile along with the tile's unique ID.
- A caller can determine whether a specific tile can be further
refined by checking QgsTiledMeshIndex::tileCanRefine. This allows
the caller to check whether more children are available for a
tile, but which haven't yet been fetched (eg due to a sub dataset
tileset which hasn't yet been retrieved)
- A tile can be refined by calling QgsTiledMeshIndex::refineAsync.
(Non async refinement will be introduced later)
- Clients can request tile content by calling
QgsTiledMeshIndex::retrieveContent. This will either return
a cached version of the content (if available), or retrieve and cache
the content for future retrieval. Currently this uses a custom caching
mechanism, but this will be replaced in future with
QgsTileDownloadManager. (Currently QgsTileDownloadManager lacks support
for blocking gets which is required by the index to avoid use
of local event loops)
The api is implemented by the cesium tiles data provider, which
builds the index upfront from the cesium tiles tileset.json definitions.
elevation related properties to their layers
And use this to ensure that wms tiles with maptiler terrain
or terrarium terrain interpretation are always included by
default in elevation profile plots.
Most specifically, this ensures that projects containing the
out-of-the-box "Mapzen Global Terrain" layer will be automatically
included in elevation plots.
* QgsShadingRendering and pipe to render global elevation map
* gdal utils with datatype and resampling method enum
* raster layer elevation map
* optimize raster elevation map with rotation
* handle no data value in the map elevation raster pipe
* mesh layer and some little fixes
* fix nodata and hillshading z factor
* render shading on layout
* activate/deactivate the shading from ui
* shading only for layer that have elevation
* apply Z scale and offset of layer elevation properties
* ui settings
* allow elevation from point cloud even edl is deactivate for pointcloud
* fix ui
* sipify
* Shading renderer widget in styling panel
* icone for shading renderer settings widget
* two methods to combin elevation
* rewording
* remove check box at the bottom of canvas
* use band of elevation properties
* fix styling pannel
* render shading in layout
* keep EDL point cloud shading individually
* add shading rendering tests
* add missing code for local EDL for point cloud
* shading inactive by default
* rework raster layer resampling
* improve nodata in elevation map
* don't allow elevation map with != size to be combined
* remove EDL from point cloud
* renaming
* sipify
* colorize tests
* renaming
* RGB32
* renaming leftover
* some ui fixes
* fix border for EDL alg
* fix EDL closed next to nodata value
* fix first shading when activated
* renaming and typo
* fixes for doc, doxygen, indentation and spelling
* remove leftover member
* fix clang-tidy
* fix edl tests
* fix dll export
* minor fixes
* adapt images of tests
* fix narrowing
* fix indentation
* sipify
* WIP
* minor ui changes