com.bbn.openmap.layer.link
Class LinkEllipse

java.lang.Object
  extended by com.bbn.openmap.layer.link.LinkEllipse
All Implemented Interfaces:
LinkGraphicConstants, LinkPropertiesConstants

public class LinkEllipse
extends java.lang.Object
implements LinkGraphicConstants, LinkPropertiesConstants

Reading and writing a Link protocol version of a circle.


Field Summary
 
Fields inherited from interface com.bbn.openmap.layer.link.LinkGraphicConstants
BASELINE_BOTTOM, BASELINE_MIDDLE, BASELINE_TOP, BLACK_COLOR_STRING, CLEAR_COLOR_STRING, COLORMODEL_DIRECT, COLORMODEL_INDEXED, COLORMODEL_URL, COLUMN_MAJOR, COORDMODE_ORIGIN, COORDMODE_PREVIOUS, DECIMAL_DEGREES, GRAPHICTYPE_ARC, GRAPHICTYPE_BITMAP, GRAPHICTYPE_CIRCLE, GRAPHICTYPE_ELLIPSE, GRAPHICTYPE_GRAPHIC, GRAPHICTYPE_GRID, GRAPHICTYPE_LINE, GRAPHICTYPE_POINT, GRAPHICTYPE_POLY, GRAPHICTYPE_RASTER, GRAPHICTYPE_RECTANGLE, GRAPHICTYPE_TEXT, JUSTIFY_CENTER, JUSTIFY_LEFT, JUSTIFY_RIGHT, KM, LINETYPE_GREATCIRCLE, LINETYPE_RHUMB, LINETYPE_STRAIGHT, LINETYPE_UNKNOWN, MILES, NMILES, RADIANS, RENDERTYPE_LATLON, RENDERTYPE_OFFSET, RENDERTYPE_UNKNOWN, RENDERTYPE_XY, ROW_MAJOR
 
Fields inherited from interface com.bbn.openmap.layer.link.LinkPropertiesConstants
LPC_BACKWARD_DIAG_PATTERN, LPC_CENTER_LAT, LPC_CENTER_LONG, LPC_CLEAR_PROPERTIES, LPC_CLEAR_PROPERTIES_CHAR, LPC_CROSS_PATTERN, LPC_DASH, LPC_DASH_DOT, LPC_DASH_DOT_DOT, LPC_DIAG_CROSS_PATTERN, LPC_DOT, LPC_FILLCOLOR, LPC_FILLPATTERN, LPC_FORWARD_DIAG_PATTERN, LPC_GRAPHICID, LPC_HEIGHT, LPC_HIGHLIGHTCOLOR, LPC_HORIZONTAL_PATTERN, LPC_HTML, LPC_INFO, LPC_LATMAX, LPC_LATMIN, LPC_LINECOLOR, LPC_LINESTYLE, LPC_LINEWIDTH, LPC_LINKRASTERIMAGEURL, LPC_LINKROTATION, LPC_LINKTEXTBASELINE, LPC_LINKTEXTFONT, LPC_LINKTEXTSTRING, LPC_LONG_DASH, LPC_LONMAX, LPC_LONMIN, LPC_MESSAGE, LPC_OLD_FILLCOLOR, LPC_OLD_FILLPATTERN, LPC_OLD_HIGHLIGHTCOLOR, LPC_OLD_LINECOLOR, LPC_OLD_LINESTYLE, LPC_OLD_LINEWIDTH, LPC_OLD_LINKTEXTFONT, LPC_OLD_LINKTEXTSTRING, LPC_PROJECTION, LPC_PROPERY_MANAGEMENT_POLICY, LPC_PROPERY_MANAGEMENT_POLICY_CHAR, LPC_REUSE_PROPERTIES, LPC_REUSE_PROPERTIES_CHAR, LPC_SCALE, LPC_SOLID, LPC_SOLID_PATTERN, LPC_TIME, LPC_URL, LPC_VERTICAL_PATTERN, LPC_WIDTH
 
Constructor Summary
LinkEllipse()
           
 
Method Summary
static OMEllipse read(java.io.DataInputStream dis)
          Read the ellipse protocol off the data input, and return an OMEllipse.
static OMEllipse read(java.io.DataInputStream dis, LinkProperties propertiesBuffer)
          Read the ellipse protocol off the data input, and return an OMEllipse.
static void write(float latPoint, float lonPoint, float majorAxisSpan, float minorAxisSpan, int units, float rotationAngle, LinkProperties properties, java.io.DataOutputStream dos)
          Write an ellipse with Lat/Lon placement with axis defined in terms of distance.
static void write(float latPoint, float lonPoint, int w, int h, float rotateAngle, LinkProperties properties, java.io.DataOutputStream dos)
          Create a OMEllipse, positioned with a lat-lon center and x-y axis.
