public interface ILcdGXYPen extends Serializable
ILcdGXYView
.ALcdGXYPen.create(com.luciad.model.ILcdModelReference)
for default factory methods.
Objects to be painted or manipulated are typically specified in model coordinates. These coordinates
are transformed to world coordinates and AWT view coordinates, e.g for painting or picking.
Therefore, the ILcdGXYPen
saves you a lot of work and helps you to write code which
is easier to understand and maintain.
An ILcdGXYPen
maintains a current position which is used by several methods.
It also provides a convenient way to transform between model, world and AWT coordinates.
Related methods are:
An ILcdGXYPen
stores an internal path which can be accumulated and painted.
The path is accumulated by appending lines, point lists, or arcs. Subsequently, it can
then be painted as a polyline, a polygon, or a filled polygon. Related methods are:
emptyAccumulated
accumulateLineTo
accumulatePointList
accumulateArc
drawAccumulatedPolyline
drawAccumulatedPolygon
fillAccumulatedPolygon
Alternatively, an ILcdGXYPen
allows to construct an external AWT path which the user
can modify, transform, or paint as required. Related methods are:
Similarly, lines, point lists, or arcs can be appended to an external general path which the user can modify, transform or paint as required. Related methods are:
An ILcdGXYPen
also provides a set of methods to paint elementary shapes such
as lines and arcs. Related methods are:
Furthermore, information can be obtained about the geometry of elementary shapes, such as distances and bounding boxes in AWT coordinates. Related methods are:
An ILcdGXYPen
also provides assistance with picking objects. Related methods are:
Finally, an ILcdGXYPen
allows the user to specify and paint hot points. Related methods are:
ILcdGXYView
Modifier and Type  Field and Description 

static int 
CIRCLE
constant representing a circle to be used as hot point shape

static int 
FILLED_CIRCLE
constant representing a filled circle to be used as hot point shape

static int 
FILLED_SQUARE
constant representing a filled square to be used as hot point shape

static int 
HORIZONTAL_CROSS
constant representing a horizontal cross to be used as hot point shape

static int 
VERTICAL_CROSS
constant representing a vertical cross to be used as hot point shape

Modifier and Type  Method and Description 

