org.deegree.graphics
Interface MapView

All Known Implementing Classes:
MapView_Impl

public interface MapView

This interface describes the data modell of the map it self. It is build from themes containing DisplayElements to be rendered. Themes can be added and removed. Existing themes can be re-arragned by changing their order.

------------------------------------------------------------------------

Version:
$Revision: 1.12 $ $Date: 2004/03/11 08:25:33 $
Author:
Andreas Poth

Method Summary
 void activateTheme(Theme theme)
          activates a theme.
 void addEventController(MapEventController obj)
          adds an eventcontroller to the MapView that's reponsible for handling events that targets the map.
 void addHighlighter(Highlighter highlighter)
          A Highlighter is a class that is responsible for managing the highlight capabilities for one or more Themes.
 void addOptimizer(Optimizer optimizer)
          Adds an Optimizer.
 void addSelector(Selector obj)
          A selector is a class that offers methods for selecting and deselecting single DisplayElements or groups of DisplayElements.
 void addTheme(Theme theme)
          adds a theme to the MapView
 void clear()
          removes all themes from the MapView.
 void enableTheme(Theme theme, boolean enable)
          enables or disables a theme that is part of the MapView.
 Theme[] getAllThemes()
          returns the Themes in correct order.
 GM_Envelope getBoundingBox()
          returns the BoundingBox (Envelope) of the MapView.
 CS_CoordinateSystem getCoordinatesSystem()
          returns the coordinate reference system of the MapView
 java.lang.String getName()
          returns the name of the
 Optimizer[] getOptimizers()
          Returns the Optimizers.
 GeoTransform getProjection()
          Returns the GeoTransform that is associated to this MapView.
 double getScale()
          Returns the current scale of the MapView.
 double getScale(java.awt.Graphics g)
          Returns the current scale of the MapView.
 int getSize()
          returns the amount of themes within the MapView.
 Theme getTheme(int index)
          returns the Theme that matches the submitted index
 Theme getTheme(java.lang.String name)
          returns the Theme that matches the submitted name
 boolean isThemeActivated(Theme theme)
          returns true if the passed theme is the one that is set to be activated
 boolean isThemeEnabled(Theme theme)
          returns true if the passed theme is set to be enabled
 void moveDown(Theme theme)
          move a theme down for one index position (index = oldindex - 1)
 void moveUp(Theme theme)
          move a theme up for one index position (index = oldindex + 1)
 void paint(java.awt.Graphics g)
          renders the map to the submitted graphic context
 void paintHighlighted(java.awt.Graphics g)
          renders the features marked as highlighted of all themes contained within the MapView
 void paintSelected(java.awt.Graphics g)
          renders the features marked as selected of all themes contained within the MapView
 void removeEventController(MapEventController obj)
           
 void removeHighlighter(Highlighter highlighter)
           
 void removeSelector(Selector obj)
           
 void removeTheme(int index)
          removes the theme that matches the submitted index from the MapView
 void removeTheme(java.lang.String name)
          removes the theme that matches the submitted name from the MapView
 void removeTheme(Theme theme)
          removes a theme from the MapView
 void setBoundingBox(GM_Envelope boundingbox)
           
 void setCoordinateSystem(CS_CoordinateSystem crs)
          sets the coordinate reference system of the map;
 void setOptimizers(Optimizer[] optimizers)
          Sets the Optimizers.
 void swapThemes(Theme first, Theme second)
          swaps the positions of the submitted themes
 

Method Detail

getName

public java.lang.String getName()
returns the name of the


getTheme

public Theme getTheme(java.lang.String name)
returns the Theme that matches the submitted name


getTheme

public Theme getTheme(int index)
returns the Theme that matches the submitted index


getAllThemes

public Theme[] getAllThemes()
returns the Themes in correct order. The first Theme (index == 0) shall be rendered at first (bottom most).


getScale

public double getScale()
Returns the current scale of the MapView.


getScale

public double getScale(java.awt.Graphics g)
Returns the current scale of the MapView.


addTheme

public void addTheme(Theme theme)
              throws java.lang.Exception