static void write(float latPoint, float lonPoint, int offset_x1, int offset_y1, int w, int h, float rotateAngle, LinkProperties properties, java.io.DataOutputStream dos)
          Create a OMEllipse, positioned at a Lat-lon location, x-y offset, x-y axis.
static void write(int x1, int y1, int majorAxisSpan, int minorAxisSpan, float rotateAngle, LinkProperties properties, java.io.DataOutputStream dos)
          Create a OMEllipse, positioned with a x-y center with x-y axis.
static void write(OMEllipse ellipse, Link link, LinkProperties props)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LinkEllipse

public LinkEllipse()
Method Detail

write

public static void write(float latPoint,
                         float lonPoint,
                         float majorAxisSpan,
                         float minorAxisSpan,
                         int units,
                         float rotationAngle,
                         LinkProperties properties,
                         java.io.DataOutputStream dos)
                  throws java.io.IOException
Write an ellipse with Lat/Lon placement with axis defined in terms of distance.

Parameters:
latPoint - latitude of center of circle in decimal degrees
lonPoint - longitude of center of circle in decimal degrees
majorAxisSpan - x axis value, units
minorAxisSpan - y axis value, units
units - integer value for units for distance - OMCircle.KM, OMCircle.MILES, OMCircle.NMILES. If < 0, assume decimal degrees.
rotationAngle - The angle by which the circle/ellipse is to be rotated, in radians
properties - attributes for the circle.
dos - DataOutputStream.
Throws:
java.io.IOException

write

public static void write(int x1,
                         int y1,
                         int majorAxisSpan,
                         int minorAxisSpan,
                         float rotateAngle,
                         LinkProperties properties,
                         java.io.DataOutputStream dos)
                  throws java.io.IOException
Create a OMEllipse, positioned with a x-y center with x-y axis. Rendertype is RENDERTYPE_XY.

Parameters:
x1 - window position of center point from left of window, in pixels
y1 - window position of center point from top of window, in pixels
majorAxisSpan - horizontal diameter of circle/ellipse, pixels
minorAxisSpan - vertical diameter of circle/ellipse, pixels
rotateAngle - angle of rotation in Radians
Throws:
java.io.IOException

write

public static void write(float latPoint,
                         float lonPoint,
                         int w,
                         int h,
                         float rotateAngle,
                         LinkProperties properties,
                         java.io.DataOutputStream dos)
                  throws java.io.IOException
Create a OMEllipse, positioned with a lat-lon center and x-y axis. Rendertype is RENDERTYPE_OFFSET.

Parameters:
latPoint - latitude of center of circle in decimal degrees
lonPoint - longitude of center of circle in decimal degrees
w - horizontal diameter of circle/ellipse, pixels
h - vertical diameter of circle/ellipse, pixels
rotateAngle - angle of rotation in Radians
Throws:
java.io.IOException

write

public static void write(float latPoint,
                         float lonPoint,
                         int offset_x1,
                         int offset_y1,
                         int w,
                         int h,
                         float rotateAngle,
                         LinkProperties properties,
                         java.io.DataOutputStream dos)
                  throws java.io.IOException
Create a OMEllipse, positioned at a Lat-lon location, x-y offset, x-y axis. Rendertype is RENDERTYPE_OFFSET.

Parameters:
latPoint - latitude of center of circle in decimal degrees
lonPoint - longitude of center of circle in decimal degrees
offset_x1 - # pixels to the right the center will be moved from lonPoint.
offset_y1 - # pixels down that the center will be moved from latPoint.
w - horizontal diameter of circle/ellipse, pixels.
h - vertical diameter of circle/ellipse, pixels.
Throws:
java.io.IOException

write

public static void write(OMEllipse ellipse,
                         Link link,
                         LinkProperties props)
                  throws java.io.IOException
Throws:
java.io.IOException

read

public static OMEllipse read(java.io.DataInputStream dis)
                      throws java.io.IOException
Read the ellipse protocol off the data input, and return an OMEllipse. Assumes the header for the graphic has already been read.

Parameters:
dis - the DataInputStream
Returns:
OMEllipse
Throws:
java.io.IOException
See Also:
OMEllipse

read

public static OMEllipse read(java.io.DataInputStream dis,
                             LinkProperties propertiesBuffer)
                      throws java.io.IOException
Read the ellipse protocol off the data input, and return an OMEllipse. Assumes the header for the graphic has already been read.

Parameters:
dis - the DataInputStream
propertiesBuffer - a LinkProperties object used to cache previous settings that can be set on the OMPoly being read.
Returns:
OMEllipse
Throws:
java.io.IOException
See Also:
OMEllipse


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