schmitzm.geotools.gui
Class SelectableXMapPane

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by schmitzm.swing.JPanel
                      extended by skrueger.geotools.XMapPane
                          extended by schmitzm.geotools.gui.SelectableXMapPane
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible
Direct Known Subclasses:
JMapEditorPane

public class SelectableXMapPane
extends XMapPane

Diese Klasse erweitert die Geotools-Klasse org.geotools.swing.JMapPane um folgende Features:

Sofern eingeschaltet, erfolgt Highlighting immer auf dem obersten sichtbaren Nicht-Raster-Layer.
Darueberhinaus besteht ueber XMapPane.getScreenToWorld() Zugriff auf eine affine Transformation mit der die aktuellen Fenster-Koordinaten (z.B. eines MouseEvent) in Karten-Koordinaten (Latitude/Longitude) umgerechnet werden koennen.

Version:
1.0
Author:
Martin Schmitz (University of Bonn/Germany)
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
protected static Logger LOGGER
          Logger for debug messages.
static int NONE
          Flag fuer Modus "Nichts machen".
static int SELECT_ALL
          "SimpleFeature-Auswahl auf allen (sichtbaren) Layern".
static int SELECT_ONE_FROM_TOP
          "Auswahl nur eines Features, das erste sichtbare von Oben".
static int SELECT_TOP
          "SimpleFeature-Auswahl auf dem obersten (sichtbaren) Layer".
 
Fields inherited from class skrueger.geotools.XMapPane
bgExecuter, bgMapLayerListener, DEFAULT_RESIZING_PAINT_DELAY, INITIAL_REPAINT_DELAY, labelCache, localMapLayerListener, mapArea, mapImageInvalid, mapLayerSelectable, mapPaneListeners, oldMapArea, oldScreenToWorld, paneResized, renderingErrors, REPEATING_REPAINT_DELAY, screenToWorld
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
SelectableXMapPane()
          Erzeugt ein neues MapPane.
SelectableXMapPane(MapContext context)
          Erzeugt ein neues MapPane.
 
Method Summary
 boolean featureLayerIntersectsEnvelope(MapLayer layer, Envelope env)
          Testet (anhand der Features), ob das Objekt eines Layers eine Bounding-Box schneidet.
protected  Hashtable<MapLayer,> findFeatures(GeomFilterGenerator filterGenerator, int mode, Envelope env)
          Ermittelt alle Features, die einen Filter erfuellen.
 boolean findFeaturesAndFireEvents(GeomFilterGenerator filterGenerator, int selectionMode, Envelope env)
          Ermittelt alle Features, die in einem Bereich liegen und erzeugt entsprechende FeatureSelectedEvents.
protected  Hashtable<MapLayer,GridCoverage2D> findGridCoverageSubsets(Envelope env, int selectionMode)
          Ermittelt alle Teil-Raster, die in einem Bereich liegen.
 boolean findGridCoverageSubsetsAndFireEvents(Envelope env, int mode)
          Ermittelt alle Teil-Raster, die in einem Bereich liegen und erzeugt entsprechende GridCoverageSelectedEvents.
protected  Hashtable<MapLayer,double[]> findGridCoverageValues(Point2D point, int mode)
          Ermittelt alle Raster-Werte, die an einer bestimmten Geo-Position liegen.
 boolean findGridCoverageValuesAndFireEvents(Point2D point, int mode)
          Ermittelt die Raster-Werte, die an einem Punkt liegen und erzeugt entsprechende GridCoverageValueSelectedEvents.
 Hashtable<MapLayer,> findVisibleFeatures(GeomFilterGenerator filterGenerator, int selectionMode, Envelope env)
          Ermittelt alle sichtbaren Features, die einen Filter erfuellen.
 void fireMapPaneEvent(MapPaneEvent e)
          Propagiert ein Ereignis an alle angeschlossenen Listener.
 MapLayer getBottomLayer()
          Liefert unterste Layer (sichtbar oder unsichtbar).
 double getScale()
          Liefert die Anzahl der Einheiten, die ein Bildschirm-Pixel darstellt.
 MapLayer getTopLayer()
          Liefert oberste Layer (sichtbar oder unsichtbar).
 MapLayer getTopVisibleGridCoverageLayer()
          Liefert oberste sichtbare Raster-Layer.
 MapLayer getTopVisibleLayer()
          Liefert oberste sichtbare Layer.
 MapLayer getTopVisibleNonGridCoverageLayer()
          Liefert oberste sichtbare Nicht-Raster-Layer.
