public class GeographicalMap extends javax.swing.JFrame implements GpsDataListener, PortMgmtListener, ShutdownHandler, PrintableView, FullGeoMapIfc, FilterChangeListener, FirstWindowInitIfc, java.awt.event.ComponentListener, GeoMapGuiIfc, MouseWheelCanZoomMap
Modifier and Type | Class and Description |
---|---|
static class |
GeographicalMap.LayerCreator
This abstract class provides the infrastructure for adding a layer to the map, so that
YAAC plugins can insert other layers at appropriate Z-levels into this map.
|
javax.swing.JFrame.AccessibleJFrame
java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
java.awt.Container.AccessibleAWTContainer
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
GeoMapGuiIfc.GlassMapPane
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
HOME, INCH_EAST, INCH_NORTH, INCH_SOUTH, INCH_WEST, PAN_EAST, PAN_NORTH, PAN_SOUTH, PAN_WEST, ZOOM_IN, ZOOM_IN_NP, ZOOM_OUT, ZOOM_OUT_NP
Constructor and Description |
---|
GeographicalMap(MainGui mainGui)
Create the main window of YAAC, containing the geographic map, the menu bar, and a few other toolbar controls.
|
GeographicalMap(MainGui mainGui,
java.lang.String title,
double lat,
double lon)
Create a secondary map window, containing the geographic map, the menu bar, and a few other toolbar controls.
|
Modifier and Type | Method and Description |
---|---|
static void |
addMapLayer(GeographicalMap.LayerCreator lc)
Allow plugin to insert a new Layer into the GeographicalMap when it is created.
|
void |
addSpecificTrackStripe(java.lang.String identifier)
Add the identifier of a single station or object whose track stripe is to be plotted.
|
void |
clearAllSpecificTrackStripes()
Clear the plotting of all specific station/object track stripes.
|
void |
componentHidden(java.awt.event.ComponentEvent e)
Invoked when the map window has been made invisible.
|
void |
componentMoved(java.awt.event.ComponentEvent e)
Invoked when the map window's position changes.
|
void |
componentResized(java.awt.event.ComponentEvent e)
Invoked when the map window's size changes.
|
void |
componentShown(java.awt.event.ComponentEvent e)
Invoked when the map window has been made visible.
|
void |
copyLocationToClipboard(int mouseX,
int mouseY)
Copy the mouse cursor's position on the map to the system clipboard as
a CSV-formatted latitude,longitude string in fractional degrees North,East.
|
java.awt.image.RenderedImage |
copyMap()
Make a screenshot copy of the current map.
|
void |
displayAttentionAlert(double latitude,
double longitude,
AX25Message.Precedence precedence)
Display an AttentionAlert (flashing arrows) on the map for a particular position.
|
void |
displayAttentionAlert(StationState ss)
Display a locate AttentionAlert (flashing arrows) on the map for a particular station or object.
|
void |
displayLocateAmenityDialog()
Display the Locate Amenity dialog, and handle user input to it.
|
void |
displayNWSActiveZonesDialog()
Display the Severe Weather dialog.
|
void |
dispose()
Releases all of the native screen resources used by this
Window , its subcomponents, and all of its owned
children. |
void |
editTopoColors()
Invoke an editor for adjusting the colors and elevation thresholds used to render topographic map layers.
|
void |
filterSettingsChanged(Filter changedFilter,
boolean changedByUser)
Called when the specified Filter's matching criteria have been changed.
|
void |
flushFileCache()
Flush all caches of File objects referencing map data.
|
double |
getBottomLatitude()
Get the latitude of the bottom edge of the map.
|
java.awt.geom.Point2D |
getCenter()
Get the latitude/longitude coordinates of the center of the rendered map.
|
double |
getCenterLatitude()
Get the latitude of the current center of the map.
|
double |
getCenterLongitude()
Get the longitude of the current center of the map.
|
long |
getLastElapsedPaintTime()
Return the amount of time (in milliseconds) for the last station render.
|
int |
getLastNumDrawnObjects()
Return the number of Objects (non-transmitters) rendered in the last station render.
|
int |
getLastNumDrawnStations()
Return the number of stations (transmitters) rendered in the last station render.
|
double[] |
getLatLonOfMouseClick(int mouseX,
int mouseY)
Convert pixel coordinates on the map window into a latitude and longitude value
pair.
|
double |
getLeftLongitude()
Get the longitude of the left edge of the map.
|
com.bbn.openmap.MapBean |
getMapBean()
Get the JavaBean that actually contains the map canvas.
|
com.bbn.openmap.gui.BasicMapPanel |
getMapPanel()
Get the panel containing the rendered map.
|
java.lang.Object |
getMatchingLayer(java.lang.Class<?> layerClazz)
Get the map Layer using the specified Class to implement it.
|
long |
getMaxAgeDRObject()
Get the maximum time that dead reckoning will be projected for an object (non-self-transmitter).
|
long |
getMaxAgeDRSpecialObject() |
long |
getMaxAgeDRStation()
Get the maximum time that dead reckoning will be projected for a station (self-transmitter).
|
long |
getMaxTrackDuration()
Get the maximum duration of a track stripe in milliseconds.
|
com.bbn.openmap.MouseDelegator |
getMouseDelegator()
Get the OpenMap MouseDelegator for this map widget.
|
OSMLayer |
getOSMLayer()
Get the street map rendering layer of this map.
|
RasterMapOverlay |
getRasterMapOverlay()
Get the raster map rendering layer of this map.
|
double |
getRightLongitude()
Get the longitude of the right edge of the map.
|
float |
getScale()
Get the current scale factor of the map.
|
StationRenderer |
getStationRenderer()
Get the station and object rendering layer of this map.
|
double |
getTopLatitude()
Get the latitude of the top edge of the map.
|
TopoLayer |
getTopoLayer()
Get the elevation topography rendering layer of this map.
|
java.awt.Window |
getWindow()
Get the java.awt.Window containing this map widget.
|
float |
getZoomScale()
Get the current scale of the map in current
DistanceUnit s. |
void |
gpsDataUpdated(GPSDistributor distributor,
GpsFix currentFix,
boolean isLocal,
java.lang.String source)
Do not call.
|
void |
initMenuBar()
Phase 2 of initializing the GUI (stuff that needs the GUI property of the main YAAC
object to be already initialized).
|
boolean |
isAutoLoadMapTiles()
Report whether map tiles will be auto-downloaded (if the author's website can be reached) for any tiles
that have not already been downloaded.
|
boolean |
isDontRotateIcons()
Report whether mobile station icons should be rotated to indicate the direction
of station travel (bearing).
|
boolean |
isDrawAge()
Report whether the time interval since last receipt of a message from or
about a station or object is plotted below the station/object's name.
|
boolean |
isDrawAliasInsteadOfCallsign()
Report whether alias should be drawn instead of callsign should be drawn for each station/object
if an alias is defined for the station/object..
|
boolean |
isDrawAllTrackStripes()
Indicate whether all moving stations should have track stripes plotted.
|
boolean |
isDrawAlohaCircle()
Report whether aloha circles (optimal maximum RF transmission range for the
local station before causing excessive collisions) are plotted on the map.
|
boolean |
isDrawAmbiguityCircle()
Report whether a translucent ambiguity circle is drawn behind each
station or object to indicate the area over which it could be located, given
the precision of the position information reported.
|
boolean |
isDrawCallsign()
Report whether callsign label should be drawn for each station/object.
|
boolean |
isDrawDeadObjects()
Report whether Objects that have been "killed" are plotted on the map.
|
boolean |
isDrawDeadReckoning()
Report whether deadreckoning position updates for moving stations and objects are
calculated and the positions offset and deadreckoning vectors plotted when the stations
and objecfts are drawn.
|
boolean |
isDrawDF()
Report whether direction-finding cones are plotted from stations
reporting DFS vector information
|
boolean |
isDrawDigipeatHops()
Report if digipeater hop paths are drawn for stations.
|
boolean |
isDrawDoubleSizedSymbols()
Report if symbols are being drawn double-sized.
|
boolean |
isDrawHeatMap()
Report if heat maps are drawn for stations.
|
boolean |
isDrawItemStatus()
Report whether a color-coded "halo" is drawn around each station or object icon indicating
its status as one of the APRSdos categories: fixed, mobile, deadreckoned, old,
emergency-reporting, locally-controlled Object, or other station's Object.
|
boolean |
isDrawMicEStatusCircles()
Report whether color-coded circles indicating Mic-E status codes
are be drawn around stations reporting those codes.
|
boolean |
isDrawNWSMultiLine()
Report whether encoded polylines (generally used for National Weather Service
severe weather regions) are plotted on the map.
|
boolean |
isDrawRangeCircles()
Report whether radio range circles are being drawn for stations reporting
or implying transmission range limits.
|
boolean |
isDrawSelf()
Report whether the local station is plotted on the map.
|
boolean |
isDrawSelfLikeOther()
Report whether local station is drawn like any other station (using its
APRS symbol icon) or as crosshairs or a pointer making it obvious where the
station is on the map.
|
boolean |
isDrawSpeed()
Report whether the motion speed and bearing of
a station or object should be plotted below the station/object's name.
|
boolean |
isDrawWeatherAsWeather()
Report whether weather stations are drawn as old-style weather map
circles with a flagged barb indicating wind direction and speed.
|
boolean |
isGraticuleVisible()
Indicate whether the graticule (latitude/longitude grid lines) are displayed on the map.
|
boolean |
isKeepSpecificallyTrackedStationsOnScreen()
Report whether the map should auto-pan to keep specifically tracked mobile stations on the map.
|
boolean |
isMapAutoCentered()
Report whether the map should automatically pan to keep the local station
centered on the map.
|
boolean |
isMapCenteredOnAlerts()
Specify whether this map should be re-centered on AttentionAlerts of EMERGENCY or ROUTINE
precedence.
|
boolean |
isMemoryGCPanelVisible()
Report the current visibility of the MemoryGCPanel.
|
boolean |
isMouseWheelZooming()
Test whether this map or Layer will zoom the map if the mouse wheel is adjusted.
|
boolean |
isNightMode()
Report if the displays are in night mode.
|
boolean |
isShowLabelsInEnglish()
Report whether map labels should be displayed in English if the default name is in some other locale
and OpenStreetMap provides an English translation.
|
boolean |
isShowSevereWeatherZones()
Indicate whether severe weather zone boundaries should be drawn on the map.
|
boolean |
isShowTopoContours()
Report whether the topographic map should be rendered as contour lines.
|
boolean |
isShowTopoRegions()
Report whether the topographic map overlay should be displayed as filled regions.
|
boolean |
isShowUnlabeledWays()
Report if unlabeled and untyped map features should be displayed.
|
boolean |
isSpecificallyTracked(java.lang.String identifier)
Test if a given identifier is on the tracking list.
|
boolean |
isSpecificallyTracking()
Test if any identifiers are on the tracking list.
|
static boolean |
isUseGroundObstructions()
Report whether ground obstructions found in OpenStreetMap data should be plotted
on
LineOfSightPane s. |
void |
loadDrawing()
Load drawing overlay.
|
void |
loadGpsLog()
Load a GPS file into a map overlay.
|
void |
locateASpecificStation(java.util.ArrayList<StationState> matchList,
java.lang.String callsign)
Locate a specific station on the map window.
|
void |
moveObject(StationState ss,
ObjectReport or,
MoveObjectListener moveObjectListener)
Graphically drag a station or object across the map to a new location, updating
the object's position appropriately and converting a station to an object if needed.
|
void |
panZoomToWeatherZone(int zoneRowIndex)
Pan and zoom the map to show a specific severe weather zone.
|
void |
portCreated(PortConnector connector)
Do not call.
|
void |
portDeleted(PortConnector connector)
Do not call.
|
void |
printThisView()
Print this PrintableView to the Java printing subsystem.
|
void |
refresh()
Force the map to immediately regenerate itself based on current state data.
|
void |
regenerateStations()
Force the station renderer layer to regenerate its overlay immediately.
|
void |
regenerateTopo()
Force the topographic layer to regenerate its overlay immediately.
|
void |
registerGlassPaneOverMap(GeoMapGuiIfc.GlassMapPane glassPane)
Put a glass pane over a MapBean.
|
void |
registerMapKeystrokeActions(int modifiers,
javax.swing.InputMap inputMap,
javax.swing.ActionMap actionMap)
Register the keystrokes that can be used to move this object's map around.
|
boolean |
removeSpecificTrackStripe(java.lang.String identifier)
Remove the identifier of a single station or object whose track stripe is no longer to be plotted.
|
void |
satDataUpdated(GPSDistributor distributor,
SatelliteCatalog satCatalog,
boolean isLocal,
java.lang.String source)
Do not call.
|
void |
setAutoLoadMapTiles(boolean autoLoadMapTiles)
Specify whether missing OpenStreetMap imported tiles should be automatically downloaded from the author's
website.
|
void |
setCenter(double lat,
double lon)
Set the current center position of the map.
|
void |
setCenter(com.bbn.openmap.proj.coords.LatLonPoint p)
Set the current center position of the map.
|
void |
setDontRotateIcons(boolean dontRotateIcons)
Specify whether mobile station icons should be rotated to indicate the direction
of station travel (bearing).
|
void |
setDrawAge(boolean drawAge)
Specify whether the time interval since last receipt of a message from or
about a station or object should be plotted below the station/object's name.
|
void |
setDrawAliasInsteadOfCallsign(boolean drawAliasInsteadOfCallsign)
Specify whether alias should be drawn instead of callsign should be drawn for each station/object
if an alias is defined for the station/object..
|
void |
setDrawAllTrackStripes(boolean drawAllTrackStripes)
Specify whether all moving stations should have track stripes plotted.
|
void |
setDrawAlohaCircle(boolean drawAlohaCircle)
Specify whether aloha circles (optimal maximum RF transmission range for the
local station before causing excessive collisions) should be plotted on the map.
|
void |
setDrawAmbiguityCircle(boolean drawAmbiguityCircle)
Specify whether a translucent ambiguity circle should be drawn behind each
station or object to indicate the area over which it could be located, given
the precision of the position information reported.
|
void |
setDrawCallsign(boolean drawCallsign)
Specify whether callsign labels should be drawn for each station/object.
|
void |
setDrawDeadObjects(boolean drawDeadObjects)
Specify whether Objects that have been "killed" should still be plotted on
the map.
|
void |
setDrawDeadReckoning(boolean drawDeadReckoning)
Specify whether deadreckoning position updates for moving stations and objects should be
calculated and the positions offset and deadreckoning vectors plotted when the stations
and objecfts are drawn.
|
void |
setDrawDF(boolean drawDF)
Specify whether direction-finding cones should be plotted from stations
reporting DFS vector information
|
void |
setDrawDigipeatHops(boolean drawDigipeatHops)
Specify whether digipeater hop paths should be drawn for stations.
|
void |
setDrawDoubleSizedSymbols(boolean drawDoubleSizedSymbols)
Specify whether symbols should be drawn double-sized (32x32 pixels) instead of single-sized (16x16).
|
void |
setDrawHeatMap(boolean drawHeatMap)
Specify whether heat maps should be drawn for stations.
|
void |
setDrawItemStatus(boolean drawItemStatus)
Specify whether a color-coded "halo" should be drawn around each station or object icon indicating
its status as one of the APRSdos categories: fixed, mobile, deadreckoned, old,
emergency-reporting, locally-controlled Object, or other station's Object.
|
void |
setDrawMicEStatusCircles(boolean drawMicEStatusCircles)
Specify whether color-coded circles indicating Mic-E status codes
should be drawn around stations reporting those codes.
|
void |
setDrawNWSMultiLine(boolean drawNWSMultiLine)
Specify whether encoded polylines (generally used for National Weather Service
severe weather regions) should be plotted on the map.
|
void |
setDrawRangeCircles(boolean drawRangeCircles)
Specify whether range circles should be drawn around stations reporting
or implying transmission range limits.
|
void |
setDrawSelf(boolean drawSelf)
Specify whether the local station should be plotted on the map.
|
void |
setDrawSelfLikeOther(boolean drawSelfLikeOther)
Specify whether local station should be drawn like any other station (using its
APRS symbol icon) or as crosshairs or a pointer making it obvious where the
station is on the map.
|
void |
setDrawSpeed(boolean drawSpeed)
Specify whether the motion speed and bearing of
a station or object should be plotted below the station/object's name.
|
void |
setDrawToolBarVisibility(boolean isVisible)
Specify whether the toolbar for the drawing tools should be visible or not.
|
void |
setDrawWeatherAsWeather(boolean drawWeatherAsWeather)
Specify whether weather stations should be drawn as old-style weather map
circles with a flagged barb indicating wind direction and speed.
|
void |
setGraticuleVisible(boolean visible)
Specify whether the graticule (latitude/longitude grid lines) are displayed on the map.
|
void |
setKeepSpecificallyTrackedStationsOnScreen(boolean keepSpecificallyTrackedStationsOnScreen)
Specify whether the map should auto-pan to keep specifically tracked mobile stations on the map.
|
void |
setMainFrameTitle()
Specify the title displayed in the main window's title bar.
|
void |
setMapAutoCentering(boolean isAutoCentered)
Specify whether the map should automatically pan to keep the local station
centered on the map.
|
void |
setMaxAgeDRObject(long maxAgeDRObject)
Set the maximum time that dead reckoning will be projected for an object (non-self-transmitter).
|
void |
setMaxAgeDRSpecialObject(long maxAgeDRSpecialObject) |
void |
setMaxAgeDRStation(long maxAgeDRStation)
Set the maximum time that dead reckoning will be projected for a station (self-transmitter).
|
void |
setMaxTrackDuration(long maxTrackDuration)
Set the maximum duration of a track stripe in milliseconds.
|
void |
setMemoryGCPanelVisible(boolean visible)
Change the visibility of the memory usage status monitor.
|
void |
setMouseWheelZooming(boolean zoomEnabled)
Specify whether this map or Layer will zoom the map if the mouse wheel is adjusted.
|
void |
setNightMode(boolean isNight)
Specify that the displays should be in night mode (black backgrounds with white text/lines, for not
ruining the night vision of the operator).
|
void |
setScale(float scale)
Change the scale of the map.
|
void |
setShowLabelsInEnglish(boolean showLabelsInEnglish)
Specify whether map labels should be displayed in English if the default name is in some other locale
and OpenStreetMap provides an English translation.
|
void |
setShowSevereWeatherZones(boolean showSevereWeatherZones)
Specify whether severe weather zone boundaries should be drawn on the map.
|
void |
setShowTopoContours(boolean visible)
Specify whether the topographic map overlay should be rendered as contour lines.
|
void |
setShowTopoRegions(boolean visible)
Specify whether the topographic map overlay should be rendered as filled region.
|
void |
setShowUnlabeledWays(boolean showUnlabeledWays)
Specify if unlabeled and untyped map features should be displayed.
|
static void |
setUseGroundObstructions(boolean useGroundObstructions)
Specify whether ground obstructions found in OpenStreetMap data should be plotted
on
LineOfSightPane s. |
void |
showLayerSelectorTool()
Display the dialog for selecting which parts of the OpenStreetMap database should be
rendered on the map.
|
void |
showRasterMapDialog()
Display the dialog for managing raster map images overlays on the map window.
|
void |
shutdown()
Do whatever cleanup this object needs for program shutdown.
|
void |
startLineOfSight()
Enable defining a line of sight between two points on the map; the user presses the mouse at
the starting point, drags to the ending position, and releases.
|
void |
startLineOfSightFromHere(int mouseX,
int mouseY)
Enable defining a line of sight starting at the specified position on the map.
|
void |
startLineOfSightFromMe(int mouseX,
int mouseY)
Show the line of sight between this station's position and the position clicked on the map,
updating this station's end of the line if it moves.
|
void |
startLineOfSightFromMe(StationState targetStation)
Show the line of sight between this station's position and the station or object clicked on the map,
updating both ends of the line if either moves.
|
void |
zoomPanToSelectedFeature(GTNWrapper gtnWrapper)
Zoom and pan the map so the specified map feature nearly fills the map.
|
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, show, toBack, toFront
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTree
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
setVisible, toFront
setVisible
getIconImage, getLocationOnScreen, getSize
public GeographicalMap(MainGui mainGui)
mainGui
- GUI core object to fetch common GUI information frompublic GeographicalMap(MainGui mainGui, java.lang.String title, double lat, double lon)
mainGui
- GUI core object to fetch common GUI information fromtitle
- String title to specify on map window title barlat
- double latitude of map center in fractional degrees Northlon
- double lomgitude of map center in fractional degrees Eastpublic static void addMapLayer(GeographicalMap.LayerCreator lc)
Provider.runInitializersAfter()
method of the plugin defining the new Layer.lc
- LayerCreator object defining the Z order and means of creating and initializing the new LayerProvider
public java.lang.Object getMatchingLayer(java.lang.Class<?> layerClazz)
layerClazz
- Class object for Layer to findpublic static boolean isUseGroundObstructions()
LineOfSightPane
s.public static void setUseGroundObstructions(boolean useGroundObstructions)
LineOfSightPane
s.useGroundObstructions
- boolean true if ground obstructions should be plottedpublic void registerMapKeystrokeActions(int modifiers, javax.swing.InputMap inputMap, javax.swing.ActionMap actionMap)
LineOfSightPane
) that will take over
keyboard focus from the map but still affect the map.registerMapKeystrokeActions
in interface GeoMapGuiIfc
modifiers
- int KeyEvent modifiers (in case we have a conflict with mouse and key strokes)inputMap
- InputMap of component(s) to add hot-keys toactionMap
- ActionMap of component(s) to add hot-keys topublic void setMainFrameTitle()
public void dispose()
Window
, its subcomponents, and all of its owned
children. That is, the resources for these Component
s
will be destroyed, any memory they consume will be returned to the
OS, and they will be marked as undisplayable.dispose
in class java.awt.Window
public void setScale(float scale)
public float getScale()
public float getZoomScale()
DistanceUnit
s.getZoomScale
in interface GeoMapIfc
public void setCenter(double lat, double lon)
setCenter
in interface GeoMapIfc
setCenter
in interface GeoMapGuiIfc
lat
- latitude in degrees Northlon
- longitude in degrees Eastpublic void setCenter(com.bbn.openmap.proj.coords.LatLonPoint p)
public double getCenterLatitude()
getCenterLatitude
in interface GeoMapIfc
public double getCenterLongitude()
getCenterLongitude
in interface GeoMapIfc
public double getTopLatitude()
getTopLatitude
in interface GeoMapIfc
public double getLeftLongitude()
getLeftLongitude
in interface GeoMapIfc
public double getBottomLatitude()
getBottomLatitude
in interface GeoMapIfc
public double getRightLongitude()
getRightLongitude
in interface GeoMapIfc
public void initMenuBar()
initMenuBar
in interface FirstWindowInitIfc
public boolean isMouseWheelZooming()
isMouseWheelZooming
in interface MouseWheelCanZoomMap
public void setMouseWheelZooming(boolean zoomEnabled)
setMouseWheelZooming
in interface MouseWheelCanZoomMap
zoomEnabled
- boolean true if mouse wheel motion zooms the mappublic void locateASpecificStation(java.util.ArrayList<StationState> matchList, java.lang.String callsign)
locateASpecificStation
in interface GeoMapIfc
matchList
- ArrayList of StationStates to locatecallsign
- String callsign or tactical alias of the located stationpublic void displayAttentionAlert(StationState ss)
ss
- StationState of the station or object to highlightpublic void displayAttentionAlert(double latitude, double longitude, AX25Message.Precedence precedence)
displayAttentionAlert
in interface GeoMapIfc
latitude
- double fractional degrees Northlongitude
- double fraction degrees Eastprecedence
- code for color level to use; ROUTINE is used for station locatespublic boolean isNightMode()
isNightMode
in interface GeoMapIfc
isNightMode
in interface GeoMapGuiIfc
public void setNightMode(boolean isNight)
setNightMode
in interface GeoMapIfc
isNight
- boolean true if should be in night modepublic boolean isMapAutoCentered()
isMapAutoCentered
in interface GeoMapIfc
isMapAutoCentered
in interface GeoMapGuiIfc
public void setMapAutoCentering(boolean isAutoCentered)
setMapAutoCentering
in interface GeoMapIfc
setMapAutoCentering
in interface GeoMapGuiIfc
isAutoCentered
- boolean true if map should auto-center, false otherwisepublic void refresh()
public void regenerateTopo()
regenerateTopo
in interface FullGeoMapIfc
public void regenerateStations()
regenerateStations
in interface GeoMapIfc
public com.bbn.openmap.MapBean getMapBean()
getMapBean
in interface GeoMapGuiIfc
public com.bbn.openmap.gui.BasicMapPanel getMapPanel()
public java.awt.geom.Point2D getCenter()
public final OSMLayer getOSMLayer()
getOSMLayer
in interface GeoMapGuiIfc
public final RasterMapOverlay getRasterMapOverlay()
public final StationRenderer getStationRenderer()
public final TopoLayer getTopoLayer()
getTopoLayer
in interface GeoMapGuiIfc
public void gpsDataUpdated(GPSDistributor distributor, GpsFix currentFix, boolean isLocal, java.lang.String source)
gpsDataUpdated
in interface GpsDataListener
distributor
- GPSDistributor containing the current GPS statecurrentFix
- current GpsFixisLocal
- boolean true if this is GPS data for the local station, false if for a remote GPS receiversource
- String name assigned to remote GPS receiver, or null if for the local receiverpublic void satDataUpdated(GPSDistributor distributor, SatelliteCatalog satCatalog, boolean isLocal, java.lang.String source)
satDataUpdated
in interface GpsDataListener
distributor
- instance of the GPSDistributorsatCatalog
- updated SatelliteCatalog instanceisLocal
- boolean true if this is GPS data for the local station, false if for a remote GPS receiversource
- String name assigned to remote GPS receiver, or null if for the local receiverpublic java.awt.image.RenderedImage copyMap()
public void setDrawToolBarVisibility(boolean isVisible)
setDrawToolBarVisibility
in interface FullGeoMapIfc
isVisible
- boolean true if draw toolbar should be shownpublic com.bbn.openmap.MouseDelegator getMouseDelegator()
GeoMapGuiIfc
getMouseDelegator
in interface GeoMapGuiIfc
public void portCreated(PortConnector connector)
portCreated
in interface PortMgmtListener
connector
- PortConnector that was addedpublic void portDeleted(PortConnector connector)
portDeleted
in interface PortMgmtListener
connector
- PortConnector that was removedpublic void shutdown()
shutdown
in interface ShutdownHandler
public void showLayerSelectorTool()
showLayerSelectorTool
in interface FullGeoMapIfc
public void loadDrawing()
loadDrawing
in interface FullGeoMapIfc
public void loadGpsLog()
loadGpsLog
in interface GeoMapIfc
public void moveObject(StationState ss, ObjectReport or, MoveObjectListener moveObjectListener)
moveObject
in interface FullGeoMapIfc
ss
- StationState object describing the station or objector
- ObjectReport to be modified by the movemoveObjectListener
- MoveObjectListener to inform when movement is overpublic void registerGlassPaneOverMap(GeoMapGuiIfc.GlassMapPane glassPane)
registerGlassPaneOverMap
in interface GeoMapGuiIfc
glassPane
- GlassMapPane subclass to overlay the map windowpublic void showRasterMapDialog()
showRasterMapDialog
in interface FullGeoMapIfc
public void printThisView()
printThisView
in interface PrintableView
public void setMemoryGCPanelVisible(boolean visible)
setMemoryGCPanelVisible
in interface GeoMapIfc
visible
- boolean true if memory status monitor should be visiblepublic boolean isMemoryGCPanelVisible()
public void zoomPanToSelectedFeature(GTNWrapper gtnWrapper)
zoomPanToSelectedFeature
in interface GeoMapIfc
gtnWrapper
- GTNWrapper around the GenericTaggedNode
to be seen, or null
to unselect any previous selectionpublic void displayLocateAmenityDialog()
displayLocateAmenityDialog
in interface FullGeoMapIfc
public void displayNWSActiveZonesDialog()
displayNWSActiveZonesDialog
in interface FullGeoMapIfc
public void panZoomToWeatherZone(int zoneRowIndex)
panZoomToWeatherZone
in interface FullGeoMapIfc
zoneRowIndex
- zero-based row index into the table of severe weather zonespublic boolean isDrawAllTrackStripes()
isDrawAllTrackStripes
in interface FullGeoMapIfc
public void setDrawAllTrackStripes(boolean drawAllTrackStripes)
setDrawAllTrackStripes
in interface FullGeoMapIfc
drawAllTrackStripes
- boolean true if all moving stations should have track stripespublic void clearAllSpecificTrackStripes()
clearAllSpecificTrackStripes
in interface FullGeoMapIfc
public void addSpecificTrackStripe(java.lang.String identifier)
addSpecificTrackStripe
in interface FullGeoMapIfc
identifier
- String station or object identifierpublic boolean removeSpecificTrackStripe(java.lang.String identifier)
removeSpecificTrackStripe
in interface FullGeoMapIfc
identifier
- String station or object identifierpublic boolean isSpecificallyTracked(java.lang.String identifier)
isSpecificallyTracked
in interface FullGeoMapIfc
identifier
- String station or object identifierpublic boolean isSpecificallyTracking()
isSpecificallyTracking
in interface FullGeoMapIfc
public void copyLocationToClipboard(int mouseX, int mouseY)
copyLocationToClipboard
in interface FullGeoMapIfc
mouseX
- int pixel X coordinate of mouse clickmouseY
- int pixel Y coordinate of mouse clickpublic double[] getLatLonOfMouseClick(int mouseX, int mouseY)
getLatLonOfMouseClick
in interface FullGeoMapIfc
mouseX
- int zero-based X coordinate within the map widgetmouseY
- int zero-based Y coordinate within the map widgetpublic long getMaxTrackDuration()
getMaxTrackDuration
in interface FullGeoMapIfc
public void setMaxTrackDuration(long maxTrackDuration)
setMaxTrackDuration
in interface FullGeoMapIfc
maxTrackDuration
- maximum plotted track duration in millisecondspublic boolean isDrawRangeCircles()
isDrawRangeCircles
in interface GeoMapIfc
public void setDrawRangeCircles(boolean drawRangeCircles)
setDrawRangeCircles
in interface GeoMapIfc
drawRangeCircles
- boolean true if range circles should be drawnpublic boolean isDrawMicEStatusCircles()
isDrawMicEStatusCircles
in interface GeoMapIfc
public void setDrawMicEStatusCircles(boolean drawMicEStatusCircles)
setDrawMicEStatusCircles
in interface GeoMapIfc
drawMicEStatusCircles
- boolean true if Mic-E status color circles should be drawnpublic boolean isDrawSelf()
isDrawSelf
in interface GeoMapIfc
public void setDrawSelf(boolean drawSelf)
setDrawSelf
in interface GeoMapIfc
drawSelf
- boolean true if local station should be drawnpublic boolean isDrawSelfLikeOther()
isDrawSelfLikeOther
in interface GeoMapIfc
isDrawSelf()
public void setDrawSelfLikeOther(boolean drawSelfLikeOther)
setDrawSelfLikeOther
in interface GeoMapIfc
drawSelfLikeOther
- boolean true to use APRS symbol, or false to use crosshairs
for fixed station or pointer arrowhead for moving stationsetDrawSelf(boolean)
public boolean isDrawWeatherAsWeather()
isDrawWeatherAsWeather
in interface FullGeoMapIfc
public void setDrawWeatherAsWeather(boolean drawWeatherAsWeather)
setDrawWeatherAsWeather
in interface FullGeoMapIfc
drawWeatherAsWeather
- boolean true if weather stations should be plotted
with weather map symbols, false if using APRS iconpublic boolean isDrawAge()
isDrawAge
in interface FullGeoMapIfc
public void setDrawAge(boolean drawAge)
setDrawAge
in interface FullGeoMapIfc
drawAge
- boolean true if age is to be plottedpublic boolean isDrawDeadObjects()
isDrawDeadObjects
in interface FullGeoMapIfc
public void setDrawDeadObjects(boolean drawDeadObjects)
setDrawDeadObjects
in interface FullGeoMapIfc
drawDeadObjects
- boolean true if "killed" Objects should be plottedpublic boolean isDrawAlohaCircle()
isDrawAlohaCircle
in interface FullGeoMapIfc
public void setDrawAlohaCircle(boolean drawAlohaCircle)
setDrawAlohaCircle
in interface FullGeoMapIfc
drawAlohaCircle
- boolean true if aloha circles should be drawnpublic boolean isDrawItemStatus()
isDrawItemStatus
in interface GeoMapIfc
StationState.SpecialState
public void setDrawItemStatus(boolean drawItemStatus)
setDrawItemStatus
in interface GeoMapIfc
drawItemStatus
- boolean true if status halo should be drawmStationState.SpecialState
public boolean isDrawSpeed()
isDrawSpeed
in interface FullGeoMapIfc
public void setDrawSpeed(boolean drawSpeed)
setDrawSpeed
in interface FullGeoMapIfc
drawSpeed
- boolean true if mobile station speed and course is to be plottedpublic boolean isDrawAmbiguityCircle()
isDrawAmbiguityCircle
in interface GeoMapIfc
public void setDrawAmbiguityCircle(boolean drawAmbiguityCircle)
setDrawAmbiguityCircle
in interface GeoMapIfc
drawAmbiguityCircle
- boolean true if ambiguity circles should be plottedpublic boolean isDrawDeadReckoning()
isDrawDeadReckoning
in interface FullGeoMapIfc
public void setDrawDeadReckoning(boolean drawDeadReckoning)
setDrawDeadReckoning
in interface FullGeoMapIfc
drawDeadReckoning
- boolean true if deadreckoning should be plottedpublic long getMaxAgeDRStation()
getMaxAgeDRStation
in interface FullGeoMapIfc
public void setMaxAgeDRStation(long maxAgeDRStation)
setMaxAgeDRStation
in interface FullGeoMapIfc
maxAgeDRStation
- maximum dead reckon interval in millisecondspublic long getMaxAgeDRObject()
getMaxAgeDRObject
in interface FullGeoMapIfc
public void setMaxAgeDRObject(long maxAgeDRObject)
setMaxAgeDRObject
in interface FullGeoMapIfc
maxAgeDRObject
- maximum dead reckon interval in millisecondspublic long getMaxAgeDRSpecialObject()
getMaxAgeDRSpecialObject
in interface FullGeoMapIfc
public void setMaxAgeDRSpecialObject(long maxAgeDRSpecialObject)
setMaxAgeDRSpecialObject
in interface FullGeoMapIfc
public boolean isDrawDF()
isDrawDF
in interface FullGeoMapIfc
public void setDrawDF(boolean drawDF)
setDrawDF
in interface FullGeoMapIfc
drawDF
- boolean true if direction-finding cones should be drawmpublic boolean isDrawNWSMultiLine()
isDrawNWSMultiLine
in interface FullGeoMapIfc
public void setDrawNWSMultiLine(boolean drawNWSMultiLine)
setDrawNWSMultiLine
in interface FullGeoMapIfc
drawNWSMultiLine
- boolean true if multilines should be plottedpublic boolean isShowSevereWeatherZones()
isShowSevereWeatherZones
in interface FullGeoMapIfc
public void setShowSevereWeatherZones(boolean showSevereWeatherZones)
setShowSevereWeatherZones
in interface FullGeoMapIfc
showSevereWeatherZones
- boolean true if zones should be drawnpublic boolean isDrawCallsign()
isDrawCallsign
in interface GeoMapIfc
public void setDrawCallsign(boolean drawCallsign)
setDrawCallsign
in interface GeoMapIfc
drawCallsign
- boolean true if callsign label should be drawn on mappublic boolean isDrawAliasInsteadOfCallsign()
isDrawAliasInsteadOfCallsign
in interface GeoMapIfc
public void setDrawAliasInsteadOfCallsign(boolean drawAliasInsteadOfCallsign)
setDrawAliasInsteadOfCallsign
in interface GeoMapIfc
drawAliasInsteadOfCallsign
- boolean true if alias should be drawn instead of callsignpublic boolean isDontRotateIcons()
isDontRotateIcons
in interface GeoMapIfc
public void setDontRotateIcons(boolean dontRotateIcons)
setDontRotateIcons
in interface GeoMapIfc
dontRotateIcons
- boolean true if icons should not be rotatedpublic boolean isKeepSpecificallyTrackedStationsOnScreen()
isKeepSpecificallyTrackedStationsOnScreen
in interface FullGeoMapIfc
public void setKeepSpecificallyTrackedStationsOnScreen(boolean keepSpecificallyTrackedStationsOnScreen)
setKeepSpecificallyTrackedStationsOnScreen
in interface FullGeoMapIfc
keepSpecificallyTrackedStationsOnScreen
- boolean true if map should pan to keep tracked stations on the mappublic boolean isDrawDoubleSizedSymbols()
isDrawDoubleSizedSymbols
in interface GeoMapIfc
public void setDrawDoubleSizedSymbols(boolean drawDoubleSizedSymbols)
setDrawDoubleSizedSymbols
in interface GeoMapIfc
drawDoubleSizedSymbols
- boolean true if symbols should be rendered double-sizepublic boolean isDrawDigipeatHops()
isDrawDigipeatHops
in interface FullGeoMapIfc
public void setDrawDigipeatHops(boolean drawDigipeatHops)
setDrawDigipeatHops
in interface FullGeoMapIfc
drawDigipeatHops
- boolean true if digipeater hop paths should be drawn for stationspublic boolean isDrawHeatMap()
isDrawHeatMap
in interface FullGeoMapIfc
public void setDrawHeatMap(boolean drawHeatMap)
setDrawHeatMap
in interface FullGeoMapIfc
drawHeatMap
- boolean true if heat maps should be drawn for stationspublic boolean isShowUnlabeledWays()
isShowUnlabeledWays
in interface GeoMapIfc
public void setShowUnlabeledWays(boolean showUnlabeledWays)
setShowUnlabeledWays
in interface GeoMapIfc
showUnlabeledWays
- boolean true if unlabeled/untyped map elements should be plottedpublic boolean isShowLabelsInEnglish()
isShowLabelsInEnglish
in interface GeoMapIfc
public void setShowLabelsInEnglish(boolean showLabelsInEnglish)
setShowLabelsInEnglish
in interface GeoMapIfc
showLabelsInEnglish
- boolean true if English labels should be usedpublic boolean isAutoLoadMapTiles()
isAutoLoadMapTiles
in interface GeoMapIfc
public void setAutoLoadMapTiles(boolean autoLoadMapTiles)
setAutoLoadMapTiles
in interface GeoMapIfc
autoLoadMapTiles
- boolean true to enable auto-downloadpublic boolean isShowTopoContours()
isShowTopoContours
in interface FullGeoMapIfc
public boolean isGraticuleVisible()
isGraticuleVisible
in interface FullGeoMapIfc
public void setGraticuleVisible(boolean visible)
setGraticuleVisible
in interface FullGeoMapIfc
visible
- boolean true if graticule is displayedpublic boolean isShowTopoRegions()
isShowTopoRegions
in interface FullGeoMapIfc
public void setShowTopoRegions(boolean visible)
setShowTopoRegions
in interface FullGeoMapIfc
visible
- boolean true if topographic layer should be rendered as regionspublic void setShowTopoContours(boolean visible)
setShowTopoContours
in interface FullGeoMapIfc
visible
- boolean true if topographic layer should be rendered as contour linespublic void editTopoColors()
editTopoColors
in interface FullGeoMapIfc
public void startLineOfSight()
startLineOfSight
in interface FullGeoMapIfc
public void startLineOfSightFromHere(int mouseX, int mouseY)
startLineOfSightFromHere
in interface FullGeoMapIfc
mouseX
- int horizontal pixel coordinate in mapmouseY
- int vertical pixel coordinate in mappublic void startLineOfSightFromMe(int mouseX, int mouseY)
startLineOfSightFromMe
in interface FullGeoMapIfc
mouseX
- int horizontal pixel coordinate in mapmouseY
- int vertical pixel coordinate in mappublic void startLineOfSightFromMe(StationState targetStation)
startLineOfSightFromMe
in interface FullGeoMapIfc
targetStation
- StationState of station or object to trace the path topublic long getLastElapsedPaintTime()
getLastElapsedPaintTime
in interface FullGeoMapIfc
public int getLastNumDrawnObjects()
getLastNumDrawnObjects
in interface FullGeoMapIfc
public int getLastNumDrawnStations()
getLastNumDrawnStations
in interface FullGeoMapIfc
public boolean isMapCenteredOnAlerts()
isMapCenteredOnAlerts
in interface GeoMapIfc
public void flushFileCache()
flushFileCache
in interface GeoMapIfc
public void filterSettingsChanged(Filter changedFilter, boolean changedByUser)
filterSettingsChanged
in interface FilterChangeListener
changedFilter
- Filter that has changedchangedByUser
- boolean true if change was manually made by user, false if
change was made automatically by dynamic filter logicpublic void componentResized(java.awt.event.ComponentEvent e)
componentResized
in interface java.awt.event.ComponentListener
e
- ComponentEventpublic void componentMoved(java.awt.event.ComponentEvent e)
componentMoved
in interface java.awt.event.ComponentListener
e
- ComponentEventpublic void componentShown(java.awt.event.ComponentEvent e)
componentShown
in interface java.awt.event.ComponentListener
e
- ComponentEventpublic void componentHidden(java.awt.event.ComponentEvent e)
componentHidden
in interface java.awt.event.ComponentListener
e
- ComponentEventpublic java.awt.Window getWindow()
getWindow
in interface GeoMapGuiIfc