adds a theme to the MapView

Throws:
java.lang.Exception

removeTheme

public void removeTheme(Theme theme)
removes a theme from the MapView


removeTheme

public void removeTheme(java.lang.String name)
removes the theme that matches the submitted name from the MapView


removeTheme

public void removeTheme(int index)
removes the theme that matches the submitted index from the MapView


clear

public void clear()
removes all themes from the MapView.


swapThemes

public void swapThemes(Theme first,
                       Theme second)
swaps the positions of the submitted themes


moveUp

public void moveUp(Theme theme)
move a theme up for one index position (index = oldindex + 1)


moveDown

public void moveDown(Theme theme)
move a theme down for one index position (index = oldindex - 1)


enableTheme

public void enableTheme(Theme theme,
                        boolean enable)
enables or disables a theme that is part of the MapView. A theme that has been disabled won't be rendered and usually doesn't react to events targeted to the MapView, but still is part of the MapView.


isThemeEnabled

public boolean isThemeEnabled(Theme theme)
returns true if the passed theme is set to be enabled


activateTheme

public void activateTheme(Theme theme)
activates a theme. Usually the activated theme is perferred to react to events (this doesn't mean that other themes are not allowed to react to events).


isThemeActivated

public boolean isThemeActivated(Theme theme)
returns true if the passed theme is the one that is set to be activated


getSize

public int getSize()
returns the amount of themes within the MapView.


addEventController

public void addEventController(MapEventController obj)
adds an eventcontroller to the MapView that's reponsible for handling events that targets the map. E.g.: zooming, panning, selecting a feature etc.


removeEventController

public void removeEventController(MapEventController obj)
See Also:
addEventController(MapEventController)

addSelector

public void addSelector(Selector obj)
A selector is a class that offers methods for selecting and deselecting single DisplayElements or groups of DisplayElements. A selector may offers methods like 'select all DisplayElements within a specified bounding box' or 'select all DisplayElements thats area is larger than 120 kmē' etc.


removeSelector

public void removeSelector(Selector obj)
See Also:
addSelector(Selector)

getBoundingBox

public GM_Envelope getBoundingBox()
returns the BoundingBox (Envelope) of the MapView. This isn't nessecary the BoundingBox of the data that will be rendered. It's the boundingBox of the the visible area of the map measured in its coordinate reference system.


setBoundingBox

public void setBoundingBox(GM_Envelope boundingbox)
See Also:
getBoundingBox()

getCoordinatesSystem

public CS_CoordinateSystem getCoordinatesSystem()
returns the coordinate reference system of the MapView


setCoordinateSystem

public void setCoordinateSystem(CS_CoordinateSystem crs)
                         throws java.lang.Exception
sets the coordinate reference system of the map;

Throws:
java.lang.Exception

paint

public void paint(java.awt.Graphics g)
           throws RenderException
renders the map to the submitted graphic context

Throws:
RenderException

paintSelected

public void paintSelected(java.awt.Graphics g)
                   throws RenderException
renders the features marked as selected of all themes contained within the MapView

Throws:
RenderException

paintHighlighted

public void paintHighlighted(java.awt.Graphics g)
                      throws RenderException
renders the features marked as highlighted of all themes contained within the MapView

Throws:
RenderException

addHighlighter

public void addHighlighter(Highlighter highlighter)
A Highlighter is a class that is responsible for managing the highlight capabilities for one or more Themes.


removeHighlighter

public void removeHighlighter(Highlighter highlighter)
See Also:
addHighlighter(Highlighter)

getProjection

public GeoTransform getProjection()
Returns the GeoTransform that is associated to this MapView.

Returns:
the associated GeoTransform-instance

addOptimizer

public void addOptimizer(Optimizer optimizer)
Adds an Optimizer.

Parameters:
optimizer -

getOptimizers

public Optimizer[] getOptimizers()
Returns the Optimizers.

Returns:

setOptimizers

public void setOptimizers(Optimizer[] optimizers)
Sets the Optimizers.

Parameters:
optimizers -