static boolean isGridCoverageLayer(MapLayer layer)
          Prueft, ob es sich bei einem Layer um ein Raster-Layer handelt.
 boolean layerIntersectsCoord(MapLayer layer, Coordinate coord)
          Testet (anhand der Bounding-Box), ob das Objekt eines Layers eine Coordinate schneidet.
 boolean layerIntersectsEnvelope(MapLayer layer, Envelope env)
          Testet (anhand der Bounding-Box), ob das Objekt eines Layers eine andere Bounding-Box schneidet.
 void performSelectionEvent(int ox, int oy, int px, int py, int selectionMode)
          Verarbeitet die Selektion eines Karten-Ausschnitts.
 boolean setMapArea(ReferencedEnvelope newMapArea)
          Setzt die sichtbare Karte.
 void zoomTo(SimpleFeature feature)
          Sets the mapArea to smartly present the given features.
 
Methods inherited from class skrueger.geotools.XMapPane
addMapPaneListener, bestAllowedMapArea, blink, configureMouse, dispose, drawRectangle, drawRectangle, drawScaledPreviewImage_Zoom, getBgContext, getDefaultMaxMapExtendMode, getImageOrigin, getLocalRenderer, getMapArea, getMapBackgroundColor, getMapContext, getMapCoordinatesFromEvent, getMapImage, getMaxExtend, getMaxZoomScale, getMinZoomScale, getRendererHints, getScreenToWorld, getTool, getWorldToScreenTransform, isMapLayerSelectable, isShowExceptions, isWellDefined, onRenderingCancelled, onRenderingCompleted, onRenderingFailed, paintComponent, pan, refresh, removeMapPaneListener, setAntiAliasing, setBgContext, setBorder, setDefaultMaxMapExtendMode, setJava2dHints, setLocalContext, setMapBackgroundColor, setMapImage, setMapLayerSelectable, setMaxExtend, setMaxZoomScale, setMinZoomScale, setPainting, setShowExceptions, setTool, tranformGeoToWindow, tranformGeoToWindow, tranformWindowToGeo, updateCursor, updateFinalImage, zoomTo, zoomToLayer, zoomToLayerIdxReverse
 
Methods inherited from class schmitzm.swing.JPanel
print, setBackground, setEnabled
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

SELECT_ALL

public static final int SELECT_ALL
"SimpleFeature-Auswahl auf allen (sichtbaren) Layern".

See Also:
Constant Field Values

SELECT_ONE_FROM_TOP

public static final int SELECT_ONE_FROM_TOP
"Auswahl nur eines Features, das erste sichtbare von Oben".

See Also:
Constant Field Values

SELECT_TOP

public static final int SELECT_TOP
"SimpleFeature-Auswahl auf dem obersten (sichtbaren) Layer".

See Also:
Constant Field Values

LOGGER

protected static final Logger LOGGER
Logger for debug messages.


NONE

public static final int NONE
Flag fuer Modus "Nichts machen".

See Also:
#setState(int), #setState(int), Constant Field Values
Constructor Detail

SelectableXMapPane

public SelectableXMapPane(MapContext context)
Erzeugt ein neues MapPane.

Parameters:
layout - Layout-Manager fuer die GUI-Komponente (z.B. BorderLayout)
isDoubleBuffered - siehe Konstruktor der Oberklasse
renderer - Renderer fuer die graphische Darestellung (z.B. StreamingRenderer)
localContext - Verwaltung der einzelnen Layer (z.B. DefaultMapContext ).

SelectableXMapPane

public SelectableXMapPane()
Erzeugt ein neues MapPane.

Parameters:
layout - Layout-Manager fuer die GUI-Komponente (z.B. BorderLayout)
isDoubleBuffered - siehe Konstruktor der Oberklasse
renderer - Renderer fuer die graphische Darestellung (z.B. StreamingRenderer)
localContext - Verwaltung der einzelnen Layer (z.B. DefaultMapContext ).
Method Detail

getScale

public double getScale()
Liefert die Anzahl der Einheiten, die ein Bildschirm-Pixel darstellt. Die Einheit ist die Grundeinheit des CRS


getTopLayer

public MapLayer getTopLayer()
Liefert oberste Layer (sichtbar oder unsichtbar).


getTopVisibleLayer

public MapLayer getTopVisibleLayer()
Liefert oberste sichtbare Layer.


