|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.bbn.openmap.omGraphics.geom.BasicGeometry | +--com.bbn.openmap.omGraphics.OMGraphic | +--com.bbn.openmap.omGraphics.OMLine
Graphic object that represents a simple line.
The OMLine is used to create simple lines, from one point on the window to the other. If you want to have a line with several parts, use OMPoly as a polyline with no fillColor.
OMPoly
,
Serialized FormField Summary | |
protected ArcCalc |
arc
For x-y and offset lines, there is the ability to put a curve in the line. |
protected int |
arrowDirectionType
Used to draw the ArrowHead on the finishing end, the starting end, or both. |
protected int |
arrowLocation
Where on the line to put the ArrowHead, from 0 (start) to 100 (end) of the line. |
static int |
CURVED_LINE
|
protected boolean |
doArrowHead
Flag used to create arrow heads on lines. |
protected boolean |
isPolyline
|
protected float[] |
latlons
latlons is a array of 4 floats - lat1, lon1, lat2, lon2. |
protected int |
nsegs
Number of segments to draw (used only for LINETYPE_GREATCIRCLE or LINETYPE_RHUMB lines). |
protected int[] |
pts
pts is an array of 4 ints - px1, py1, px2, py2. |
static int |
STRAIGHT_LINE
|
protected int |
wingLength
For arrowhead creation, the pixel distance from the tip of the arrowhead to the base. |
protected int |
wingTip
For arrowhead creation, the width of half of the base of the arrowhead. |
protected int[][] |
xpoints
X coordinate arrays of the projected points. |
protected int[][] |
ypoints
Y coordinate arrays of the projected points. |
Fields inherited from class com.bbn.openmap.omGraphics.OMGraphic |
declutterType, displayPaint, edgeMatchesFill, fillPaint, hasLabel, linePaint, matted, mattingPaint, renderType, selected, selectPaint, showEditablePalette, stroke, textureMask |
Fields inherited from class com.bbn.openmap.omGraphics.geom.BasicGeometry |
APP_OBJECT_KEY, appObject, ATT_MAP_KEY, lineType, needToRegenerate, shape, visible |
Constructor Summary | |
OMLine()
Generic constructor, attributes need to filled later. |
|
OMLine(float lat_1,
float lon_1,
float lat_2,
float lon_2,
int lineType)
Create a line from lat lon points. |
|
OMLine(float lat_1,
float lon_1,
float lat_2,
float lon_2,
int lineType,
int nsegs)
Create a line from lat lon points. |
|
OMLine(float lat_1,
float lon_1,
int x1,
int y1,
int x2,
int y2)
Create a line between two x-y points on the window, where the x-y points are offsets from a lat-lon point. |
|
OMLine(int x1,
int y1,
int x2,
int y2)
Create a line between two xy points on the window. |
Method Summary | |
void |
addArrowHead(boolean value)
Turn the ArrowHead on/off. |
void |
addArrowHead(int directionType)
Turn the ArrowHead on. |
void |
addArrowHead(int directionType,
int location)
Turn the ArrowHead on. |
void |
addArrowHead(int directionType,
int location,
int tipWidth,
int arrowLength)
Turn the ArrowHead on. |
boolean |
contains(int x,
int y)
This takes the area out of OMLines that may look like they have area, depending on their shape. |
java.awt.geom.GeneralPath |
createArrowHeads()
This is a method that you can extend to create the GeneralPath for the arrowheads, if you want a different way of doing it. |
boolean |
generate(Projection proj)
Prepare the line for rendering. |
ArcCalc |
getArc()
Return the arc angle set for this line. |
float[] |
getLL()
Get the lat lon values of the end points of the line in an array of floats - lat1, lon1, lat2, lon2. |
int |
getNumSegs()
Get the number of segments of the lat/lon line. |
int[] |
getPts()
Get the xy values of the end points of the line in an array of ints - x1, y1, x2, y2 . |
int |
getWingLength()
Arrowhead function, to find out the arrowhead length. |
int |
getWingTip()
Arrowhead function, to find out the wing tip width. |
boolean |
isPolyline()
Check to see if this line is a polyline. |
void |
render(java.awt.Graphics g)
Paint the line. |
void |
setArc(ArcCalc ac)
Set the arc that is drawn between the points of a x-y or offset line. |
void |
setLL(float[] lls)
Set the lat lon values of the end points of the line from an array of floats - lat1, lon1, lat2, lon2. |
void |
setNumSegs(int nsegs)
Set the number of segments of the lat/lon line. |
void |
setPts(int[] xys)
Set the xy values of the end points of the line from an array of ints - x1, y1, x2, y2 . |
boolean |
shouldRenderFill()
The OMLine should never render fill. |
Methods inherited from class com.bbn.openmap.omGraphics.geom.BasicGeometry |
_distance, appendShapeEdge, appendShapeEdge, appendShapeEdge, appendShapeEdge, checkAttributeMap, checkAttributeMap, clearAttributes, createAttributeMap, createBoxShape, createShape, createShape, describeShapeDetail, describeShapeDetail, distanceToEdge, draw, fill, getAppObject, getAppObject, getAttribute, getAttributeMap, getAttributes, getLineType, getNeedToRegenerate, getShape, isRenderable, isVisible, putAttribute, removeAttribute, replaceAppObjectWithAttributeMap, setAppObject, setAppObject, setAttributes, setLineType, setNeedToRegenerate, setVisible |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.bbn.openmap.omGraphics.OMGeometry |
clearAttributes, draw, fill, getAppObject, getAttribute, getAttributes, getLineType, getNeedToRegenerate, getShape, isRenderable, isVisible, putAttribute, removeAttribute, setAppObject, setAttributes, setLineType, setNeedToRegenerate, setVisible |
Field Detail |
protected boolean isPolyline
protected float[] latlons
protected int[] pts
protected int[][] xpoints
protected int[][] ypoints
protected boolean doArrowHead
protected int arrowDirectionType
protected int arrowLocation
protected int wingTip
protected int wingLength
protected int nsegs
protected ArcCalc arc
public static final int STRAIGHT_LINE
public static final int CURVED_LINE
Constructor Detail |
public OMLine()
public OMLine(float lat_1, float lon_1, float lat_2, float lon_2, int lineType)
lat_1
- latitude of first point, decimal degrees.lon_1
- longitude of first point, decimal degrees.lat_2
- latitude of second point, decimal degrees.lon_2
- longitude of second point, decimal degrees.lineType
- a choice between LINETYPE_STRAIGHT,
LINETYPE_GREATCIRCLE or LINETYPE_RHUMB.public OMLine(float lat_1, float lon_1, float lat_2, float lon_2, int lineType, int nsegs)
lat_1
- latitude of first point, decimal degrees.lon_1
- longitude of first point, decimal degrees.lat_2
- latitude of second point, decimal degrees.lon_2
- longitude of second point, decimal degrees.lineType
- a choice between LINETYPE_STRAIGHT,
LINETYPE_GREATCIRCLE or LINETYPE_RHUMB.nsegs
- number of segment points (only for
LINETYPE_GREATCIRCLE or LINETYPE_RHUMB line types, and
if < 1, this value is generated internally)public OMLine(int x1, int y1, int x2, int y2)
x1
- the x location of the first point, in pixels from the
left of the window.y1
- the y location of the first point, in pixels from the
top of the window.x2
- the x location of the second point, in pixels from
the left of the window.y2
- the y location of the second point, in pixels from
the top of the window.public OMLine(float lat_1, float lon_1, int x1, int y1, int x2, int y2)
lat_1
- the latitude of the reference point of the line,
in decimal degrees.lon_1
- the longitude of the reference point of the line,
in decimal degrees.x1
- the x location of the first point, in pixels from the
longitude point.y1
- the y location of the first point, in pixels from the
latitude point.x2
- the x location of the second point, in pixels from
the longitude point.y2
- the y location of the second point, in pixels from
the latitude point.Method Detail |
public void setLL(float[] lls)
lls
- array of floats - lat1, lon1, lat2, lon2public float[] getLL()
public void setPts(int[] xys)
xys
- array of ints for the points - x1, y1, x2, y2public int[] getPts()
public boolean isPolyline()
public void setNumSegs(int nsegs)
nsegs
- number of segment pointspublic int getNumSegs()
public void addArrowHead(boolean value)
value
- on/offpublic void addArrowHead(int directionType)
directionType
- which way to point the arrow head.public void addArrowHead(int directionType, int location)
directionType
- which way to point the arrow head.location
- where on the line to put the arrow head - 0 for
the starting point, 100 for the end.public void addArrowHead(int directionType, int location, int tipWidth, int arrowLength)
directionType
- which way to point the arrow head.location
- where on the line to put the arrow head - 0 for
the starting point, 100 for the end.tipWidth
- the width factor for the base of the arrowhead,
on one side of the line. (Default is 5)arrowLength
- the length factor of the arrowhead, from the
tip of the line to the base of the arrowhead. (Default
is 20)public int getWingTip()
public int getWingLength()
public void setArc(ArcCalc ac)
public ArcCalc getArc()
public boolean generate(Projection proj)
generate
in interface OMGeometry
generate
in class OMGraphic
proj
- Projection
OMGraphic.regenerate(com.bbn.openmap.proj.Projection)
public java.awt.geom.GeneralPath createArrowHeads()
public void render(java.awt.Graphics g)
render
in class OMGraphic
g
- Graphics context to render intopublic boolean shouldRenderFill()
shouldRenderFill
in class OMGraphic
public boolean contains(int x, int y)
contains
in interface OMGeometry
contains
in class BasicGeometry
x
- X pixel coordinate of the point.y
- Y pixel coordinate of the point.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |