public final class FeaturePainterMetadata extends Object implements AutoCloseable
Modifier and Type | Method and Description |
---|---|
void |
close() |
void |
detailLevelScales(List<MapScale> detailLevelScales)
Sets a vector of map scales that determine when this painter should switch from one level-of-detail to the next.
|
protected void |
finalize() |
void |
painterDependsOnFeature(boolean depends)
Indicates whether a feature's style depends on the feature itself.
|
void |
painterDependsOnFeatureState(FeatureState featureState,
boolean active)
Indicates that a feature's style depends on the given state.
|
public void close()
close
in interface AutoCloseable
public void painterDependsOnFeature(boolean depends)
For example, the feature's color may depend on a certain data property. This value is true by default.
depends
- When true, a feature needs to be repainted by the painter when it changes.public void painterDependsOnFeatureState(@NotNull FeatureState featureState, boolean active)
For example, the feature's color may change when it is selected. The FeatureState#selected()
is active by default.
featureState
- The feature state on which the painter depends. When a feature's state changes to this state, it needs to be repainted by the painter.active
- The desired state of the given featureState.public void detailLevelScales(@NotNull List<MapScale> detailLevelScales)
This can be used to advertise that this painter supports multiple level-of-details for a given object. The current level-of-detail that is used is determined by the map and is passed back to the IFeaturePainter
via the FeaturePainterContext#getDetailLevel()
method. When this method is not called, level-of-detail is not supported.
All scales smaller than the smallest scale will correspond to detail level '0' (least detailed). All scales larger than the largest scale will correspond to detail level 'detailLevelScales.size()' (most detailed).
detailLevelScales
- the switch scales for each level of detail