// ********************************************************************** // // <copyright> // // BBN Technologies // 10 Moulton Street // Cambridge, MA 02138 // (617) 873-8000 // // Copyright (C) BBNT Solutions LLC. All rights reserved. // // </copyright> // ********************************************************************** // // $Source: /cvs/distapps/openmap/src/openmap/com/bbn/openmap/omGraphics/OMGraphicConstants.java,v $ // $RCSfile: OMGraphicConstants.java,v $ // $Revision: 1.7 $ // $Date: 2006/10/10 22:05:18 $ // $Author: dietrick $ // // ********************************************************************** package com.bbn.openmap.omGraphics; import java.awt.Color; import com.bbn.openmap.proj.LineType; /** * An interface that contains all the constants associated with OMGraphics. */ public interface OMGraphicConstants { /** Line type is unknown. */ public final static int LINETYPE_UNKNOWN = 0; /** Line will be drawn straight between window points. */ public final static int LINETYPE_STRAIGHT = LineType.Straight; /** * Line will be drawn on a constant bearing between two points. */ public final static int LINETYPE_RHUMB = LineType.Rhumb; /** * Line will be drawn on the shortest geographical path between two * locations. */ public final static int LINETYPE_GREATCIRCLE = LineType.GreatCircle; /** Render type is unknown. */ public final static int RENDERTYPE_UNKNOWN = 0; /** * The graphic should be projected relative to its lat/lon position. */ public final static int RENDERTYPE_LATLON = 1; /** * The graphic should be projected relative to its window position. */ public final static int RENDERTYPE_XY = 2; /** * The graphic should be projected in window space relative to a lat/lon * position. */ public final static int RENDERTYPE_OFFSET = 3; /** * The graphic should not be moved or be considered in the placement of * other graphics. */ public final static int DECLUTTERTYPE_NONE = 0; /** * The graphic should not be moved, but its position should be considered * when placing other graphics. */ public final static int DECLUTTERTYPE_SPACE = 1; /** * The graphic should be moved if it is going to share window space with * another graphic. */ public final static int DECLUTTERTYPE_MOVE = 2; /** * The graphic should be moved if it is going to share window space with * another graphic, and a line should be drawn from the new position to the * original position. */ public final static int DECLUTTERTYPE_LINE = 3; /** The generic graphic type. */ public final static int GRAPHICTYPE_GRAPHIC = 0; /** A bitmap type - OMBitmap. */ public final static int GRAPHICTYPE_BITMAP = 1; /** A text type - OMText. */ public final static int GRAPHICTYPE_TEXT = 2; /** A polygon/polyline type - OMPoly. */ public final static int GRAPHICTYPE_POLY = 3; /** A line type - OMLine. */ public final static int GRAPHICTYPE_LINE = 4; /** A rectangle type - OMRect. */ public final static int GRAPHICTYPE_RECTANGLE = 5; /** A ellipse/circle type - OMCircle. */ public final static int GRAPHICTYPE_CIRCLE = 6; /** A raster type - OMRaster. */ public final static int GRAPHICTYPE_RASTER = 7; /** A grid type - OMGrid. */ public final static int GRAPHICTYPE_GRID = 8; /** A point type - OMPoint */ public final static int GRAPHICTYPE_POINT = 9; /** An arc type - OMArc. */ public final static int GRAPHICTYPE_ARC = 10; /** A ellipse type - OMEllipse. */ public final static int GRAPHICTYPE_ELLIPSE = 11; /** * The float coordinates are in decimal degrees. Should not be used - * switching over to com.bbn.openmap.proj.Length. */ public final static int DECIMAL_DEGREES = 0; /** * The float coordinates are in radians. Should not be used - switching over * to com.bbn.openmap.proj.Length. */ public final static int RADIANS = 1; /** A transparent color. */ public final static Color clear = com.bbn.openmap.util.ColorFactory.createColor(0, true); /** A Basic Stroke. */ public final static java.awt.Stroke BASIC_STROKE = new java.awt.BasicStroke(); /** * The default rotation andle to use for java.awt.Graphics2D objects. */ public static final double DEFAULT_ROTATIONANGLE = 0.0; /** * Graphic action descriptor mask - raise the graphic on top of others. */ public static final int RAISE_TO_TOP_GRAPHIC_MASK = 1 << 0; /** Graphic action descriptor mask - lower graphics below others. */ public static final int LOWER_TO_BOTTOM_GRAPHIC_MASK = 1 << 1; /** Graphic action descriptor mask - delete the graphic. */ public static final int DELETE_GRAPHIC_MASK = 1 << 2; /** Graphic action descriptor mask - select the graphic. */ public static final int SELECT_GRAPHIC_MASK = 1 << 3; /** Graphic action descriptor mask - deselect the graphic. */ public static final int DESELECT_GRAPHIC_MASK = 1 << 4; /** Graphic action descriptor mask - deselect all graphics. */ public static final int DESELECTALL_GRAPHIC_MASK = 1 << 5; /** Graphic action descriptor mask - add a graphic. */ public static final int ADD_GRAPHIC_MASK = 1 << 6; /** * Graphic action descriptor mask - update the graphic. Really for * client/server notification to update. */ public static final int UPDATE_GRAPHIC_MASK = 1 << 7; /** * Graphic action descriptor mask - raise the graphic relative to others by * one. */ public static final int RAISE_GRAPHIC_MASK = 1 << 8; /** * Graphic action descriptor mask - lower down relative to other graphics by * one. */ public static final int LOWER_GRAPHIC_MASK = 1 << 9; /** * Graphic action descriptor mask - sort the graphics. The sorting criteria * depends on local criteria as implemented in the object doing the sorting. */ public static final int SORT_GRAPHICS_MASK = 1 << 10; /** * A string that can be used for a keyword into the OMGraphic attribute * hashtable to designate a tooltip for an OMGraphic. The layer would then * look for a value for this keyword to display as a tooltip for an * OMGraphic. */ public static final String TOOLTIP = "Tooltip"; /** * A string that can be used for a keyword into the OMGraphic attribute * hashtable to designate something that would be displayed on the * InformationDelegator's information line for an OMGraphic. The layer would * then look for a value for this keyword to display in the information line * for an OMGraphic. */ public static final String INFOLINE = "Information Line"; /** * A string that can be used for a keyword into the OMGraphic attribute * hashtable to designate something that would be displayed as a label for * an OMGraphic. */ public static final String LABEL = "Label"; /** * A string that can be used for a keyword into the OMGraphic attribute * hashtable. If the value exists and is false it means graphic can't be * removed (there won't be menu item "delete") */ public static final String REMOVABLE = "Removable"; /** * A string that can be used for a keyword into the OMGraphic attribute * hashtable. If the value exists and is false it means graphic change * appearance can't be changed (there won't be menu item "Change * appearance") */ public static final String CHANGE_APPEARANCE = "ChangeAppearance"; /** * A string that can be used in the attributes to make a note that the * OMGraphic has changed, and its state should be updated somewhere. */ public static final String UPDATED = "Updated"; public static final String OMGRAPHIC_ELT = "omgraphic"; public static final String OMGRAPHIC_TYPE_ATTR = "type"; /** * An attribute that can be set on OMGraphics that can be rotated, so that * they are not rotated when the map is. */ public static final String NO_ROTATE = "norotate"; /** * Generic attribute key for index attributes. */ public static final String INDEX = "index"; /** * Handy attribute key for app object, to speed up updating code that used * the old app object in OMGraphics instead of using the attributes map. */ public static final String APP_OBJECT = "APP_OBJECT"; }