void 
accumulateArc(ILcdPoint aCenter,
double aA,
double aB,
double aRotAngle,
double aStartAngle,
double aArcAngle,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Accumulates a polyline approximation of the given arc to the internally stored path.

void 
accumulateHorizontalLineTo(double aDeltaX,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Accumulates a horizontal line starting from the current position to the internally stored path.

void 
accumulateLineTo(ILcdPoint aPoint,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Accumulates a line from the current position to the given model point to the internally stored path.

void 
accumulatePointList(ILcdPointList aPointList,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Accumulates a polyline to the internally stored path.

void 
accumulateVerticalLineTo(double aDeltaY,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Accumulates a vertical line starting from the current position to the internally stored path.

void 
appendArc(ILcdPoint aCenter,
double aA,
double aB,
double aRotAngle,
double aStartAngle,
double aArcAngle,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGeneralPath aGeneralPathSFCT)
Appends a polyline approximation of the given arc to the given
ILcdGeneralPath . 
void 
appendArc(ILcdPoint aCenter,
double aA,
double aB,
double aRotAngle,
double aStartAngle,
double aArcAngle,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
ILcdAWTPath aAWTPathSFCT)
Appends a polyline approximation of the given arc to the given
ILcdAWTPath . 
void 
appendGeneralPath(ILcdGeneralPath aGeneralPath,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
ILcdAWTPath aAWTPathSFCT)
Appends the given
ILcdGeneralPath to the given ILcdAWTPath . 
void 
appendHorizontalLineTo(double aDeltaX,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGeneralPath aGeneralPathSFCT)
Appends a horizontal line starting from the current position to the given
ILcdGeneralPath . 
void 
appendHorizontalLineTo(double aDeltaX,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
ILcdAWTPath aAWTPathSFCT)
Appends a horizontal line starting from the current position to the given
ILcdAWTPath . 
void 
appendLineTo(ILcdPoint aPoint,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGeneralPath aGeneralPathSFCT)
Appends a line from the current position to the given model point to the given
ILcdGeneralPath . 
void 
appendLineTo(ILcdPoint aPoint,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
ILcdAWTPath aAWTPathSFCT)
Appends a line from the current position to the given model point to the given
ILcdAWTPath . 
void 
appendPointList(ILcdPointList aPointList,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGeneralPath aGeneralPathSFCT)
Appends a polyline to the given
ILcdGeneralPath . 
void 
appendPointList(ILcdPointList aPointList,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
ILcdAWTPath aAWTPathSFCT)
Appends a polyline to the given
ILcdAWTPath . 
void 
appendVerticalLineTo(double aDeltaY,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGeneralPath aGeneralPathSFCT)
Appends a vertical line starting from the current position to the given
ILcdGeneralPath . 
void 
appendVerticalLineTo(double aDeltaY,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
ILcdAWTPath aAWTPathSFCT)
Appends a vertical line starting from the current position to the given
ILcdAWTPath . 
void 
arcBoundsSFCT(ILcdPoint aCenter,
double aA,
double aB,
double aRotAngle,
double aStartAngle,
double aArcAngle,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
ILcd2DEditableBounds aBoundsSFCT)
Calculates the bounding box in AWT coordinates of the given arc.

Object 
clone() 
boolean 
contains(ILcdPointList aPointList,
double aX,
double aY,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Checks whether the given polygon encloses the given AWT point.

void 
drawAccumulatedPolygon(Graphics aGraphics,
boolean aEmptyAccumulated)
Draws the points stored in the internal path as a polygon.

void 
drawAccumulatedPolyline(Graphics aGraphics,
boolean aEmptyAccumulated)
Draws the points stored in the internal path as a polyline.

void 
drawArc(double aCenterX,
double aCenterY,
double aStartX,
double aStartY,
double aArcAngle,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
Graphics aGraphics)
Draws a circular arc onto the given
Graphics . 
void 
drawArc(ILcdPoint aCenter,
double aA,
double aB,
double aRotAngle,
double aStartAngle,
double aArcAngle,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
Graphics aGraphics)
Draws an arc onto the given
Graphics . 
void 
drawHorizontalLineTo(double aDeltaX,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
Graphics aGraphics)
Draws a horizontal line from the current position to the given model point onto the given
Graphics . 
void 
drawHotPoint(double aX,
double aY,
Graphics aGraphics)
Draws a hot point at the given AWT point.

void 
drawHotPoint(ILcdPoint aPoint,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
Graphics aGraphics)
Draws a hot point at the given model point.

void 
drawLine(ILcdPoint aFromPoint,
ILcdPoint aToPoint,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
Graphics aGraphics)
Draws a line between the two given model points onto the given
Graphics . 
void 
drawLineTo(double aX,
double aY,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
Graphics aGraphics)
Draws a line from the current position to the given AWT point onto the given
Graphics . 
void 
drawLineTo(ILcdPoint aPoint,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
Graphics aGraphics)
Draws a line from the current position to the given model point onto the given
Graphics . 
void 
drawPolygon(ILcdPointList aPointList,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
Graphics aGraphics)
Draws a polygon onto the given
Graphics . 
void 
drawPolyline(ILcdPointList aPointList,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
Graphics aGraphics)
Draws a polyline onto the given
Graphics . 
void 
drawVerticalLineTo(double aDeltaY,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
Graphics aGraphics)
Draws a vertical line from the current position to the given model point onto the given
Graphics . 
void 
emptyAccumulated()
Clears the accumulated internal path.

void 
fillAccumulatedPolygon(Graphics aGraphics,
boolean aEmptyAccumulated)
Draws the points stored in the internal path as a filled polygon.

void 
fillPolygon(ILcdPointList aPointList,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
Graphics aGraphics)
Draws a filled polygon onto the given
Graphics . 
int 
getHotPointShape()
Gets the hot point shape currently used by this
ILcdGXYPen . 
int 
getHotPointSize()
Gets the hot point size currently used by this
ILcdGXYPen . 
int 
getTouchedSegment(ILcdPointList aPointList,
boolean aAsPolygon,
double aX,
double aY,
boolean aIncludeHotPoints,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Gets the index of the line segment of the given
ILcdPointList which is touched by
the given AWT point. 
int 
getX()
Gets the AWT x coordinate of the current position of this
ILcdGXYPen . 
default double 
getXAsDouble()
Gets the AWT x coordinate of the current position of this
ILcdGXYPen . 
int 
getY()
Gets the AWT y coordinate of the current position of this
ILcdGXYPen . 
default double 
getYAsDouble()
Gets the AWT y coordinate of the current position of this
ILcdGXYPen . 
boolean 
isArcTouched(ILcdPoint aCenter,
double aA,
double aB,
double aRotAngle,
double aStartAngle,
double aArcAngle,
double aX,
double aY,
int aSensitivity,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Tests if the given arc is touched by clicking at the given AWT point taking into account the
given tolerance.

boolean 
isHorizontalLineTouched(ILcdPoint aPoint,
double aDeltaX,
double aX,
double aY,
boolean aIncludeHotPoint,
int aSensitivity,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Tests if a given horizontal line is touched by clicking at the given AWT point.

boolean 
isLineTouched(ILcdPoint aPoint1,
ILcdPoint aPoint2,
double aX,
double aY,
boolean aIncludeHotPoint,
int aSensitivity,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Tests if a given line is touched by clicking at the given AWT point.

boolean 
isTouched(ILcdPoint aPoint,
double aX,
double aY,
int aSensitivity,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Tests if the given model point is touched by clicking at the given AWT point.

boolean 
isVerticalLineTouched(ILcdPoint aPoint,
double aDeltaY,
double aX,
double aY,
boolean aIncludeHotPoint,
int aSensitivity,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Tests if a given vertical line is touched by clicking at the given AWT point.

void 
lineBoundsSFCT(ILcdPoint aPoint1,
ILcdPoint aPoint2,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
ILcd2DEditableBounds aBoundsSFCT)
Calculates the bounding box in AWT coordinates of the line between the two given model points.

double 
modelDistance(double aX1,
double aY1,
double aX2,
double aY2,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Calculates the model distance between the two given points expressed in AWT coordinates.

void 
moveTo(double aX,
double aY,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Moves the current position by setting its AWT coordinates to the given AWT point.

void 
moveTo(ILcdPoint aPoint,
ILcdModelXYWorldTransformation aModelXYWorldTransformation)
Moves the current position by setting its model coordinates to the given model point.

void 
moveTo(ILcdPoint aPoint,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Moves the current position by setting its model coordinates to the given model point.

void 
polylineBoundsSFCT(ILcdPointList aPointList,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
ILcd2DEditableBounds aBoundsSFCT)
Calculates the bounding box in AWT coordinates of the given polyline.

void 
resetPosition()
Makes the current position undefined so that it is not involved in the next drawing or
append/accumulate operation.

void 
setHotPointShape(int aHotPointShape)
Sets the hot point shape.

void 
setHotPointSize(int aHotPointSize)
Sets the hot point size.

void 
translateOf(double aDeltaX,
double aDeltaY,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Translates the AWT coordinates of the current position.

static final int FILLED_SQUARE
static final int VERTICAL_CROSS
static final int HORIZONTAL_CROSS
static final int CIRCLE
static final int FILLED_CIRCLE
int getX()
ILcdGXYPen
.ILcdGXYPen
int getY()
ILcdGXYPen
.ILcdGXYPen
default double getXAsDouble()
ILcdGXYPen
.ILcdGXYPen
default double getYAsDouble()
ILcdGXYPen
.ILcdGXYPen
void moveTo(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
Setting the current position is only required  and should therefore only be used 
to define the start point of a line. This is necessary in combination with one of the
drawLineTo
, drawHorizontalLineTo
, or drawVerticalLineTo
methods or in case one adds a line to an empty (sub)path with one of the appendLineTo
or accumulateLineTo
methods.
Note that this method does not create a line break.
aPoint
 the model point to which the current position is movedaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesTLcdOutOfBoundsException
 If the given point is outside the valid area of the
given ILcdModelXYWorldTransformation
.void moveTo(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation) throws TLcdOutOfBoundsException
ILcdModelXYWorldTransformation
.
Setting the current position is only required  and should therefore only be used 
to define the start point of a line. This is necessary in combination with one of the
drawLineTo
, drawHorizontalLineTo
, or drawVerticalLineTo
methods or in case one adds a line to an empty (sub)path with one of the appendLineTo
or accumulateLineTo
methods.
Note that this method does not create a line break.
aPoint
 the model point to which the current position is movedaModelXYWorldTransformation
 the transformation between model and world coordinatesTLcdOutOfBoundsException
 If the given point is outside the valid area of the
given ILcdModelXYWorldTransformation
.void moveTo(double aX, double aY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
Setting the current position is only required  and should therefore only be used 
to define the start point of a line. This is necessary in combination with one of the
drawLineTo
, drawHorizontalLineTo
, or drawVerticalLineTo
methods or in case one adds a line to an empty (sub)path with one of the appendLineTo
or accumulateLineTo
methods.
Note that this method does not create a line break.
aX
 the x coordinate of the AWT point to which the current position is movedaY
 the y coordinate of the AWT point to which the current position is movedaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesTLcdOutOfBoundsException
 If the given point is outside the valid area of the
given ILcdModelXYWorldTransformation
.void translateOf(double aDeltaX, double aDeltaY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
Setting the current position is only required  and should therefore only be used 
to define the start point of a line. This is necessary in combination with one of the
drawLineTo
, drawHorizontalLineTo
, or drawVerticalLineTo
methods or in case one adds a line to an empty (sub)path with one of the appendLineTo
or accumulateLineTo
methods.
Note that this method does not create a line break.
aDeltaX
 the amount by which the AWT x coordinate of the current position is translatedaDeltaY
 the amount by which the AWT y coordinate of the current position is translatedaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesTLcdOutOfBoundsException
 If the translated point is outside the valid area of the
given ILcdModelXYWorldTransformation
void resetPosition()
void drawLineTo(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException
Graphics
.
The given model coordinates of the end point of the line are transformed to AWT coordinates
by applying the given ILcdModelXYWorldTransformation
and
ILcdGXYViewXYWorldTransformation
.aPoint
 the end point of the line (specified in model coordinates)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaGraphics
 the Graphics onto which the line is drawnTLcdOutOfBoundsException
 Some implementations may throw an exception in case the given
end point of the line is outside the valid area of the transformation but this could be avoided
by more advanced implementations.void drawLineTo(double aX, double aY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException
Graphics
.
The given AWT coordinates of the end point of the line are transformed to model coordinates
by applying the given ILcdModelXYWorldTransformation
and
ILcdGXYViewXYWorldTransformation
.aX
 the AWT x coordinate of the point to which a line is drawnaY
 the AWT y coordinate of the point to which a line is drawnaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaGraphics
 the Graphics on which the line is drawnTLcdOutOfBoundsException
 Some implementations may throw an exception in case the given
end point of the line is outside the valid area of the transformation but this could be avoided
by more advanced implementations.void drawHorizontalLineTo(double aDeltaX, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException
Graphics
. This model point is obtained by translating the model x coordinate
of the current position by the given amount. The model coordinates of the end point of the line
are transformed to AWT coordinates by applying the given ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.aDeltaX
 the amount by which the model x coordinate of the current position is translatedaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaGraphics
 the Graphics on which the line is drawnTLcdOutOfBoundsException
 Some implementations may throw an exception in case the given
end point of the line is outside the valid area of the transformation but this could be avoided
by more advanced implementations.void drawVerticalLineTo(double aDeltaY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException
Graphics
. This model point is obtained by translating the model y coordinate
of the current position by the given amount. The model coordinates of the end point of the line
are transformed to AWT coordinates by applying the given ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.aDeltaY
 the amount by which the model y coordinate of the current position is translatedaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaGraphics
 the Graphics on which the line is drawnTLcdOutOfBoundsException
 Some implementations may throw an exception in case the given
end point of the line is outside the valid area of the transformation but this could be avoided
by more advanced implementations.void emptyAccumulated()
void accumulateLineTo(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException
ILcdModelXYWorldTransformation
and
ILcdGXYViewXYWorldTransformation
.
Note that nothing is painted yet.
aPoint
 the end point (specified in model coordinates) of the lineaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesTLcdOutOfBoundsException
 Some implementations may throw an exception in case the given
model point is outside the valid area of the transformation but this could be avoided by more
advanced implementations.drawAccumulatedPolyline(java.awt.Graphics, boolean)
,
drawAccumulatedPolygon(java.awt.Graphics, boolean)
,
fillAccumulatedPolygon(java.awt.Graphics, boolean)
void accumulateHorizontalLineTo(double aDeltaX, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
Note that nothing is painted yet.
aDeltaX
 the amount by which the model x coordinate of the current position is translatedaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesTLcdOutOfBoundsException
 Some implementations may throw an exception in case the end point
of the line is outside the valid area of the transformation but this could be avoided by more
advanced implementations.void accumulateVerticalLineTo(double aDeltaY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
Note that nothing is painted yet.
aDeltaY
 the amount by which the model y coordinate of the current position is translatedaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesTLcdOutOfBoundsException
 Some implementations may throw an exception in case the end point
of the line is outside the valid area of the transformation but this could be avoided by more
advanced implementations.void accumulatePointList(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException
ILcdPointList
of which the points are specified in
model coordinates. These model coordinates are transformed to AWT coordinates by means of the given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
Note that nothing is painted yet.
aPointList
 the point list (specified in model coordinates)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesTLcdOutOfBoundsException
 Some implementations may throw an exception in case one of the points
of the polyline is outside the valid area of the transformation but this could be avoided by more
advanced implementations.drawAccumulatedPolyline(java.awt.Graphics, boolean)
,
drawAccumulatedPolygon(java.awt.Graphics, boolean)
,
fillAccumulatedPolygon(java.awt.Graphics, boolean)
void accumulateArc(ILcdPoint aCenter, double aA, double aB, double aRotAngle, double aStartAngle, double aArcAngle, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
are used to transform model coordinates to AWT coordinates.
Note that nothing is painted yet.
aCenter
 the center of the ellipse (specified in model coordinates)aA
 the semimajor axis of the ellipseaB
 the semiminor axis of the ellipseaRotAngle
 the rotation angle of the major axis of the ellipse (expressed in degrees).
Positive angles are measured counterclockwise from the line at 3 o'clock.aStartAngle
 the start angle of the arc (expressed in degrees). Positive angles are measured
counterclockwise from the line at 3 o'clock.aArcAngle
 the span of the arc (expressed in degrees), increasing counterclockwise from
the start angleaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesTLcdOutOfBoundsException
 Some implementations may throw an exception in case the center
of the ellipse and/or one of the points of the polyline approximation to the arc are outside
the valid area of the transformation but this could be avoided by more advanced implementations.drawAccumulatedPolyline(java.awt.Graphics, boolean)
,
drawAccumulatedPolygon(java.awt.Graphics, boolean)
,
fillAccumulatedPolygon(java.awt.Graphics, boolean)
,
drawArc(com.luciad.shape.ILcdPoint, double, double, double, double, double, com.luciad.transformation.ILcdModelXYWorldTransformation, com.luciad.view.gxy.ILcdGXYViewXYWorldTransformation, java.awt.Graphics)
,
ILcdArc
void drawAccumulatedPolyline(Graphics aGraphics, boolean aEmptyAccumulated)
aEmptyAccumulated
is true
, the internal path is cleared after the
drawing operation.aGraphics
 the Graphics
onto which the polyline is drawnaEmptyAccumulated
 boolean indicating whether the internal path should be clearedvoid drawAccumulatedPolygon(Graphics aGraphics, boolean aEmptyAccumulated)
aEmptyAccumulated
is true
, the internal path is cleared after the
drawing operation.aGraphics
 the Graphics
onto which the polyline is drawnaEmptyAccumulated
 boolean indicating whether the internal path should be clearedvoid fillAccumulatedPolygon(Graphics aGraphics, boolean aEmptyAccumulated)
aEmptyAccumulated
is true
, the internal path is cleared after the
drawing operation.aGraphics
 the Graphics
onto which the polyline is drawnaEmptyAccumulated
 boolean indicating whether the internal path should be clearedvoid appendLineTo(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT)
ILcdAWTPath
.
The given model coordinates of the end point of the line are transformed
to AWT coordinates by means of the given ILcdModelXYWorldTransformation
and
ILcdGXYViewXYWorldTransformation
. If this model point is outside the valid area of
the given ILcdModelXYWorldTransformation
, a line break is appended to the given
ILcdAWTPath
.aPoint
 the end point (specified in model coordinates) of the lineaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaAWTPathSFCT
 the AWT path to which the line is appendedvoid appendHorizontalLineTo(double aDeltaX, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT)
ILcdAWTPath
.
The model coordinates of the end point of this line are obtained by translating the
model x coordinate of the current position by the given amount. The model coordinates
of the end point of the line are transformed to AWT coordinates by means of the given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
If this model point is outside the valid area of the given ILcdModelXYWorldTransformation
,
a line break is appended to the given ILcdAWTPath
. In case the current position is
undefined, nothing is appended.aDeltaX
 the amount by which the model x coordinate of the current position is translatedaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaAWTPathSFCT
 the AWT path to which the line is appendedvoid appendVerticalLineTo(double aDeltaY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT)
ILcdAWTPath
.
The model coordinates of the end point of this line are obtained by translating the
model y coordinate of the current position by the given amount. The model coordinates
of the end point of the line are transformed to AWT coordinates by means of the given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
If this model point is outside the valid area of the given ILcdModelXYWorldTransformation
,
a line break is appended to the given ILcdAWTPath
. In case the current position is
undefined, nothing is appended.aDeltaY
 the amount by which the model y coordinate of the current position is translatedaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaAWTPathSFCT
 the AWT path to which the line is appendedvoid appendPointList(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT)
ILcdAWTPath
.
The polyline is given as an ILcdPointList
of which the points are specified in
model coordinates. These model coordinates are transformed to AWT coordinates by means of the given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
If a model point is outside the valid area of the given ILcdModelXYWorldTransformation
,
a line break is appended to the given ILcdAWTPath
so that the polyline is split.aPointList
 the point list (specified in model coordinates)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaAWTPathSFCT
 the AWT path to which the given point list is appendedvoid appendArc(ILcdPoint aCenter, double aA, double aB, double aRotAngle, double aStartAngle, double aArcAngle, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT) throws TLcdOutOfBoundsException
ILcdAWTPath
.
The arc is specified as a segment of the circumference of an ellipse. The given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
are used to transform model coordinates to AWT coordinates.aCenter
 the center of the ellipse (specified in model coordinates)aA
 the semimajor axis of the ellipseaB
 the semiminor axis of the ellipseaRotAngle
 the rotation angle of the major axis of the ellipse (expressed in degrees).
Positive angles are measured counterclockwise from the line at 3 o'clock.aStartAngle
 the start angle of the arc (expressed in degrees). Positive angles are measured
counterclockwise from the line at 3 o'clock.aArcAngle
 the span of the arc (expressed in degrees), increasing counterclockwise from
the start angleaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaAWTPathSFCT
 the AWT path to which the polyline approximation of the given arc is appendedTLcdOutOfBoundsException
 Some implementations may throw an exception in case the center
of the ellipse is outside the valid area of the transformation but this could be avoided by more
advanced implementations.ILcdArc
void appendGeneralPath(ILcdGeneralPath aGeneralPath, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT)
ILcdGeneralPath
to the given ILcdAWTPath
.
The world coordinates of the points stored in the given ILcdGeneralPath
are
transformed to AWT coordinates by means of the given ILcdGXYViewXYWorldTransformation
.
If consecutive world points map to the same AWT point, the AWT path may be simplified in order to
reduce memory requirements and improve the performance of further operations.aGeneralPath
 the general path which is appended to the given AWT pathaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaAWTPathSFCT
 the AWT path to which the given general path is appendedvoid appendLineTo(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGeneralPath aGeneralPathSFCT)
ILcdGeneralPath
.
The given model coordinates of the end point of the line are transformed
to world coordinates by means of the given ILcdModelXYWorldTransformation
.
If this point is outside the valid area of the transformation, a line break is appended to the
given ILcdGeneralPath
.aPoint
 the end point (specified in model coordinates) of the lineaModelXYWorldTransformation
 the transformation between model and world coordinatesaGeneralPathSFCT
 the general path to which the line is appendedvoid appendHorizontalLineTo(double aDeltaX, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGeneralPath aGeneralPathSFCT)
ILcdGeneralPath
.
The model coordinates of the end point of this line are obtained by translating the
model x coordinate of the current position by the given amount. The model coordinates
of the end point of the line are transformed to world coordinates by means of the given
ILcdModelXYWorldTransformation
. If this point is outside the valid area of this
transformation, a line break is appended to the given ILcdGeneralPath
. In case the
current position is undefined, nothing is appended.aDeltaX
 the amount by which the model x coordinate of the current position is translatedaModelXYWorldTransformation
 the transformation between model and world coordinatesaGeneralPathSFCT
 the general path to which the line is appendedvoid appendVerticalLineTo(double aDeltaY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGeneralPath aGeneralPathSFCT)
ILcdGeneralPath
.
The model coordinates of the end point of this line are obtained by translating the
model y coordinate of the current position by the given amount. The model coordinates
of the end point of the line are transformed to world coordinates by means of the given
ILcdModelXYWorldTransformation
. If this point is outside the valid area of this
transformation, a line break is appended to the given ILcdGeneralPath
. In case the
current position is undefined, nothing is appended.aDeltaY
 the amount by which the model y coordinate of the current position is translatedaModelXYWorldTransformation
 the transformation between model and world coordinatesaGeneralPathSFCT
 the general path to which the line is appendedvoid appendPointList(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGeneralPath aGeneralPathSFCT)
ILcdGeneralPath
.
The polyline is given as an ILcdPointList
of which the points are specified in
model coordinates. These model coordinates are transformed to world coordinates by means of the
given ILcdModelXYWorldTransformation
. If a model point is outside the valid area
of this transformation, a line break is appended to the given ILcdGeneralPath
so that
the polyline is split.aPointList
 the point list (specified in model coordinates)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGeneralPathSFCT
 the general path to which the given point list is appendedvoid appendArc(ILcdPoint aCenter, double aA, double aB, double aRotAngle, double aStartAngle, double aArcAngle, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGeneralPath aGeneralPathSFCT) throws TLcdOutOfBoundsException
ILcdGeneralPath
.
The arc is specified as a segment of the circumference of an ellipse. The given
ILcdModelXYWorldTransformation
is used to transform model coordinates to world coordinates.aCenter
 the center of the ellipse (specified in model coordinates)aA
 the semimajor axis of the ellipseaB
 the semiminor axis of the ellipseaRotAngle
 the rotation angle of the major axis of the ellipse (expressed in degrees).
Positive angles are measured counterclockwise from the line at 3 o'clock.aStartAngle
 the start angle of the arc (expressed in degrees). Positive angles are measured
counterclockwise from the line at 3 o'clock.aArcAngle
 the span of the arc (expressed in degrees), increasing counterclockwise from
the start angleaModelXYWorldTransformation
 the transformation between model and world coordinatesaGeneralPathSFCT
 the general path to which the polyline approximation of the given arc is appendedTLcdOutOfBoundsException
 Some implementations may throw an exception in case the center
of the ellipse is outside the valid area of the transformation but this could be avoided by more
advanced implementations.ILcdArc
void drawLine(ILcdPoint aFromPoint, ILcdPoint aToPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException
Graphics
.
The model coordinates of the end points of the line are transformed to AWT coordinates
by applying the given ILcdModelXYWorldTransformation
and
ILcdGXYViewXYWorldTransformation
.aFromPoint
 the start point of the line (specified in model coordinates)aToPoint
 the end point of the line (specified in model coordinates)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaGraphics
 the Graphics onto which the line is drawnTLcdOutOfBoundsException
 Some implementations may throw an exception in case one of the
given end points of the line is outside the valid area of the transformation but this could be
avoided by more advanced implementations.void drawPolyline(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException
Graphics
.
The polyline is given as an ILcdPointList
of which the points are specified in
model coordinates. These model coordinates are transformed to AWT coordinates by means of the
given ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.aPointList
 the point list (specified in model coordinates)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaGraphics
 the Graphics onto which the polyline is drawnTLcdOutOfBoundsException
 Some implementations may throw an exception in case one of
the points of the polyline is outside the valid area of the transformation but this could be
avoided by more advanced implementations.void drawPolygon(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException
Graphics
.
The polygon is given as an ILcdPointList
of which the points are specified in
model coordinates. These model coordinates are transformed to AWT coordinates by means of the
given ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.aPointList
 the point list (specified in model coordinates)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaGraphics
 the Graphics onto which the polygon is drawnTLcdOutOfBoundsException
 Some implementations may throw an exception in case one of
the points of the polygon is outside the valid area of the transformation but this could be
avoided by more advanced implementations.void fillPolygon(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException
Graphics
.
The polygon is given as an ILcdPointList
of which the points are specified in
model coordinates. These model coordinates are transformed to AWT coordinates by means of the
given ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.aPointList
 the point list (specified in model coordinates)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaGraphics
 the Graphics onto which the polygon is drawnTLcdOutOfBoundsException
 Some implementations may throw an exception in case one of
the points of the polygon is outside the valid area of the transformation but this could be
avoided by more advanced implementations.void drawArc(ILcdPoint aCenter, double aA, double aB, double aRotAngle, double aStartAngle, double aArcAngle, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException
Graphics
.
The arc is specified as a segment of the circumference of an ellipse. The given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
are used to transform model coordinates to AWT coordinates.aCenter
 the center of the ellipse (specified in model coordinates)aA
 the semimajor axis of the ellipseaB
 the semiminor axis of the ellipseaRotAngle
 the rotation angle of the major axis of the ellipse (expressed in degrees).
Positive angles are measured counterclockwise from the line at 3 o'clock.aStartAngle
 the start angle of the arc (expressed in degrees). Positive angles are measured
counterclockwise from the line at 3 o'clock.aArcAngle
 the span of the arc (expressed in degrees), increasing counterclockwise from
the start angleaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaGraphics
 the Graphics onto which the arc is drawnTLcdOutOfBoundsException
 Some implementations may throw an exception in case the center
of the ellipse and/or one of the points of the arc is outside the valid area of the transformation
but this could be avoided by more advanced implementations.ILcdArc
void drawArc(double aCenterX, double aCenterY, double aStartX, double aStartY, double aArcAngle, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException
Graphics
.
The circular arc is specified by the center of the circle, a point on the circumference of the circle
which denotes the start point of the arc and the angle spanned by the arc.
The given ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
are used to transform between model coordinates and AWT coordinates.aCenterX
 the AWT x coordinate of the center of the circleaCenterY
 the AWT y coordinate of the center of the circleaStartX
 the AWT x coordinate of the start point of the arcaStartY
 the AWT y coordinate of the start point of the arcaArcAngle
 the span of the arc (expressed in degrees), increasing counterclockwise from
the start angleaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaGraphics
 the Graphics onto which the arc is drawnTLcdOutOfBoundsException
 Some implementations may throw an exception in case one of the defining
points of the circular arc and/or one of the points of the arc is outside the valid area of the transformation
but this could be avoided by more advanced implementations.double modelDistance(double aX1, double aY1, double aX2, double aY2, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.aX1
 the xcoordinate of the first AWT pointaY1
 the ycoordinate of the first AWT pointaX2
 the xcoordinate of the second AWT pointaY2
 the ycoordinate of the second AWT pointaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesTLcdOutOfBoundsException
 If one of the two given points is outside the valid area of the
given ILcdModelXYWorldTransformation

lineBoundsSFCT
void lineBoundsSFCT(ILcdPoint aPoint1,
ILcdPoint aPoint2,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
ILcd2DEditableBounds aBoundsSFCT)
throws TLcdNoBoundsException
Calculates the bounding box in AWT coordinates of the line between the two given model points.
The model coordinates are transformed to AWT coordinates by means of the given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
 Parameters:
aPoint1
 the start point of the line (specified in model coordinates)
aPoint2
 the end point of the line (specified in model coordinates)
aModelXYWorldTransformation
 the transformation between model and world coordinates
aGXYViewXYWorldTransformation
 the transformation between world and view coordinates
aBoundsSFCT
 the bounding box in AWT coordinates of the given line on completion of the method
 Throws:
TLcdNoBoundsException
 If the line is outside the valid area of the
given ILcdModelXYWorldTransformation
.

polylineBoundsSFCT
void polylineBoundsSFCT(ILcdPointList aPointList,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
ILcd2DEditableBounds aBoundsSFCT)
throws TLcdNoBoundsException
Calculates the bounding box in AWT coordinates of the given polyline.
The polyline is given as an ILcdPointList
of which the points are specified in
model coordinates. These model coordinates are transformed to AWT coordinates by means of the given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
 Parameters:
aPointList
 the point list (specified in model coordinates)
aModelXYWorldTransformation
 the transformation between model and world coordinates
aGXYViewXYWorldTransformation
 the transformation between world and view coordinates
aBoundsSFCT
 the bounding box in AWT coordinates of the given polyline on completion of the method
 Throws:
TLcdNoBoundsException
 If the polyline is outside the valid area
of the given ILcdModelXYWorldTransformation
.

arcBoundsSFCT
void arcBoundsSFCT(ILcdPoint aCenter,
double aA,
double aB,
double aRotAngle,
double aStartAngle,
double aArcAngle,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
ILcd2DEditableBounds aBoundsSFCT)
throws TLcdNoBoundsException
Calculates the bounding box in AWT coordinates of the given arc.
The arc is specified as a segment of the circumference of an ellipse. The given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
are used to transform model coordinates to AWT coordinates.
 Parameters:
aCenter
 the center of the ellipse (specified in model coordinates)
aA
 the semimajor axis of the ellipse
aB
 the semiminor axis of the ellipse
aRotAngle
 the rotation angle of the major axis of the ellipse (expressed in degrees).
Positive angles are measured counterclockwise from the line at 3 o'clock.
aStartAngle
 the start angle of the arc (expressed in degrees). Positive angles are measured
counterclockwise from the line at 3 o'clock.
aArcAngle
 the span of the arc (expressed in degrees), increasing counterclockwise from
the start angle
aModelXYWorldTransformation
 the transformation between model and world coordinates
aGXYViewXYWorldTransformation
 the transformation between world and view coordinates
aBoundsSFCT
 the bounding box in AWT coordinates of the given arc on completion of the method
 Throws:
TLcdNoBoundsException
 If the given arc is outside the valid area of the given
ILcdModelXYWorldTransformation
 See Also:
drawArc(com.luciad.shape.ILcdPoint, double, double, double, double, double, com.luciad.transformation.ILcdModelXYWorldTransformation, com.luciad.view.gxy.ILcdGXYViewXYWorldTransformation, java.awt.Graphics)

isTouched
boolean isTouched(ILcdPoint aPoint,
double aX,
double aY,
int aSensitivity,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Tests if the given model point is touched by clicking at the given AWT point.
This is the case when the given AWT point is within a square of size
aSensitivity
centered on the AWT coordinates of the given model point.
These AWT coordinates are obtained from the given model coordinates by means of the given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
 Parameters:
aPoint
 the model point
aX
 the xcoordinate of the AWT point
aY
 the ycoordinate of the AWT point
aSensitivity
 the allowed tolerance (expressed in pixels)
aModelXYWorldTransformation
 the transformation between model and world coordinates
aGXYViewXYWorldTransformation
 the transformation between world and view coordinates
 Returns:
 a boolean indicating whether the given model point is touched by the given AWT point

isLineTouched
boolean isLineTouched(ILcdPoint aPoint1,
ILcdPoint aPoint2,
double aX,
double aY,
boolean aIncludeHotPoint,
int aSensitivity,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Tests if a given line is touched by clicking at the given AWT point.
The line is specified by means of two given model points. Model coordinates are transformed to
AWT coordinates by means of the given ILcdModelXYWorldTransformation
and
ILcdGXYViewXYWorldTransformation
. The user can specify the allowed tolerance
(aSensitivity
) and whether the test should include the hot points
(aIncludeHotPoint
).
 Parameters:
aPoint1
 the start point of the line (specified in model coordinates)
aPoint2
 the end point of the line (specified in model coordinates)
aX
 the xcoordinate of the AWT point
aY
 the ycoordinate of the AWT point
aIncludeHotPoint
 boolean indicating whether to include the hot points
aSensitivity
 the allowed tolerance (expressed in pixels)
aModelXYWorldTransformation
 the transformation between model and world coordinates
aGXYViewXYWorldTransformation
 the transformation between world and view coordinates
 Returns:
 a boolean indicating whether the given line is touched by the given AWT point

isHorizontalLineTouched
boolean isHorizontalLineTouched(ILcdPoint aPoint,
double aDeltaX,
double aX,
double aY,
boolean aIncludeHotPoint,
int aSensitivity,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Tests if a given horizontal line is touched by clicking at the given AWT point.
The horizontal line is specified by means of a start point (specified in model coordinates) and
the amount by which the x coordinate of this point should be translated to obtain the end point.
Model coordinates are transformed to AWT coordinates by means of the given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
The user can specify the allowed tolerance (aSensitivity
) and whether the test should
include the hot points (aIncludeHotPoint
).
 Parameters:
aPoint
 the start point of the line (specified in model coordinates)
aDeltaX
 the amount by which the x coordinate of the start point is translated
aX
 the xcoordinate of the AWT point
aY
 the ycoordinate of the AWT point
aIncludeHotPoint
 boolean indicating whether to include the hot points
aSensitivity
 the allowed tolerance (expressed in pixels)
aModelXYWorldTransformation
 the transformation between model and world coordinates
aGXYViewXYWorldTransformation
 the transformation between world and view coordinates
 Returns:
 a boolean indicating whether the given line is touched by the given AWT point

isVerticalLineTouched
boolean isVerticalLineTouched(ILcdPoint aPoint,
double aDeltaY,
double aX,
double aY,
boolean aIncludeHotPoint,
int aSensitivity,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Tests if a given vertical line is touched by clicking at the given AWT point.
The vertical line is specified by means of a start point (specified in model coordinates) and
the amount by which the y coordinate of this point should be translated to obtain the end point.
Model coordinates are transformed to AWT coordinates by means of the given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
The user can specify the allowed tolerance (aSensitivity
) and whether the test should
include the hot points (aIncludeHotPoint
).
 Parameters:
aPoint
 the start point of the line (specified in model coordinates)
aDeltaY
 the amount by which the y coordinate of the start point is translated
aX
 the xcoordinate of the AWT point
aY
 the ycoordinate of the AWT point
aIncludeHotPoint
 boolean indicating whether to include the hot points
aSensitivity
 the allowed tolerance (expressed in pixels)
aModelXYWorldTransformation
 the transformation between model and world coordinates
aGXYViewXYWorldTransformation
 the transformation between world and view coordinates
 Returns:
 a boolean indicating whether the given line is touched by the given AWT point

getTouchedSegment
int getTouchedSegment(ILcdPointList aPointList,
boolean aAsPolygon,
double aX,
double aY,
boolean aIncludeHotPoints,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Gets the index of the line segment of the given ILcdPointList
which is touched by
the given AWT point. If aAsPolygon
equals true, the segment from the last point to
the first point (the index of which equals one less than the number of points in the
ILcdPointList
) is taken into account as well.
 Parameters:
aPointList
 the point list defining the line segments
aAsPolygon
 boolean indicating whether the given point list should be considered as a polygon
or not (in which case it is considered as a polyline)
aX
 the xcoordinate of the AWT point
aY
 the ycoordinate of the AWT point
aIncludeHotPoints
 boolean indicating whether to include the hot points
aModelXYWorldTransformation
 the transformation between model and world coordinates
aGXYViewXYWorldTransformation
 the transformation between world and view coordinates
 Returns:
 the index of the touched line segment or 1 if no segment is touched

isArcTouched
boolean isArcTouched(ILcdPoint aCenter,
double aA,
double aB,
double aRotAngle,
double aStartAngle,
double aArcAngle,
double aX,
double aY,
int aSensitivity,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Tests if the given arc is touched by clicking at the given AWT point taking into account the
given tolerance. The arc is specified as a segment of the circumference of an ellipse. The given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
are used to transform model coordinates to AWT coordinates.
 Parameters:
aCenter
 the center of the ellipse (specified in model coordinates)
aA
 the semimajor axis of the ellipse
aB
 the semiminor axis of the ellipse
aRotAngle
 the rotation angle of the major axis of the ellipse (expressed in degrees).
Positive angles are measured counterclockwise from the line at 3 o'clock.
aStartAngle
 the start angle of the arc (expressed in degrees). Positive angles are measured
counterclockwise from the line at 3 o'clock.
aArcAngle
 the span of the arc (expressed in degrees), increasing counterclockwise from
the start angle
aX
 the xcoordinate of the AWT point
aY
 the ycoordinate of the AWT point
aSensitivity
 the allowed tolerance (expressed in pixels)
aModelXYWorldTransformation
 the transformation between model and world coordinates
aGXYViewXYWorldTransformation
 the transformation between world and view coordinates
 Returns:
 a boolean indicating whether the given arc is touched by the given AWT point
 See Also:
ILcdArc
,
drawArc(com.luciad.shape.ILcdPoint, double, double, double, double, double, com.luciad.transformation.ILcdModelXYWorldTransformation, com.luciad.view.gxy.ILcdGXYViewXYWorldTransformation, java.awt.Graphics)

contains
boolean contains(ILcdPointList aPointList,
double aX,
double aY,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation)
Checks whether the given polygon encloses the given AWT point.
The polygon is given as an ILcdPointList
containing points specified in model coordinates.
Model coordinates are transformed to AWT coordinates by means of the given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
 Parameters:
aPointList
 the point list defining a polygon
aX
 the xcoordinate of the AWT point
aY
 the ycoordinate of the AWT point
aModelXYWorldTransformation
 the transformation between model and world coordinates
aGXYViewXYWorldTransformation
 the transformation between world and view coordinates
 Returns:
 a boolean indicating whether the given polygon encloses the given AWT point

setHotPointShape
void setHotPointShape(int aHotPointShape)
Sets the hot point shape.
 Parameters:
aHotPointShape
 the hot point shape to be set (#FILLED_SQUARE, #VERTICAL_CROSS,
#HORIZONTAL_CROSS, #CIRCLE, #FILLED_CIRCLE)
 See Also:
getHotPointShape()

getHotPointShape
int getHotPointShape()
Gets the hot point shape currently used by this ILcdGXYPen
.
 Returns:
 the hot point shape currently used by this
ILcdGXYPen
 See Also:
setHotPointShape(int)
,
FILLED_SQUARE
,
VERTICAL_CROSS
,
HORIZONTAL_CROSS
,
CIRCLE
,
FILLED_CIRCLE

getHotPointSize
int getHotPointSize()
Gets the hot point size currently used by this ILcdGXYPen
.
This size is half the width of the square representing a hot point.
 Returns:
 the hot point size currently used by this
ILcdGXYPen
This size is half the width of the square representing a hot point and is expressed in pixels.
 See Also:
setHotPointSize(int)

setHotPointSize
void setHotPointSize(int aHotPointSize)
Sets the hot point size.
This size is half the width of the square representing a hot point.
 Parameters:
aHotPointSize
 the hot point size (expressed in pixels)
 See Also:
getHotPointSize()

drawHotPoint
void drawHotPoint(ILcdPoint aPoint,
ILcdModelXYWorldTransformation aModelXYWorldTransformation,
ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation,
Graphics aGraphics)
throws TLcdOutOfBoundsException
Draws a hot point at the given model point.
The model coordinates are transformed to AWT coordinates by means of the given
ILcdModelXYWorldTransformation
and ILcdGXYViewXYWorldTransformation
.
 Parameters:
aPoint
 the position at which the hot point is drawn (specified in model coordinates)
aModelXYWorldTransformation
 the transformation between model and world coordinates
aGXYViewXYWorldTransformation
 the transformation between world and view coordinates
aGraphics
 the Graphics onto which the hot point is drawn
 Throws:
TLcdOutOfBoundsException
 If the given model point is outside the valid area of the
given ILcdModelXYWorldTransformation
.

drawHotPoint
void drawHotPoint(double aX,
double aY,
Graphics aGraphics)
Draws a hot point at the given AWT point.
 Parameters:
aX
 the AWT x coordinate of the position at which the hot point is drawn
aY
 the AWT y coordinate of the position at which the hot point is drawn
aGraphics
 the Graphics onto which the hot point is drawn

clone
Object clone()