com.bbn.openmap.layer.link
Class LinkLine

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

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

Read and write a Link protocol version of a line.


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
LinkLine()
           
 
Method Summary
static OMLine read(java.io.DataInputStream dis)
          Read the line Link protocol off a DataInputStream, and create an OMLine from it.
static OMLine read(java.io.DataInputStream dis, LinkProperties propertiesBuffer)
          Read the line Link protocol off a DataInputStream, and create an OMLine from it.
static void write(float lat_1, float lon_1, float lat_2, float lon_2, int lineType, int nsegs, LinkProperties properties, java.io.DataOutputStream dos)
          Write a line using lat/lon endpoints.
static void write(float lat_1, float lon_1, float lat_2, float lon_2, int lineType, LinkProperties properties, java.io.DataOutputStream dos)
          Write a line using lat/lon endpoints.
static void write(float lat_1, float lon_1, int x1, int y1, int x2, int y2, LinkProperties properties, java.io.DataOutputStream dos)
          Write a line located at an x/y pixel offset from a lat/lon location.
static void write(int x1, int y1, int x2, int y2, LinkProperties properties, java.io.DataOutputStream dos)
          Write a line with x/y pixel endpoints.
static void write(OMLine line, Link link, LinkProperties props)
          Write an OMLine to the link.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LinkLine

public LinkLine()
Method Detail

write

public static void write(float lat_1,
                         float lon_1,
                         float lat_2,
                         float lon_2,
                         int lineType,
                         LinkProperties properties,
                         java.io.DataOutputStream dos)
                  throws java.io.IOException
Write a line using lat/lon endpoints. The lat/lons are in decimal degrees. .

Parameters:
lat_1 - latitude of placement of start of line.
lon_1 - longitude of placement of start of line.
lat_2 - latitude of placement of end of line.
lon_2 - longitude of placement of end of line.
lineType - type of line - straight, rhumb, great circle..
properties - Properties containing attributes.
dos - DataOutputStream to write to.
Throws:
java.io.IOException

write

public static void write(float lat_1,
                         float lon_1,
                         float lat_2,
                         float lon_2,
                         int lineType,
                         int nsegs,
                         LinkProperties properties,
                         java.io.DataOutputStream dos)
                  throws java.io.IOException
Write a line using lat/lon endpoints. The lat/lons are in decimal degrees. This method gives you the option of specifying a number of segments to use in approximating a curved line.

Parameters:
lat_1 - latitude of placement of start of line.
lon_1 - longitude of placement of start of line.
lat_2 - latitude of placement of end of line.
lon_2 - longitude of placement of end of line.
lineType - type of line - straight, rhumb, great circle..
nsegs - number of points to use to approximate curved line..
properties - Properties containing attributes.
dos - DataOutputStream to write to.
Throws:
java.io.IOException

write

public static void write(int x1,
                         int y1,
                         int x2,
                         int y2,
                         LinkProperties properties,
                         java.io.DataOutputStream dos)
                  throws java.io.IOException
Write a line with x/y pixel endpoints.

Parameters:
x1 - Horizontal pixel placement of start of line.
y1 - Vertical pixel placement of start of line.
x2 - Horizontal pixel placement of end of line.
y2 - Vertical pixel placement of end of line.
properties - Properties containing attributes.
dos - DataOutputStream to write to.
Throws:
java.io.IOException

write

public static void write(float lat_1,
                         float lon_1,
                         int x1,
                         int y1,
                         int x2,
                         int y2,
                         LinkProperties properties,
                         java.io.DataOutputStream dos)
                  throws java.io.IOException
Write a line located at an x/y pixel offset from a lat/lon location.

Parameters:
lat_1 - latitude of placement of line.
lon_1 - longitude of placement of line.
x1 - Horizontal pixel offset of start of line.
y1 - Vertical pixel offset of start of line.
x2 - Horizontal pixel offset of end of line.
y2 - Vertical pixel offset of end of line.
properties - Properties containing attributes.
dos - DataOutputStream to write to.
Throws:
java.io.IOException

write

public static void write(OMLine line,
                         Link link,
                         LinkProperties props)
                  throws java.io.IOException
Write an OMLine to the link.

Throws:
java.io.IOException

read

public static OMLine read(java.io.DataInputStream dis)
                   throws java.io.IOException
Read the line Link protocol off a DataInputStream, and create an OMLine from it. Assumes that the header has already been read.

Parameters:
dis - DataInputStream to read from.
Returns:
OMLine
Throws:
java.io.IOException
See Also:
OMLine

read

public static OMLine read(java.io.DataInputStream dis,
                          LinkProperties propertiesBuffer)
                   throws java.io.IOException
Read the line Link protocol off a DataInputStream, and create an OMLine from it. Assumes that the header has already been read.

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


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