## com.bbn.openmap.layer.dted
Class DTEDCoverageLayer

    java.lang.Object
      java.awt.Component
          java.awt.Container
              javax.swing.JComponent
                  com.bbn.openmap.Layer
                      com.bbn.openmap.layer.OMGraphicHandlerLayer
                          com.bbn.openmap.layer.dted.DTEDCoverageLayer

All Implemented Interfaces:
  java.awt.event.ActionListener, java.beans.beancontext.BeanContextChild, java.beans.beancontext.BeanContextMembershipListener, java.util.EventListener, GestureResponsePolicy, java.awt.image.ImageObserver, java.awt.MenuContainer, ProjectionListener, ProjectionPainter, PropertyConsumer, java.io.Serializable

public class DTEDCoverageLayer
extends OMGraphicHandlerLayer
implements java.awt.event.ActionListener

This is a Layer that provides coverage information on the DTED data. The layer really uses the properties passed in to it to determine which directories should be scanned for the data, and where to locate a coverage file. If a coverage file is not available, the layer will take the time to scan the directories and create one, placing it in the desired location (as specified in the properties). There is a palette for this layer, that lets you turn off the coverage for different levels of DTED. Right now, only level 0, 1 and 2 are handled.

      The properties for this file are:

      # Java DTED properties
      dtedcov.class=com.bbn.openmap.layer.dted.DTEDCoverageLayer
      dtedcov.prettyName=DTED Coverage
      # This property should reflect the paths to the RPF directories
      #jdted.paths=/tmp/data/dted
      dtedcov.paths=/usr/local/matt/data/dted /cdrom/cdrom0/dted
      #DTED Level 2 data!
      dtedcov.level2.paths=/net/blatz/u5/DTEDLV2
      # Number between 0-255: 0 is transparent, 255 is opaque
      dtedcov.opaque=255
      dtedcov.coverageFile=/usr/local/matt/data/dted/coverage.dat
      # option ----
      #dtedcov.coverageURL=http://location.of.coverage.file
      #Default is true, don't need this entry if you like it...
      dtedcov.level0.showcov=true
      #Default colors don't need this entry
      dtedcov.level0.color=CE4F3F
      #Default is true, don't need this entry if you like it...
      dtedcov.level1.showcov=true
      #Default colors don't need this entry
      dtedcov.level1.color=339159
      #Default is true, don't need this entry if you like it...
      dtedcov.level2.showcov=true
      #Default colors don't need this entry
      dtedcov.level2.color=0C75D3

See Also:
  Serialized Form

Nested Class Summary

Nested classes inherited from class javax.swing.JComponent
`javax.swing.JComponent.AccessibleJComponent`

Nested classes inherited from class java.awt.Container
`java.awt.Container.AccessibleAWTContainer`

Nested classes inherited from class java.awt.Component
`java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy`

Field Summary
`protected java.lang.String` `coverageFile`
`static java.lang.String` `CoverageFileProperty` The file to read/write coverage summary.
`protected DTEDCoverageManager` `coverageManager`
`protected java.lang.String` `coverageURL` Location of coverage summary file, if supplied as a URL.
`static java.lang.String` `CoverageURLProperty` A URL to read coverage summary.
`static java.lang.String` `DTED2PathsProperty` The property describing the locations of level 2 data.
`static java.lang.String` `DTEDPathsProperty` The property describing the locations of level 0 and 1 data.
`static java.lang.String` `FillProperty` Property to use to fill rectangles.
`protected boolean` `fillRects` Flag to fill the coverage rectangles.
`protected java.awt.Color` `level0Color` The color to outline the shapes for level 0.
`static java.lang.String` `Level0ColorProperty` Property to use to change the color for coverage of level 0 data.
`protected java.awt.Color` `level1Color` The color to outline the shapes for level 1.
`static java.lang.String` `Level1ColorProperty` Property to use to change the color for coverage of level 1 data.
`protected java.awt.Color` `level2Color` The color to outline the shapes for level 2.
`static java.lang.String` `Level2ColorProperty` Property to use to change the color for coverage of level 2 data.
`protected OMGraphicList[]` `omGraphics` The graphic list of objects to draw.
`protected int` `opaqueness` A setting for how transparent to make the images.
`static java.lang.String` `OpaquenessProperty` Property to use for filled rectangles (when java supports it).
`protected java.lang.String[]` `paths` The paths to the DTED directories, telling where the data is.
`protected java.lang.String[]` `paths2` The paths to the DTED Level 2 directories, telling where the data is.
`protected boolean` `showDTEDLevel0` Flag to tell the cache to return the coverage for level 0 dted.
`protected boolean` `showDTEDLevel1` Flag to tell the cache to return the coverage for level 1 dted.
`protected boolean` `showDTEDLevel2` Flag to tell the cache to return the coverage for level 0 dted.
`static java.lang.String` `ShowLevel0Property` Property setting to show level 0 data on startup.
`static java.lang.String` `ShowLevel1Property` Property setting to show level 1 data on startup.
`static java.lang.String` `ShowLevel2Property` Property setting to show level 2 data on startup.

