org.ascape.gis.view
Class MapView

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 org.ascape.view.vis.PanelView
                      extended by org.ascape.view.vis.BufferView
                          extended by org.ascape.view.vis.AgentView
                              extended by org.ascape.gis.view.MapView
All Implemented Interfaces:
com.bbn.openmap.event.LayerStatusListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Externalizable, java.io.Serializable, java.lang.Cloneable, java.util.EventListener, java.util.Observer, javax.accessibility.Accessible, ScapeListener, HasName, ComponentView

public class MapView
extends AgentView
implements java.io.Serializable, com.bbn.openmap.event.LayerStatusListener

An overhead view of the map

Author:
Miles Parker, Josh Miller, and others
See Also:
Serialized Form

Nested Class Summary
 class MapView.ViewMapBean
          ViewMapBean Keeps track of the OpenMap parameters
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  Agent customizeAgent
          The agent being customized
 
Fields inherited from class org.ascape.view.vis.AgentView
agentColorFeature, agentCustomizer, clearBackgroundAutomatically, drawSelection, updateAllRequested
 
Fields inherited from class org.ascape.view.vis.BufferView
bufferedGraphics, bufferedImage
 
Fields inherited from class org.ascape.view.vis.PanelView
delegate, iterationsPerRedraw, name, scape
 
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
MapView()
          Constructs an instance of MapView.
 
Method Summary
 void addGraphic(com.bbn.openmap.omGraphics.OMGraphic graphic)
           
 void addImage(com.bbn.openmap.omGraphics.OMGraphic graphic)
           
 void addNotify()
          Override addNotify to build buffer.
 void clearGraphics()
           
 boolean containsGraphic(com.bbn.openmap.omGraphics.OMGraphic graphic)
           
 java.util.Vector get(double nwLat, double nwLon, double seLat, double seLon, java.util.Vector graphicList)
          Returns a list of graphics that are within a specified region
 com.bbn.openmap.MapBean getBean()
          Gets the bean for the MapView object.
 Agent getCustomizeAgent()
          Gets the customizeAgent for the MapView object.
 MapLocationHandler getLocationHandler()
          Gets the locationHandler for the MapView object.
 com.bbn.openmap.MapBean getMapBean()
           
 java.awt.Dimension getPreferredSize()
          Returns the preferred size of this view, which is the size of the lattice times this views cellSize.
 ColorFeature getPrimaryAgentColorFeature()
          Returns the color feature that will be used for determining agent color.
 boolean inside(com.bbn.openmap.layer.location.Location l, double nwLat, double nwLon, double seLat, double seLon)
          Returns true if the location is inside the specified region
 boolean isShowMapBorders()
           
 void removeGraphic(com.bbn.openmap.omGraphics.OMGraphic graphic)
           
 void scapeNotification(ScapeEvent scapeEvent)
          Notifies this view that its scape has been updated.
 void setAgentCustomizer(AgentCustomizer agentCustomizer)
          Sets the agentCustomizer.
 void setPrimaryAgentColorFeature(ColorFeature agentColorFeature)
          Set the color feature that will be used for determining agent color.
 void setShowMapBorders(boolean showMapBorders)
           
 void updateLayerStatus(com.bbn.openmap.event.LayerStatusEvent evt)
          Update the layer status
 void updateScapeGraphics()
          On update, set the awaitingMapBeanWorking flag to true, and if he mapBean's location layer is not null, then call doPreparer().
 
Methods inherited from class org.ascape.view.vis.AgentView
addDrawFeature, build, createAgentCustomizer, createAgentCustomizerPanel, displayAgentCustomizer, displayCustomizer, drawSelectedAgent, drawSelectedAgent, getAgentAtPixel, getAgentColorFeature, getAgentCustomizer, getDrawFeatures, getDrawFeaturesObservable, getDrawSelection, isClearBackground, paintComponent, readExternal, removeAgentCustomizer, removeCustomizer, removeDrawFeature, requestUpdateAll, scapeAdded, scapeStarted, setAgentColorFeature, setClearBackground, setCustomizeAgent, update, writeExternal
 
Methods inherited from class org.ascape.view.vis.BufferView
buildGraphicsBuffer, finalize, getBufferedImage, imageUpdate, setBounds, setBufferedImage
 
