LuciadCPillar 2023.1.04
|
Command to specify drawing options for a geometry. More...
#include <luciad/layers/features/FeatureCanvas.h>
Public Member Functions | |
virtual | ~GeometryDrawCommand ()=default |
virtual GeometryDrawCommand & | draped (bool draped)=0 |
Indicates whether or not the geometry should be draped on top of the terrain. More... | |
virtual GeometryDrawCommand & | fill (FillStyle fillStyle)=0 |
Specifies the fill styling for the geometry, cannot be nullptr . More... | |
virtual GeometryDrawCommand & | geometry (std::shared_ptr< Geometry > geometry)=0 |
Specifies the geometry to draw. More... | |
virtual GeometryDrawCommand & | occlusionMode (OcclusionMode occlusionMode)=0 |
Determines when this geometry should be painted in 3D in relation to other 3D data. More... | |
virtual GeometryDrawCommand & | queryable (bool queryable)=0 |
Indicates whether or not the geometry should be considered when a Map::queryFeatures is requested. More... | |
virtual GeometryDrawCommand & | stroke (ComplexStrokeLineStyle lineStyle)=0 |
Specifies the line styling of the geometry. More... | |
virtual GeometryDrawCommand & | stroke (LineStyle lineStyle)=0 |
Specifies the line styling of the geometry. More... | |
virtual void | submit ()=0 |
Submits this draw command. More... | |
virtual GeometryDrawCommand & | zOrder (ZOrder zOrder)=0 |
The Z-order of the geometry. More... | |
Command to specify drawing options for a geometry.
|
virtualdefault |
|
pure virtual |
Indicates whether or not the geometry should be draped on top of the terrain.
Draping means that the geometry is painted directly on top of the terrain’s surface relief.
By default, a geometry is draped if it has all zero Z values. Otherwise it will not be draped. You can override the default behaviour by setting this flag true or false. If you explicitly drape a 3D geometry, its 2D "footprint" is painted on the terrain.
This setting is only relevant for 3D maps and is ignored for 2D maps.
draped | true if the geometry should be draped over terrain. |
|
pure virtual |
Specifies the fill styling for the geometry, cannot be nullptr
.
When the given geometry does not have a surface, this style is ignored.
fillStyle | the fill styling to apply. |
|
pure virtual |
Specifies the geometry to draw.
This property is mandatory.
geometry | the geometry to draw, cannot be nullptr . |
luciad::NullArgumentException | when the geometry is nullptr . |
|
pure virtual |
Determines when this geometry should be painted in 3D in relation to other 3D data.
Details and limitations:
OcclusionMode::VisibleOnly
shows only the part of the geometry that is not obscured by other 3D data. This is the default. OcclusionMode::AlwaysVisible
shows the entire geometry even if behind other 3D data. The geometry will appear in front of other objects. OcclusionMode::OccludedOnly
shows only the part of the geometry that is behind other 3D data. You typically use this to display obscured geometries in combination with another style that uses OcclusionMode::VisibleOnly
mode. The default is OcclusionMode::VisibleOnly
.
occlusionMode | the occlusion mode to use |
|
pure virtual |
Indicates whether or not the geometry should be considered when a Map::queryFeatures
is requested.
The default is true.
queryable | true if the geometry should be considered. |
|
pure virtual |
Specifies the line styling of the geometry.
This is the geometry's outline if it's a surface.
Only one stroke style can be set, if this function is called when a lineStyle stroke
has already been set, it will be overwritten.
lineStyle | the complex stroke styling to apply. |
|
pure virtual |
Specifies the line styling of the geometry.
This is the geometry's outline if it's a surface.
Only one stroke style can be set, if this function is called when a ComplexStrokeLineStyle stroke
has already been set, it will be overwritten.
lineStyle | the stroke styling to apply. |
|
pure virtual |
Submits this draw command.
Nothing will be painted if the draw command is not submitted.
luciad::LogicException | when there are missing geometry command calls or the command is already submitted. |
|
pure virtual |
The Z-order of the geometry.
DrawCommands are painted from lowest to highest Z-order, so DrawCommands with a higher Z-order are painted on top of DrawCommands with a lower Z-order. Note that the Z-order only affects the ordering of features within the same layer. A feature from a certain layer will always get painted above any other feature from a layer that comes lower in the map's layer order, regardless of what Z-order they may have. The default value is 0.
zOrder | the Z-order of this geometry. |