Fields inherited from class com.bbn.openmap.layer.OMGraphicHandlerLayer
`consumeEvents, ConsumeEventsProperty, filter, interruptable, InterruptableProperty, layerWorker, LAYERWORKER_LOCK, mouseEventInterpreter, mouseModeIDs, MouseModesProperty, projectionChangePolicy, ProjectionChangePolicyProperty, renderPolicy, RenderPolicyProperty, selectedList, TransparencyProperty`

Fields inherited from class com.bbn.openmap.Layer

`addAsBackground, AddAsBackgroundProperty, addToBeanContext, AddToBeanContextProperty, attributes, autoPalette, AutoPaletteProperty, beanContextChildSupport, DisplayPaletteCmd, DisplayPropertiesCmd, doHack, HidePaletteCmd, i18n, IDListeners, localHackList, lsListeners, maxScale, MaxScaleProperty, minScale, MinScaleProperty, palette, paletteListener, PrettyNameProperty, propertyPrefix, RedrawCmd, removable, RemovableProperty, SWING_PACKAGE, windowSupport`

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 com.bbn.openmap.PropertyConsumer
`EditorProperty, initPropertiesProperty, LabelEditorProperty, ScopedEditorProperty`

Fields inherited from interface java.awt.image.ImageObserver
`ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

Constructor Summary
`DTEDCoverageLayer()` The default constructor for the Layer.

Method Summary
`void` `actionPerformed(java.awt.event.ActionEvent e)` The Action Listener method, that reacts to the palette widgets actions.
`void` `checkVisibilities()`
`OMGraphicList[]` `getGraphicLists()` Retrieves the current graphics lists.
`java.awt.Component` `getGUI()` Provides the palette widgets to control the options of showing maps, or attribute text.
`void` `paint(java.awt.Graphics g)` Paints the layer.
`OMGraphicList` `prepare()` Prepares the graphics for the layer.
`protected void` `setDefaultValues()` Method that sets all the variables to the default values.
`void` `setGraphicLists(OMGraphicList[] aList)` Sets the current graphics lists to the given list.
`void` `setProperties(java.lang.String prefix, java.util.Properties properties)` Set all the DTED properties from a properties object.

Methods inherited from class com.bbn.openmap.layer.OMGraphicHandlerLayer

`canSetList, copy, createLayerWorker, cut, deselect, doAction, doPrepare, filter, filter, filter, getConsumeEvents, getFilter, getInfoText, getItemsForMapMenu, getItemsForOMGraphicMenu, getLayerWorker, getList, getMapMouseListener, getMouseEventInterpreter, getMouseModeIDsForEvents, getProjectionChangePolicy, getProperties, getPropertyInfo, getRenderPolicy, getSelected, getToolTipTextFor, getTransparency, getTransparencyAdjustmentPanel, highlight, interrupt, isCancelled, isHighlightable, isInterruptable, isSelectable, isWorking, leftClick, mouseOver, paste, projectionChanged, receivesMapEvents, renderDataForProjection, resetFiltering, select, setCancelled, setConsumeEvents, setFilter, setInterruptable, setLayerWorker, setList, setMouseEventInterpreter, setMouseModeIDsForEvents, setProjectionChangePolicy, setRenderPolicy, setTransparency, supportsSQL, unhighlight, workerComplete`

Methods inherited from class com.bbn.openmap.Layer

`addComponentListener, added, addInfoDisplayListener, addLayerStatusListener, addMouseListener, addVetoableChangeListener, childrenAdded, childrenRemoved, clearListeners, connectToBeanContext, createWindowSupport, finalize, findAndInit, findAndInit, findAndUndo, fireHideToolTip, firePaletteEvent, fireRequestBrowserContent, fireRequestBrowserContent, fireRequestCursor, fireRequestInfoLine, fireRequestInfoLine, fireRequestInfoLine, fireRequestMessage, fireRequestMessage, fireRequestToolTip, fireRequestToolTip, fireRequestURL, fireRequestURL, fireStatusUpdate, fireStatusUpdate, fireVetoableChange, getAddAsBackground, getAddToBeanContext, getAttribute, getBeanContext, getIcon, getMaxScale, getMinScale, getPackage, getPalette, getProjection, getPropertyPrefix, getWindowSupport, hasGUI, hidePalette, isAutoPalette, isProjectionOK, isRemovable, notifyHideHack, putAttribute, removeComponentListener, removeConfirmed, removed, removeInfoDisplayListener, removeLayerStatusListener, removeVetoableChangeListener, repaint, resetPalette, setAddAsBackground, setAddToBeanContext, setAutoPalette, setBeanContext, setIcon, setMaxScale, setMinScale, setName, setPaletteVisible, setProjection, setProjection, setProperties, setPropertyPrefix, setRemovable, setVisible, setWindowSupport, showPalette`

Methods inherited from class javax.swing.JComponent

`addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, unregisterKeyboardAction, update, updateUI`

Methods inherited from class java.awt.Container

`add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree`

Methods inherited from class java.awt.Component

`action, add, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle`

Methods inherited from class java.lang.Object
`clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface java.beans.beancontext.BeanContextChild
`addPropertyChangeListener, removePropertyChangeListener`