Methods inherited from class org.ascape.view.vis.PanelView
clone, environmentQuiting, forceScapeNotify, getDelegate, getIcon, getIterationsPerRedraw, getName, getPreferredSizeWithin, getScape, getViewFrame, iconUpdated, isGraphic, isLifeOfScape, notifyScapeUpdated, onChangeIterationsPerRedraw, scapeClosing, scapeDeserialized, scapeInitialized, scapeIterated, scapeRemoved, scapeSetup, scapeStopped, setDelegate, setIterationsPerRedraw, setMovieRecorder, setName, setViewFrame, toString
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, print, 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, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, 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, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setSize, setSize, show, show, size, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

customizeAgent

protected Agent customizeAgent
The agent being customized

Constructor Detail

MapView

public MapView()
Constructs an instance of MapView.

Method Detail

addNotify

public void addNotify()
Override addNotify to build buffer.

Overrides:
addNotify in class BufferView

inside

public boolean inside(com.bbn.openmap.layer.location.Location l,
                      double nwLat,
                      double nwLon,
                      double seLat,
                      double seLon)
Returns true if the location is inside the specified region

Parameters:
l - the Location
nwLat - nw lat corner
nwLon - nw lon corner
seLat - se lat corner
seLon - se lon corner
Returns:
True if the Location is inside the specified region

updateScapeGraphics

public void updateScapeGraphics()
On update, set the awaitingMapBeanWorking flag to true, and if he mapBean's location layer is not null, then call doPreparer().

Specified by:
updateScapeGraphics in interface ComponentView
Overrides:
updateScapeGraphics in class AgentView

scapeNotification

public void scapeNotification(ScapeEvent scapeEvent)
Notifies this view that its scape has been updated. View sets awaiting update state to true, and requests a repaint. Subclasses should update their component states at this point.

Specified by:
scapeNotification in interface ScapeListener
Overrides:
scapeNotification in class PanelView
Parameters:
scapeEvent - a scape event update, usually unspecified

updateLayerStatus

public void updateLayerStatus(com.bbn.openmap.event.LayerStatusEvent evt)
Update the layer status

Specified by:
updateLayerStatus in interface com.bbn.openmap.event.LayerStatusListener
Parameters:
evt - a LayerStatusEvent

getPreferredSize

public java.awt.Dimension getPreferredSize()
Returns the preferred size of this view, which is the size of the lattice times this views cellSize.

Overrides:
getPreferredSize in class javax.swing.JComponent
Returns:
the preferredSize

addGraphic

public void addGraphic(com.bbn.openmap.omGraphics.OMGraphic graphic)

addImage

public void addImage(com.bbn.openmap.omGraphics.OMGraphic graphic)

containsGraphic

public boolean containsGraphic(com.bbn.openmap.omGraphics.OMGraphic graphic)

removeGraphic

public void removeGraphic(com.bbn.openmap.omGraphics.OMGraphic graphic)

clearGraphics

public void clearGraphics()

get

public java.util.Vector get(double nwLat,
                            double nwLon,
                            double seLat,
                            double seLon,
                            java.util.Vector graphicList)
Returns a list of graphics that are within a specified region

Parameters:
nwLat - nw lat corner
nwLon - nw lon corner
seLat - se lat corner
seLon - se lon corner
graphicList - the graphicList
Returns:
the graphicList

getBean

public com.bbn.openmap.MapBean getBean()
Gets the bean for the MapView object.

Returns:
the bean

getLocationHandler

public MapLocationHandler getLocationHandler()
Gets the locationHandler for the MapView object.

Returns:
the locationHandler

getCustomizeAgent

public Agent getCustomizeAgent()
Gets the customizeAgent for the MapView object.

Returns:
the customizeAgent

setAgentCustomizer

public void setAgentCustomizer(AgentCustomizer agentCustomizer)
Sets the agentCustomizer.

Overrides:
setAgentCustomizer in class AgentView
Parameters:
agentCustomizer - the agentCustomizer

getPrimaryAgentColorFeature

public ColorFeature getPrimaryAgentColorFeature()
Returns the color feature that will be used for determining agent color. The default color feature is simply the getColor() method of the cell.

Returns:
The primaryAgentColorFeature value

setPrimaryAgentColorFeature

public void setPrimaryAgentColorFeature(ColorFeature agentColorFeature)
Set the color feature that will be used for determining agent color. The default color feature is simply the getColor() method of the cell.

Parameters:
agentColorFeature - the color feature, whose object is assumed to be a cell populating this lattice

getMapBean

public com.bbn.openmap.MapBean getMapBean()

isShowMapBorders

public boolean isShowMapBorders()

setShowMapBorders

public void setShowMapBorders(boolean showMapBorders)


Copyright © 1998-2008 The Brookings Institution, NuTech Solutions, Metascape, LLC All Rights Reserved.