src.gov.nasa.worldwind.symbology.milstd2525.MilStd2525TacticalGraphic Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of worldwindx Show documentation
Show all versions of worldwindx Show documentation
World Wind is a collection of components that interactively display 3D geographic information within Java applications or applets.
/*
* Copyright (C) 2012 United States Government as represented by the Administrator of the
* National Aeronautics and Space Administration.
* All Rights Reserved.
*/
package gov.nasa.worldwind.symbology.milstd2525;
import gov.nasa.worldwind.symbology.TacticalGraphic;
/**
* Interface to describe tactical graphics defined by MIL-STD-2525.
* See the TacticalGraphic Usage Guide for instructions on using TacticalGraphic in an application.
*
* The following table lists the modifiers supported by 2525 graphics. Note that not all graphics support all modifiers.
* Field Modifier key Data type Description
* A SymbologyConstants.SYMBOL String SIDC for a MIL-STD-2525 Tactical Symbol
* B SymbologyConstants.ECHELON String Echelon
* C SymbologyConstants.QUANTITY String Quantity
* H SymbologyConstants.ADDITIONAL_INFO String Additional information
* Q SymbologyConstants.DIRECTION_OF_MOVEMENT {@link gov.nasa.worldwind.geom.Angle} Direction
* indicator T SymbologyConstants.UNIQUE_DESIGNATION String Unique
* designation V SymbologyConstants.TYPE String Type
* W SymbologyConstants.DATE_TIME_GROUP String Date/time
* X SymbologyConstants.ALTITUDE_DEPTH Double Altitude/depth
* AM SymbologyConstants.DISTANCE Double Radius, length or width of rectangle.
* AN SymbologyConstants.AZIMUTH Angle Azimuth
*
* Here's an example of setting modifiers during construction of a graphic:
*
* AVList modifiers = new AVListImpl();
* modifiers.setValue(SymbologyConstants.UNIQUE_DESIGNATION, "X469"); // Field T
* modifiers.setValue(SymbologyConstants.DATE_TIME_GROUP, "10095900ZJAN92); // Field W
* modifiers.setValue(SymbologyConstants.ADDITIONAL_INFO, "Anthrax Suspected"); // Field H
* modifiers.setValue(SymbologyConstants.DIRECTION_OF_MOVEMENT, Angle.fromDegrees(30.0)); // Field Q
*
* Position position = Position.fromDegrees(35.1026, -118.348, 0);
*
* // Create the graphic with the modifier list
* TacticalGraphic graphic = factory.createGraphic("GHMPNEB----AUSX", positions, modifiers);
*
*
* Some graphics support multiple instances of a modifier. For example, 2525 uses the field code W for a date/time
* modifier. Some graphics support multiple timestamps, in which case the fields are labeled W, W1, W2, etc. An
* application can pass an {@link Iterable} to setModifier
if multiple values are required to specify the
* modifier. Here's an example of how to specify two timestamps:
*
* String startDate = ...
* String endData = ...
*
* graphic.setModifier(SymbologyConstants.DATE_TIME_GROUP, Arrays.asList(startDate, endDate));
*
*
* @author pabercrombie
* @version $Id: MilStd2525TacticalGraphic.java 555 2012-04-25 18:59:29Z pabercrombie $
*/
public interface MilStd2525TacticalGraphic extends TacticalGraphic
{
/**
* Indicates the current value of graphic's Status/Operational Condition field.
*
* @return this graphic's Status/Operational Condition field.
*
* @see #setStatus(String)
*/
String getStatus();
/**
* Specifies this graphic's Status/Operational Condition field. A graphic's Status defines whether the represented
* object exists at the time the symbol was generated, or is anticipated to exist in the future. Additionally, a
* graphic's Status can define its operational condition. The recognized values depend on the graphic's scheme:
*
* Tactical graphics
*
* - STATUS_ANTICIPATED
- STATUS_SUSPECTED
- STATUS_PRESENT
- STATUS_KNOWN
*
* Meteorological and Oceanographic
*
* - Not supported
*
* Emergency Management
*
* - STATUS_ANTICIPATED
- STATUS_PRESENT
*
* @param value the new value for the Status/Operational Condition field.
*
* @throws IllegalArgumentException if the specified value is null
or is not one of the accepted status
* values.
*/
void setStatus(String value);
}