Class FeatureCanvas.GeometryDrawCommand
- All Implemented Interfaces:
AutoCloseable
- Enclosing class:
FeatureCanvas
-
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
draped
(boolean draped) Indicates whether or not the geometry should be draped on top of the terrain.Specifies the fill styling for the geometry, cannot benull
.protected void
finalize()
Specifies the geometry to draw.occlusionMode
(OcclusionMode occlusionMode) Determines when this geometry should be painted in 3D in relation to other 3D data.queryable
(boolean queryable) Indicates whether or not the geometry should be considered when aMap#queryFeatures
is requested.stroke
(ComplexStrokeLineStyle lineStyle) Specifies the line styling of the geometry.Specifies the line styling of the geometry.void
submit()
Submits this draw command.zOrder
(int zOrder) The Z-order of the geometry.
-
Method Details
-
finalize
protected void finalize() -
close
public void close()- Specified by:
close
in interfaceAutoCloseable
-
geometry
@NotNull public FeatureCanvas.GeometryDrawCommand geometry(@NotNull Geometry geometry) throws NullPointerException Specifies the geometry to draw.This property is mandatory.
- Parameters:
geometry
- the geometry to draw, cannot benull
.- Returns:
- this
GeometryDrawCommand
. - Throws:
NullPointerException
- when the geometry isnull
.
-
stroke
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.- Parameters:
lineStyle
- the stroke styling to apply.- Returns:
- this
GeometryDrawCommand
.
-
stroke
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.- Parameters:
lineStyle
- the complex stroke styling to apply.- Returns:
- this
GeometryDrawCommand
. - Since:
- 2023.1
-
fill
Specifies the fill styling for the geometry, cannot benull
.Beware: when the
Geometry
is not aSurface
, this fill style is ignored. However; if you want to draw aRing
geometry (which is not aSurface
), you can wrap it in aPatch
to convert it into aSurface
, and then pass it to thegeometry
function.- Parameters:
fillStyle
- the fill styling to apply.- Returns:
- this
GeometryDrawCommand
.
-
draped
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.
- Parameters:
draped
- true if the geometry should be draped over terrain.- Returns:
- this
GeometryDrawCommand
.
-
queryable
Indicates whether or not the geometry should be considered when aMap#queryFeatures
is requested.The default is true.
- Parameters:
queryable
- true if the geometry should be considered.- Returns:
- this
GeometryDrawCommand
.
-
zOrder
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.
- Parameters:
zOrder
- the Z-order of this geometry.- Returns:
- this
GeometryDrawCommand
.
-
occlusionMode
@NotNull public FeatureCanvas.GeometryDrawCommand occlusionMode(@NotNull OcclusionMode occlusionMode) Determines when this geometry should be painted in 3D in relation to other 3D data.Details and limitations:
- Mode
OcclusionMode#VisibleOnly
shows only the part of the geometry that is not obscured by other 3D data. This is the default. - Mode
OcclusionMode#AlwaysVisible
shows the entire geometry even if behind other 3D data. The geometry will appear in front of other objects. - Mode
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 usesOcclusionMode#VisibleOnly
mode. - This parameter is only relevant in 3D. It is ignored on a 2D map.
- This parameter is only applied on non-draped geometries.
The default is
OcclusionMode#VisibleOnly
.- Parameters:
occlusionMode
- the occlusion mode to use- Returns:
- this
GeometryDrawCommand
- Since:
- 2024.0
- Mode
-
submit
Submits this draw command.Nothing will be painted if the draw command is not submitted.
- Throws:
IllegalStateException
- when there are missing geometry command calls or the command is already submitted.
-