V
- The type of elements rendered. It must be a subclass of NFEGeoObject
public abstract class NFERenderer<V extends NFEGeoObject> extends BasicLayer implements SelectableLayer, HoverableLayer, javax.swing.event.ChangeListener
PROPERTY_NAME, PROPERTY_PROVIDERID, PROPERTY_SRID, PROPERTY_VISIBLE
Constructor and Description |
---|
NFERenderer(MapCanvas canvas)
Constructor called from a subclass constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
addContextualMenuHandler(ContextualMenuHandler contextualMenuHandler)
Add a contextual menu handler
|
void |
addSelectionListener(SelectionListener l)
Adds a SelectionListener
|
void |
clear()
Clears all contents of this layer.
|
boolean |
clearHover()
Removes the hovering state from all the geo-objects
|
boolean |
clearSelection()
Clears all selected objects
|
java.awt.geom.Rectangle2D |
getDataMBR()
Always return null here.
|
java.awt.geom.Rectangle2D |
getFullExtent() |
V |
getGeoObject(java.lang.String key)
Gets the GeoObject identified by the given key
|
java.util.List<GeoObject> |
getHover()
Returns all the geo-object that are being hovered
|
float |
getImageOpacityAlpha()
Gets the opacity
|
V |
getObject(java.lang.Object key)
Gets the GeoObject corresponding to the provided key
|
GeoObject[] |
getObjects()
Gets all GeoObjects in this layer
|
java.util.List<GeoObject> |
getSelection()
Returns all selected objects
|
java.util.List<GeoObject> |
getSelection(GeoObject obj)
Returns selected objects that are children of the provided objects GeoObject's isSubElementOf() determines if an object is children of another object
|
JGeometrySegmentPoint |
getSnapPoint(java.lang.Object key, java.awt.geom.Point2D point, double tolerance) |
double |
getTolerance()
Gets the screen tolerance converted to the model's coordinate system
|
boolean |
handleEvent(java.util.EventObject evt)
The main method that performs event handling for this tool.
|
java.util.List<GeoObject> |
hitTest(int x, int y, int granularity)
Performs a hit test for the given mouse location (x,y).
|
java.util.List<GeoObject> |
hitTest(java.awt.geom.Rectangle2D mbr, int granularity)
Performs a hit test for the given rectangle.
|
boolean |
isHover(GeoObject obj)
Returns true if the geo-object is being hovered
|
boolean |
isSelected(GeoObject obj)
Checks if an object is selected
|
void |
mapRegionChanged(MapRegionEvent e)
When the associated canvas's map region is changed, this method is called to notify the layer of the change.
|
int |
numHovered()
Returns the number of geo-objects that are being hovered
|
int |
numSelected()
Returns the number of selected objects
|
void |
refresh()
Refreshes the current data window
|
void |
refresh(java.awt.geom.Rectangle2D dataWindow)
Refreshes the data window at the given area
|
void |
removeContextualMenuHandler(ContextualMenuHandler contextualMenuHandler)
Remove a contextual menu handler
|
void |
removeSelectionListener(SelectionListener l)
Removes the given SelectionListener
|
long |
render(java.awt.Graphics2D graphics)
Renders the layer contents to the given Graphics.
|
boolean |
select(java.util.List<GeoObject> objs)
Adds the provided objects to the selection list
|
boolean |
setHover(java.util.List<GeoObject> objs)
A list of geo-objects being hovered
|
void |
setImageOpacityAlpha(float imageOpacityAlpha)
Sets the opacity for the layer's rendered images
|
boolean |
setSelection(java.util.List<GeoObject> selectedGeoObjects)
Clears selection before setting the provided objects as selected
|
void |
stateChanged(javax.swing.event.ChangeEvent event) |
boolean |
unselect(java.util.List<GeoObject> objs)
Removes the provided objects from the selection list
|
void |
update(long elapsedTime)
updates the contents data model or structure.
|
added, addPropertyChangeListener, addPropertyChangeListener, fromXMLElement, getCanvas, getIcon, getName, getProperties, getProperty, getProperty, getPropertyChangeListeners, getPropertyChangeListeners, getProviderID, getSRID, isVisible, removed, removePropertyChangeListener, removePropertyChangeListener, repaint, setCanvas, setName, setProperty, setProviderID, setSRID, setVisible, toXMLElement
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
added, fromXMLElement, getCanvas, getIcon, getName, getProviderID, getSRID, isVisible, removed, repaint, setCanvas, setName, setProviderID, setSRID, setVisible, toXMLElement
public NFERenderer(MapCanvas canvas)
canvas
- the MapCanvas where the layer will be renderedpublic double getTolerance()
public void refresh()
public void refresh(java.awt.geom.Rectangle2D dataWindow)
dataWindow
- a region to be refreshedpublic float getImageOpacityAlpha()
public void setImageOpacityAlpha(float imageOpacityAlpha)
imageOpacityAlpha
- the opacity valuepublic void addContextualMenuHandler(ContextualMenuHandler contextualMenuHandler)
contextualMenuHandler
- contextual menu handlerpublic void removeContextualMenuHandler(ContextualMenuHandler contextualMenuHandler)
contextualMenuHandler
- contextual menu handlerpublic V getGeoObject(java.lang.String key)
key
- a GeoObject's keypublic boolean isSelected(GeoObject obj)
SelectableLayer
isSelected
in interface SelectableLayer
public boolean clearSelection()
SelectableLayer
clearSelection
in interface SelectableLayer
public int numSelected()
SelectableLayer
numSelected
in interface SelectableLayer
public java.util.List<GeoObject> getSelection()
SelectableLayer
getSelection
in interface SelectableLayer
public java.util.List<GeoObject> getSelection(GeoObject obj)
SelectableLayer
getSelection
in interface SelectableLayer
public boolean setSelection(java.util.List<GeoObject> selectedGeoObjects)
SelectableLayer
setSelection
in interface SelectableLayer
public boolean select(java.util.List<GeoObject> objs)
SelectableLayer
select
in interface SelectableLayer
public boolean unselect(java.util.List<GeoObject> objs)
SelectableLayer
unselect
in interface SelectableLayer
public void addSelectionListener(SelectionListener l)
SelectableLayer
addSelectionListener
in interface SelectableLayer
public void removeSelectionListener(SelectionListener l)
SelectableLayer
removeSelectionListener
in interface SelectableLayer
public void stateChanged(javax.swing.event.ChangeEvent event)
stateChanged
in interface javax.swing.event.ChangeListener
public boolean setHover(java.util.List<GeoObject> objs)
HoverableLayer
setHover
in interface HoverableLayer
public boolean clearHover()
HoverableLayer
clearHover
in interface HoverableLayer
public java.util.List<GeoObject> getHover()
HoverableLayer
getHover
in interface HoverableLayer
public boolean isHover(GeoObject obj)
HoverableLayer
isHover
in interface HoverableLayer
public int numHovered()
HoverableLayer
numHovered
in interface HoverableLayer
public JGeometrySegmentPoint getSnapPoint(java.lang.Object key, java.awt.geom.Point2D point, double tolerance)
public java.awt.geom.Rectangle2D getFullExtent()
getFullExtent
in interface Layer
getFullExtent
in class BasicLayer
public void clear()
Layer
clear
in interface Layer
clear
in class BasicLayer
public boolean handleEvent(java.util.EventObject evt)
Layer
handleEvent
in interface Layer
handleEvent
in class BasicLayer
public void update(long elapsedTime)
Layer
update
in interface Layer
update
in class BasicLayer
elapsedTime
- The elapsed time since last update.public java.awt.geom.Rectangle2D getDataMBR()
BasicLayer
getDataMBR
in interface Layer
getDataMBR
in class BasicLayer
public GeoObject[] getObjects()
GeoObjectLayer
getObjects
in interface GeoObjectLayer
public V getObject(java.lang.Object key)
GeoObjectLayer
getObject
in interface GeoObjectLayer
public java.util.List<GeoObject> hitTest(int x, int y, int granularity)
Layer
hitTest
in interface Layer
hitTest
in class BasicLayer
x
- mouse location xy
- mouse location ypublic java.util.List<GeoObject> hitTest(java.awt.geom.Rectangle2D mbr, int granularity)
Layer
hitTest
in interface Layer
hitTest
in class BasicLayer
mbr
- the test rectangle, in device coordinatespublic void mapRegionChanged(MapRegionEvent e)
Layer
mapRegionChanged
in interface Layer
mapRegionChanged
in class BasicLayer
public long render(java.awt.Graphics2D graphics)
Layer
render
in interface Layer
render
in class BasicLayer
graphics
- the graphics object