java.lang.Object
com.esri.arcgisruntime.symbology.SymbolLayer
com.esri.arcgisruntime.symbology.StrokeSymbolLayer
- Direct Known Subclasses:
SolidStrokeSymbolLayer
Represents a symbol layer intended for use with line geometries. When applied to a polyline geometry, it draws a
stroke along that geometry. The StrokeSymbolLayer can also control drawing the outline of a polygon geometry. This
symbol layer controls many common operations vital for working with strokes. Width, cap style, and line style 3D
are controllable on a StrokeSymbolLayer. These properties provide the ability to pick between various
options for rendering strokes. Line style 3D applies only in 3D, but cap style and width have effects in
both 2D and 3D.
- Since:
- 100.5.0
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic enum
The cap style describes the way that line symbol layers will terminate when combined with a geometry.static enum
The 3D line style describes the way that line symbol layers will render in 3D. -
Method Summary
Modifier and TypeMethodDescriptionGets the cap style for this layer.Gets the 3D line style for this layer.double
getWidth()
Gets the width of the stroke.void
setCapStyle
(StrokeSymbolLayer.CapStyle capStyle) Sets the cap style.void
setLineStyle3D
(StrokeSymbolLayer.LineStyle3D lineStyle3D) Sets the line style in 3D.void
setWidth
(double width) Sets the width of the stroke.Methods inherited from class com.esri.arcgisruntime.symbology.SymbolLayer
isColorLocked, isEnabled, setColorLocked, setEnabled
-
Method Details
-
getWidth
public double getWidth()Gets the width of the stroke. The default is 0.- Returns:
- the width of the stroke. Width is defined in dp (density-independent pixels)
except
StrokeSymbolLayer.LineStyle3D.TUBE
, which is defined in meters. - Since:
- 100.5.0
- See Also:
-
setWidth
public void setWidth(double width) Sets the width of the stroke. The default is 0.When getting the width from a multilayer polyline symbol, the value reported is the largest width of all the symbol layers it contains. The symbol width is updated when its symbol layer widths change (if there is a new largest layer width). When setting a new width at the polyline symbol level, the width of the largest symbol layer is given the provided value, and all the smaller layers are sized proportionately. An individual symbol layer can be given a specific width without affecting the other layers.
- Parameters:
width
- Desired width of the stroke; cannot be negative. Width is defined in dp (density-independent pixels) exceptStrokeSymbolLayer.LineStyle3D.TUBE
, which is defined in meters.- Throws:
ArcGISRuntimeException
- if width is negative- Since:
- 100.5.0
-
getCapStyle
Gets the cap style for this layer. The default cap style isStrokeSymbolLayer.CapStyle.ROUND
. Cap styles affect strokes in MapViews and SceneViews, as well as the 'strip' and 'tube' line styles in SceneViews.- Returns:
- the cap style
- Since:
- 100.5.0
-
setCapStyle
Sets the cap style. The default cap style isStrokeSymbolLayer.CapStyle.ROUND
. Cap styles affect strokes in MapViews, as well as the 'strip' and 'tube' line styles in SceneViews.- Parameters:
capStyle
- the cap style- Throws:
IllegalArgumentException
- if capStyle is null- Since:
- 100.5.0
-
getLineStyle3D
Gets the 3D line style for this layer. The default 3D line style isStrokeSymbolLayer.LineStyle3D.STRIP
. 3D line style has no effect on strokes in MapViews, and only affects strokes in SceneViews.- Returns:
- the line style for 3D
- Since:
- 100.5.0
-
setLineStyle3D
Sets the line style in 3D. The default 3D line style isStrokeSymbolLayer.LineStyle3D.STRIP
. 3D line style has no effect on strokes in MapViews, and only affects strokes in SceneViews.- Parameters:
lineStyle3D
- the line style for 3D- Throws:
IllegalArgumentException
- if lineStyle3D is null- Since:
- 100.5.0
-