getTopVisibleGridCoverageLayer

public MapLayer getTopVisibleGridCoverageLayer()
Liefert oberste sichtbare Raster-Layer.


getTopVisibleNonGridCoverageLayer

public MapLayer getTopVisibleNonGridCoverageLayer()
Liefert oberste sichtbare Nicht-Raster-Layer.


getBottomLayer

public MapLayer getBottomLayer()
Liefert unterste Layer (sichtbar oder unsichtbar).


findGridCoverageValuesAndFireEvents

public boolean findGridCoverageValuesAndFireEvents(Point2D point,
                                                   int mode)
Ermittelt die Raster-Werte, die an einem Punkt liegen und erzeugt entsprechende GridCoverageValueSelectedEvents. Beim Modus SELECT_TOP wird nur das oberste sichtbare Layer durchsucht. Beim Modus SELECT_ALL werden alle sichtbaren Layer durchsucht.

SK: 28.09.2007 Da ein Rasterlayer auch mehrere Baender haben kann, ist es sinnvoll, nicht Hashtable MapLayer,Double sondern Hashtable MapLayer,Double[] zurueckzugeben.

Parameters:
point - Geo-Referenz
mode - Suchmodus
Returns:
eine leere Hashtable falls der Punkt null ist

setMapArea

public boolean setMapArea(ReferencedEnvelope newMapArea)
Setzt die sichtbare Karte. Danach wird die Transformation zwischen Fenster-Koordinaten und Karten-Koordinaten neu berechnet.
Loest ein aus XMapPane.setMapArea(Envelope) return false, falls durch die neue MapArea ein nicht gueltiger Massstab entstehen wuerde UND die bisherige maparea != null ist

Overrides:
setMapArea in class XMapPane
Parameters:
newMapArea - neuer Kartenausschnitt im CRS des MapContext
Returns:
true if the mapArea has been changed and a repaint has been triggered.
See Also:
XMapPane.resetTransforms(), XMapPane.getScreenToWorld()

zoomTo

public void zoomTo(SimpleFeature feature)
Sets the mapArea to smartly present the given features. Note: The method does not call Component.repaint() on the SelectableXMapPane.

Overrides:
zoomTo in class XMapPane
Parameters:
feature - if null or size==0, the function doesn nothing.

featureLayerIntersectsEnvelope

public boolean featureLayerIntersectsEnvelope(MapLayer layer,
                                              Envelope env)
Testet (anhand der Features), ob das Objekt eines Layers eine Bounding-Box schneidet.

Parameters:
layer - ein Layer
env - Bounding-Box in CRS des MapPane

findFeatures

protected Hashtable<MapLayer,> findFeatures(GeomFilterGenerator filterGenerator,
                                                 int mode,
                                                 Envelope env)
Ermittelt alle Features, die einen Filter erfuellen. Beim Modus SELECT_TOP wird nur das oberste sichtbare Layer durchsucht. Beim Modus SELECT_ALL werden alle sichtbaren Layer durchsucht. 17.4.08, Stefan

Parameters:
iterator - Filter
mode - Suchmodus
Returns:
eine leere Hashtable falls der Filter null ist

findGridCoverageValues

protected Hashtable<MapLayer,double[]> findGridCoverageValues(Point2D point,
                                                              int mode)
Ermittelt alle Raster-Werte, die an einer bestimmten Geo-Position liegen. Beim Modus SELECT_TOP oder SELECT_ONE_FROM_TOP wird nur das oberste sichtbare Layer durchsucht. Beim Modus SELECT_ALL werden alle sichtbaren Layer durchsucht.

SK: 28.09.2007 Da ein Rasterlayer auch mehrere Baender haben kann, ist es sinnvoll, nicht Hashtable MapLayer,Double sondern Hashtable MapLayer,Double[] zurueckzugeben.

Parameters:
point - Geo-Referenz
mode - Suchmodus
Returns:
eine leere Hashtable falls keine Werte ermittelt werden konnten

fireMapPaneEvent

public void fireMapPaneEvent(MapPaneEvent e)
Propagiert ein Ereignis an alle angeschlossenen Listener.

Parameters:
e - Ereignis

performSelectionEvent

public void performSelectionEvent(int ox,
                                  int oy,
                                  int px,
                                  int py,
                                  int selectionMode)
