Class WavePatternBuilder
java.lang.Object
com.luciad.layers.styles.complexstrokes.builders.WavePatternBuilder
- All Implemented Interfaces:
AutoCloseable
Creates a pattern with a wave shape.
- Since:
- 2023.1
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionamplitude
(double amplitude) The amplitude or height of the wave.angle
(double angle) The angle of the wave pattern in degrees.build()
Build the wave pattern as configured.void
close()
fillColor
(android.graphics.Color color) Sets the fill color.protected void
finalize()
fixedLength
(double fixedLength) Set the length of the pattern in pixels.lineColor
(android.graphics.Color color) Sets the line color.lineWidth
(double lineWidth) Sets the line width.relativeLength
(double relativeLength) Set the length of the pattern relative to the length of the entire line, as a value between0
and1
.startAngle
(Angle startAngle) This determines at which point on the sine function the wave begins.
-
Method Details
-
finalize
protected void finalize() -
close
public void close()- Specified by:
close
in interfaceAutoCloseable
-
build
Build the wave pattern as configured.- Returns:
- the
ComplexStrokePattern
.
-
fixedLength
Set the length of the pattern in pixels.The length cannot be both fixed and relative, if both methods are used, only the last one affects the result.
If no length is set, a 10 pixel fixed length will be used as default.
- Parameters:
fixedLength
- the length in pixels.- Returns:
- this builder.
- Throws:
IllegalArgumentException
- fixedLength must be>=0
.
-
relativeLength
@NotNull public WavePatternBuilder relativeLength(double relativeLength) throws IllegalArgumentException Set the length of the pattern relative to the length of the entire line, as a value between0
and1
.The length cannot be both fixed and relative, if both methods are used, only the last one affects the result.
If no length is set, a 10 pixel fixed length will be used as default.
- Parameters:
relativeLength
- a value in[0,1]
.- Returns:
- this builder.
- Throws:
IllegalArgumentException
- relativeLength must be in range[0,1]
.
-
amplitude
The amplitude or height of the wave.- Parameters:
amplitude
- The amplitude of the wave. This is a value in pixels, relative to the base line. Defaults to10
.- Returns:
- this builder.
- Throws:
IllegalArgumentException
- amplitude must be>0
.
-
startAngle
This determines at which point on the sine function the wave begins.0
is on the baseline,90
is above the baseline at the max amplitude. A startAngle of180
will result in a wave that starts on the baseline, but first goes to the right of the baseline instead of to the left.- Parameters:
startAngle
- The start angle of the wave, defaults to0
degrees.- Returns:
- this builder.
-
angle
The angle of the wave pattern in degrees.When values greater than 360 degrees are used the pattern keeps going, e.g. an angle of 720 will result in two complete waves.
- Parameters:
angle
- The angle of the wave, defaults to360
degrees.- Returns:
- this builder.
- Throws:
IllegalArgumentException
- angle must be>=0
.
-
lineColor
Sets the line color.- Parameters:
color
- the line's color, defaults to black.- Returns:
- this builder.
-
fillColor
Sets the fill color.- Parameters:
color
- the fill color, by default there is no fill.- Returns:
- this builder.
-
lineWidth
Sets the line width.- Parameters:
lineWidth
- the line's width, defaults to1
.- Returns:
- this builder.
- Throws:
IllegalArgumentException
- lineWidth must be>0
.
-