Package org.geotools.swing.tool
Class InfoToolHelper
Object
InfoToolHelper
- All Implemented Interfaces:
EventListener,MapBoundsListener
- Direct Known Subclasses:
FeatureLayerHelper,GridCoverageLayerHelper,GridReaderLayerHelper
Abstract base class for helper classes used by InfoTool to query features in map layers.
- Since:
- 2.6
- Author:
- Michael Bedward
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected WeakReference<MapContent>static final StringString key used for the position element in theMappassed to getInfo(org.geotools.geometry.Position2D).protected WeakReference<Layer> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidprotected MathTransformGets theMathTransformused to convert coordinates from the projection being used by theMapContentto that of theLayer.abstract InfoToolResultgetInfo(Position2D pos) Gets layer data at the specified position.getLayer()Gets the map layer associated with this helper.Gets the map content associated with this helper.abstract booleanisSupportedLayer(Layer layer) Called by the helper lookup system when selecting a helper for a given layer.protected booleanbooleanisValid()Checks if this helper is holding a reference to aMapContentand aLayer.Helpers only hold aWeakReferenceto both the map content and layer to avoid blocking garbage collection when layers are discarded.voidmapBoundsChanged(MapBoundsEvent event) A method from theMapBoundsListenerinterface used to listen for a change to the map content's coordinate reference system.voidSets the map layer for this helper.voidsetMapContent(MapContent content) Sets the map content for this helper.
-
Field Details
-
KEY_POSITION
String key used for the position element in theMappassed to getInfo(org.geotools.geometry.Position2D).- See Also:
-
contentRef
-
layerRef
-
-
Constructor Details
-
InfoToolHelper
public InfoToolHelper()
-
-
Method Details
-
isSupportedLayer
Called by the helper lookup system when selecting a helper for a given layer.- Parameters:
layer- the layer- Returns:
trueis this helper can handle the layer- Throws:
IllegalArgumentException- iflayerisnull
-
getInfo
Gets layer data at the specified position. If there are no feature data at the position, an emptyInfoToolResultobject is returned.- Parameters:
pos- query position- Returns:
- layer data
- Throws:
Exception- on error querying the layer
-
isValid
public boolean isValid()Checks if this helper is holding a reference to aMapContentand aLayer.Helpers only hold aWeakReferenceto both the map content and layer to avoid blocking garbage collection when layers are discarded.- Returns:
trueif both map content and layer references are valid
-
setMapContent
Sets the map content for this helper.- Parameters:
content- the map content- Throws:
IllegalArgumentException- ifcontentisnull
-
getMapContent
Gets the map content associated with this helper.- Returns:
- the map content
-
setLayer
Sets the map layer for this helper.- Parameters:
layer- the map layer- Throws:
IllegalArgumentException- iflayerisnull
-
getLayer
Gets the map layer associated with this helper. -
mapBoundsChanged
A method from theMapBoundsListenerinterface used to listen for a change to the map content's coordinate reference system.- Specified by:
mapBoundsChangedin interfaceMapBoundsListener- Parameters:
event- The change event.
-
getContentToLayerTransform
Gets theMathTransformused to convert coordinates from the projection being used by theMapContentto that of theLayer.- Returns:
- the transform or
nullif the layer's CRS is the same as that of the map content, or if either has no CRS defined
-
isTransformRequired
protected boolean isTransformRequired() -
clearTransform
protected void clearTransform()
-