Verarbeitet die Selektion eines Karten-Ausschnitts. Erzeugt immer ein GeneralSelectionEvent fuer den ausgewaehlten Bereich. Wurden Features oder Raster selektiert, werden zudem FeatureSelectedEvents (bzw. GridCoverageSelectedEvents GridCoverageSelectedEvents) ausgeloest.

Parameters:
ox - X-Koordinate der VON-Position
oy - Y-Koordinate der VON-Position
px - X-Koordinate der BIS-Position
py - Y-Koordinate der BIS-Position
selectionMode - on of SELECT_TOP, SELECT_ONE_FROM_TOP, SELECT_ALL

findFeaturesAndFireEvents

public boolean findFeaturesAndFireEvents(GeomFilterGenerator filterGenerator,
                                         int selectionMode,
                                         Envelope env)
Ermittelt alle Features, die in einem Bereich liegen und erzeugt entsprechende FeatureSelectedEvents. Beim Modus SELECT_TOP wird nur das oberste sichtbare Layer durchsucht. Beim Modus SELECT_ALL werden alle sichtbaren Layer durchsucht.

Parameters:
filterGenerator - adapts a filter to a concrete FeatureSource
selectionMode - Suchmodus
env - Bereich der durchsucht wird (fuer das Filtern irrelevant; wird nur fuer Events benoetigt!)

findGridCoverageSubsets

protected Hashtable<MapLayer,GridCoverage2D> findGridCoverageSubsets(Envelope env,
                                                                     int selectionMode)
Ermittelt alle Teil-Raster, die in einem Bereich liegen. BefindFeaturesAndFireEventsim Modus SELECT_TOP wird nur das oberste sichtbare Layer durchsucht. Beim Modus SELECT_ALL werden alle sichtbaren Layer durchsucht.

Parameters:
env - Bounding-Box
selectionMode - Suchmodus
Returns:
eine leere Hashtable falls die Bounding-Box null ist

findGridCoverageSubsetsAndFireEvents

public boolean findGridCoverageSubsetsAndFireEvents(Envelope env,
                                                    int mode)
Ermittelt alle Teil-Raster, die in einem Bereich liegen und erzeugt entsprechende GridCoverageSelectedEvents. Beim Modus SELECT_TOP wird nur das oberste sichtbare Layer durchsucht. Beim Modus SELECT_ALL werden alle sichtbaren Layer durchsucht.

Parameters:
env - Bounding-Box
mode - Suchmodus
Returns:
eine leere Hashtable falls die Bounding-Box null ist

findVisibleFeatures

public Hashtable<MapLayer,> findVisibleFeatures(GeomFilterGenerator filterGenerator,
                                                     int selectionMode,
                                                     Envelope env)
Ermittelt alle sichtbaren Features, die einen Filter erfuellen. Beim Modus SELECT_TOP wird nur das oberste sichtbare Layer durchsucht. Beim Modus SELECT_ALL werden alle sichtbaren Layer durchsucht.
In mode SELECT_ONE_FROM_TOP, the method will iterator over all non-raster MapLayers and the first layer returning

Parameters:
filterGenerator - adapts the filter to a concrete FeatureSource
selectionMode - Suchmodus
Returns:
eine leere Hashtable falls der Filter null ist
See Also:
#findFeatures(GeometryFilterImpl, int, Envelope)

layerIntersectsEnvelope

public boolean layerIntersectsEnvelope(MapLayer layer,
                                       Envelope env)
Testet (anhand der Bounding-Box), ob das Objekt eines Layers eine andere Bounding-Box schneidet. Die Bounding-Box des Layer-Objekts wird zunaechst in das CRS des MapPanes umgerechnets.
If the layer's bbox is null, returns false. *

Parameters:
layer - ein Layer
env - Bounding-Box in CRS des MapPane TODO movve to some utility class

layerIntersectsCoord

public boolean layerIntersectsCoord(MapLayer layer,
                                    Coordinate coord)
Testet (anhand der Bounding-Box), ob das Objekt eines Layers eine Coordinate schneidet. Die Bounding-Box des Layer-Objekts wird zunaechst in das CRS des MapPanes umgerechnets.
If the layer's bbox is null, returns false.

Parameters:
layer - ein Layer
coord - Coordinate in CRS des MapPane TODO movve to some utility class

isGridCoverageLayer

public static boolean isGridCoverageLayer(MapLayer layer)
Prueft, ob es sich bei einem Layer um ein Raster-Layer handelt. VOn SK an eine GT Methode abgegeben.

Parameters:
layer - zu ueberpruefendes Layer