com.bbn.openmap.layer.link
Class LinkArc

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

public class LinkArc
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
LinkArc()
           
 
Method Summary
static OMArc read(java.io.DataInputStream dis)
          Read the arc protocol off the data input, and return an OMArc.
static OMArc read(java.io.DataInputStream dis, LinkProperties propertiesBuffer)
          Read the arc protocol off the data input, and return an OMArc.
static void write(float latPoint, float lonPoint, float radius, float s, float e, LinkProperties properties, java.io.DataOutputStream dos)
          Write an arc with a certain radius at a Lat/Lon location.
static void write(float latPoint, float lonPoint, float radius, int units, float s, float e, LinkProperties properties, java.io.DataOutputStream dos)
          Write an arc with a certain radius at a Lat/Lon location, and allows you to specify units of the radius.
static void write(float latPoint, float lonPoint, float radius, int units, int nverts, float s, float e, LinkProperties properties, java.io.DataOutputStream dos)
          Write an arc with a certain radius at a Lat/Lon location, and allows you to specify units of the radius, as well as the number of vertices to use to approximate the arc.
static void write(float latPoint, float lonPoint, int w, int h, float s, float e, LinkProperties properties, java.io.DataOutputStream dos)
          Write an arc with lat/lon placement.
static void write(float latPoint, float lonPoint, int offset_x1, int offset_y1, int w, int h, float s, float e, LinkProperties properties, java.io.DataOutputStream dos)
          Writing an arc at a x, y, offset to a Lat/Lon location.
static void write(int x1, int y1, int w, int h, float s, float e, LinkProperties properties, java.io.DataOutputStream dos)
          Write an arc with x/y placement.
static void write(OMArc arc, Link link, LinkProperties props)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LinkArc

public LinkArc()
Method Detail

write

public static void write(float latPoint,
                         float lonPoint,
                         int w,
                         int h,
                         float s,
                         float e,
                         LinkProperties properties,
                         java.io.DataOutputStream dos)
                  throws java.io.IOException
Write an arc with lat/lon placement.

Parameters:
latPoint - latitude of center point, decimal degrees
lonPoint - longitude of center point, decimal degrees
w - horizontal diameter of arc, pixels
h - vertical diameter of arc, pixels
s - starting angle of arc, decimal degrees
e - angular extent of arc, decimal degrees
properties - attributes for the arc.
dos - DataOutputStream.
Throws:
java.io.IOException

write

public static void write(int x1,
                         int y1,
                         int w,
                         int h,
                         float s,
                         float e,
                         LinkProperties properties,
                         java.io.DataOutputStream dos)
                  throws java.io.IOException
Write an arc with x/y placement.

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
w - horizontal diameter of arc, pixels
h - vertical diameter of arc, pixels
s - starting angle of arc, decimal degrees
e - angular extent of arc, decimal degrees
properties - attributes for the arc.
dos - DataOutputStream.
Throws:
java.io.IOException

write

public static void write(float latPoint,
                         float lonPoint,
                         int offset_x1,
                         int offset_y1,
                         int w,
                         int h,
                         float s,
                         float e,
                         LinkProperties properties,
                         java.io.DataOutputStream dos)
                  throws java.io.IOException
Writing an arc at a x, y, offset to a Lat/Lon location.

Parameters:
latPoint - latitude of center of arc.
lonPoint - longitude of center of arc.
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 arc, pixels.
h - vertical diameter of arc, pixels.
s - starting angle of arc, decimal degrees
e - angular extent of arc, decimal degrees
properties - attributes for the arc.
dos - DataOutputStream.
Throws:
java.io.IOException

write

public static void write(float latPoint,
                         float lonPoint,
                         float radius,
                         float s,
                         float e,
                         LinkProperties properties,
                         java.io.DataOutputStream dos)
                  throws java.io.IOException
Write an arc with a certain radius at a Lat/Lon location. Assumes the radius is in decimal degrees.

Parameters:
latPoint - latitude of center point, decimal degrees
lonPoint - longitude of center point, decimal degrees
radius - distance in decimal degrees
s - starting angle of arc, decimal degrees
e - angular extent of arc, decimal degrees
properties - attributes for the arc.
dos - DataOutputStream.
Throws:
java.io.IOException

write

public static void write(float latPoint,
                         float lonPoint,
                         float radius,
                         int units,
                         float s,
                         float e,
                         LinkProperties properties,
                         java.io.DataOutputStream dos)
                  throws java.io.IOException
Write an arc with a certain radius at a Lat/Lon location, and allows you to specify units of the radius.

Parameters:
latPoint - latitude of center of arc in decimal degrees
lonPoint - longitude of center of arc in decimal degrees
radius - distance
units - integer value for units for distance - KM, MILES, NMILES. If < 0, assume decimal degrees.
s - starting angle of arc, decimal degrees
e - angular extent of arc, decimal degrees
properties - attributes for the arc.
dos - DataOutputStream.
Throws:
java.io.IOException

write

public static void write(float latPoint,
                         float lonPoint,
                         float radius,
                         int units,
                         int nverts,
                         float s,
                         float e,
                         LinkProperties properties,
                         java.io.DataOutputStream dos)
                  throws java.io.IOException
Write an arc with a certain radius at a Lat/Lon location, and allows you to specify units of the radius, as well as the number of vertices to use to approximate the arc.

Parameters:
latPoint - latitude of center of arc in decimal degrees
lonPoint - longitude of center of arc in decimal degrees
radius - distance
units - integer value for units for distance - OMArc.KM, OMArc.MILES, OMArc.NMILES. If < 0, assume decimal degrees.
nverts - number of vertices for the poly-arc (if < 3, value is generated internally).
s - starting angle of arc, decimal degrees
e - angular extent of arc, decimal degrees
properties - attributes for the arc.
dos - DataOutputStream.
Throws:
java.io.IOException

write

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

read

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

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

read

public static OMArc read(java.io.DataInputStream dis,
                         LinkProperties propertiesBuffer)
                  throws java.io.IOException
Read the arc protocol off the data input, and return an OMArc. 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 OMArc being read.
Returns:
OMArc
Throws:
java.io.IOException
See Also:
OMArc


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