## com.bbn.openmap.layer.link
Class LinkEllipse

    java.lang.Object
      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