public class MultiPointFeatureOverlay<T extends PointFeatureSymbol> extends EarthDataOverlay
MultiPointFeatureOverlay
class annotes a data view with
symbols using data from from multiple PointFeatureOverlay
objects.
Global selection rule and group filters are used to filter point features
for all overlays, while each overlay contains its own filter for features.
In this way, a complex set of symbols can be created from a single data source.alpha, lastTrans, prepared
Constructor and Description |
---|
MultiPointFeatureOverlay()
Creates a new overlay.
|
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
clone() |
protected void |
draw(java.awt.Graphics2D g,
EarthDataView view)
Draws the overlay graphics.
|
EarthArea |
getEarthAreaHint()
Gets the earth area hint.
|
java.util.List<java.lang.String> |
getExpressionListHint()
Gets the expression list hint.
|
SelectionRuleFilter |
getGlobalFilter()
Gets the global filter for features in all overlays.
|
FeatureGroupFilter |
getGroupFilter()
Gets the group filter for the overlay.
|
boolean |
getGroupFilterActive()
Gets the group filter flag.
|
java.util.List<Feature> |
getMatchingFeatures(EarthArea area)
Gets the matching point features for this overlay.
|
java.util.List<Feature> |
getMatchingFeatures(PointFeatureOverlay overlay,
EarthArea area)
Gets the matching point features for the specified overlay.
|
java.util.Map<java.lang.String,java.lang.Object> |
getMetadataAtPoint(java.awt.Point point)
Gets the metadata at the specified point.
|
java.util.List<PointFeatureOverlay<T>> |
getOverlayList()
Gets the list of overlays displayed.
|
TimeWindow |
getTimeWindowHint()
Gets the time window hint.
|
boolean |
hasMetadata()
Gets the metadata flag, true if the overlay has metadata associated
with its rendered graphics, false if not.
|
protected void |
prepare(java.awt.Graphics2D g,
EarthDataView view)
Prepares the overlay graphics prior to drawing.
|
void |
setEarthAreaHint(EarthArea area)
Sets the earth area hint.
|
void |
setExpressionListHint(java.util.List<java.lang.String> expressionList)
Sets the expression list hint.
|
void |
setGroupFilter(FeatureGroupFilter groupFilter)
Sets the group filter.
|
void |
setGroupFilterActive(boolean flag)
Sets the group filter flag.
|
void |
setTimeWindowHint(TimeWindow window)
Sets the time window hint.
|
java.lang.String |
toString() |
compareTo, getAlphaVersion, getColor, getColors, getColorWithAlpha, getLayer, getName, getTransparency, getVisible, invalidate, isPrepared, needsPrepare, render, setColor, setLayer, setName, setTransparency, setVisible
public MultiPointFeatureOverlay()
public boolean getGroupFilterActive()
setGroupFilterActive(boolean)
public void setGroupFilterActive(boolean flag)
flag
- the filter flag, true to use the group filter or false to not
use the filter in drawing the overlay.public void setTimeWindowHint(TimeWindow window)
window
- the time window to use for a hint.public TimeWindow getTimeWindowHint()
setTimeWindowHint(noaa.coastwatch.render.feature.TimeWindow)
public void setEarthAreaHint(EarthArea area)
area
- the earth area to use for a hint.getMatchingFeatures(PointFeatureOverlay,EarthArea)
,
getMatchingFeatures(EarthArea)
public EarthArea getEarthAreaHint()
getMatchingFeatures(PointFeatureOverlay,EarthArea)
,
getMatchingFeatures(EarthArea)
,
setEarthAreaHint(noaa.coastwatch.util.EarthArea)
public void setExpressionListHint(java.util.List<java.lang.String> expressionList)
expressionList
- the expression list to use for a hint.public java.util.List<java.lang.String> getExpressionListHint()
public java.lang.Object clone()
clone
in class EarthDataOverlay
public void setGroupFilter(FeatureGroupFilter groupFilter)
groupFilter
- the group filter or null to specify no group filtering.
Another way to specify no group filtering is to set a group filter, then
mark it as inactive using setGroupFilterActive(boolean)
.public FeatureGroupFilter getGroupFilter()
setGroupFilter(noaa.coastwatch.render.feature.FeatureGroupFilter)
public SelectionRuleFilter getGlobalFilter()
public java.util.List<PointFeatureOverlay<T>> getOverlayList()
protected void prepare(java.awt.Graphics2D g, EarthDataView view)
EarthDataOverlay
prepare
in class EarthDataOverlay
g
- the graphics object for drawing.view
- the earth data view.public java.util.List<Feature> getMatchingFeatures(EarthArea area)
area
- the earth area to use for feature matching.public java.util.List<Feature> getMatchingFeatures(PointFeatureOverlay overlay, EarthArea area)
overlay
- the overlay to get the list of matching features.
These are the features that will be displayed if the overlay has
its visibility turned on in this multi-point overlay.area
- the earth area to use for feature matching.protected void draw(java.awt.Graphics2D g, EarthDataView view)
EarthDataOverlay
draw
in class EarthDataOverlay
g
- the graphics object for drawing.view
- the earth data view.public boolean hasMetadata()
EarthDataOverlay
EarthDataOverlay.getMetadataAtPoint(java.awt.Point)
may be used. By default this method returns
false unless overridden by the child class.hasMetadata
in class EarthDataOverlay
EarthDataOverlay.getMetadataAtPoint(java.awt.Point)
public java.util.Map<java.lang.String,java.lang.Object> getMetadataAtPoint(java.awt.Point point)
EarthDataOverlay
getMetadataAtPoint
in class EarthDataOverlay
point
- the point to get metadata for.public java.lang.String toString()
toString
in class java.lang.Object