Field Detail

### omGraphics

    protected OMGraphicList[] omGraphics

  The graphic list of objects to draw.

### paths

    protected java.lang.String[] paths

  The paths to the DTED directories, telling where the data is.

### paths2

    protected java.lang.String[] paths2

  The paths to the DTED Level 2 directories, telling where the data is.

### showDTEDLevel0

    protected boolean showDTEDLevel0

  Flag to tell the cache to return the coverage for level 0 dted.

### showDTEDLevel1

    protected boolean showDTEDLevel1

  Flag to tell the cache to return the coverage for level 1 dted.

### showDTEDLevel2

    protected boolean showDTEDLevel2

  Flag to tell the cache to return the coverage for level 0 dted.

### level0Color

    protected java.awt.Color level0Color

  The color to outline the shapes for level 0.

### level1Color

    protected java.awt.Color level1Color

  The color to outline the shapes for level 1.

### level2Color

    protected java.awt.Color level2Color

  The color to outline the shapes for level 2.

### opaqueness

    protected int opaqueness

  A setting for how transparent to make the images. The default is 255, which is totally opaque.

### fillRects

    protected boolean fillRects

  Flag to fill the coverage rectangles.

### coverageFile

    protected java.lang.String coverageFile

### coverageURL

    protected java.lang.String coverageURL

  Location of coverage summary file, if supplied as a URL. If it doesn't exists, a coverage file will be used instead.

### coverageManager

    protected DTEDCoverageManager coverageManager

### DTEDPathsProperty

    public static final java.lang.String DTEDPathsProperty

  The property describing the locations of level 0 and 1 data.

  See Also:
    Constant Field Values

### DTED2PathsProperty

    public static final java.lang.String DTED2PathsProperty

  The property describing the locations of level 2 data.

  See Also:
    Constant Field Values

### ShowLevel0Property

    public static final java.lang.String ShowLevel0Property

  Property setting to show level 0 data on startup.

  See Also:
    Constant Field Values

### Level0ColorProperty

    public static final java.lang.String Level0ColorProperty

  Property to use to change the color for coverage of level 0 data.

  See Also:
    Constant Field Values

### ShowLevel1Property

    public static final java.lang.String ShowLevel1Property

  Property setting to show level 1 data on startup.

  See Also:
    Constant Field Values

### Level1ColorProperty

    public static final java.lang.String Level1ColorProperty

  Property to use to change the color for coverage of level 1 data.

  See Also:
    Constant Field Values

### ShowLevel2Property

    public static final java.lang.String ShowLevel2Property

  Property setting to show level 2 data on startup.

  See Also:
    Constant Field Values

### Level2ColorProperty

    public static final java.lang.String Level2ColorProperty

  Property to use to change the color for coverage of level 2 data.

  See Also:
    Constant Field Values

### OpaquenessProperty

    public static final java.lang.String OpaquenessProperty

  Property to use for filled rectangles (when java supports it).

  See Also:
    Constant Field Values

### FillProperty

    public static final java.lang.String FillProperty

  Property to use to fill rectangles.

  See Also:
    Constant Field Values

### CoverageFileProperty

    public static final java.lang.String CoverageFileProperty

  The file to read/write coverage summary. If it doesn't exist here, it will be created and placed here.

  See Also:
    Constant Field Values

### CoverageURLProperty

    public static final java.lang.String CoverageURLProperty

  A URL to read coverage summary. If it doesn't exist, the coverage file will be tried.

  See Also:
    Constant Field Values

Constructor Detail

### DTEDCoverageLayer

    public DTEDCoverageLayer()

  The default constructor for the Layer. All of the attributes are set to their default values.

Method Detail

### setDefaultValues

    protected void setDefaultValues()

  Method that sets all the variables to the default values.

### setProperties

    public void setProperties(java.lang.String prefix,
                              java.util.Properties properties)

  Set all the DTED properties from a properties object.

  Specified by:
    `setProperties` in interface `PropertyConsumer`
  Overrides:
    `setProperties` in class `OMGraphicHandlerLayer`
  Parameters:
    `prefix` - string prefix used in the properties file for this layer.
    `properties` - the properties set in the properties file.

### setGraphicLists

    public void setGraphicLists(OMGraphicList[] aList)

  Sets the current graphics lists to the given list.

  Parameters:
    `aList` - a list of OMGraphics

### getGraphicLists

    public OMGraphicList[] getGraphicLists()

  Retrieves the current graphics lists.

### prepare

    public OMGraphicList prepare()

  Prepares the graphics for the layer. This is where the getRectangle() method call is made on the dtedcov.

  Occasionally it is necessary to abort a prepare call. When this happens, the map will set the cancel bit in the LayerThread, (the thread that is running the prepare). If this Layer needs to do any cleanups during the abort, it should do so, but return out of the prepare asap.

  Overrides:
    `prepare` in class `OMGraphicHandlerLayer`

### checkVisibilities

    public void checkVisibilities()

### paint

    public void paint(java.awt.Graphics g)

  Paints the layer.

  Overrides:
    `paint` in class `OMGraphicHandlerLayer`
  Parameters:
    `g` - the Graphics context for painting

### getGUI

    public java.awt.Component getGUI()

  Provides the palette widgets to control the options of showing maps, or attribute text.

  Overrides:
    `getGUI` in class `Layer`
  Returns:
    Component object representing the palette widgets.

### actionPerformed

    public void actionPerformed(java.awt.event.ActionEvent e)

  The Action Listener method, that reacts to the palette widgets actions.

  Specified by:
    `actionPerformed` in interface `java.awt.event.ActionListener`
  Overrides:
    `actionPerformed` in class `Layer`

Copyright (C) BBNT Solutions LLC; See http://openmap.bbn.com/ for details