Interface ILcdGXYPen
 All Superinterfaces:
Serializable
 All Known Implementing Classes:
ALcdGXYPen
,TLcdGeodeticPen
,TLcdGridPen
,TLcdGXYPen
,TLcdProjectionPen
ILcdGXYView
.See
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:
 See Also:

Field Summary
Modifier and TypeFieldDescriptionstatic final int
constant representing a circle to be used as hot point shapestatic final int
constant representing a filled circle to be used as hot point shapestatic final int
constant representing a filled square to be used as hot point shapestatic final int
constant representing a horizontal cross to be used as hot point shapestatic final int
constant representing a vertical cross to be used as hot point shape 
Method Summary
Modifier and TypeMethodDescriptionvoid
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 givenILcdGeneralPath
.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 givenILcdAWTPath
.void
appendGeneralPath
(ILcdGeneralPath aGeneralPath, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT) Appends the givenILcdGeneralPath
to the givenILcdAWTPath
.void
appendHorizontalLineTo
(double aDeltaX, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGeneralPath aGeneralPathSFCT) Appends a horizontal line starting from the current position to the givenILcdGeneralPath
.void
appendHorizontalLineTo
(double aDeltaX, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT) Appends a horizontal line starting from the current position to the givenILcdAWTPath
.void
appendLineTo
(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGeneralPath aGeneralPathSFCT) Appends a line from the current position to the given model point to the givenILcdGeneralPath
.void
appendLineTo
(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT) Appends a line from the current position to the given model point to the givenILcdAWTPath
.void
appendPointList
(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGeneralPath aGeneralPathSFCT) Appends a polyline to the givenILcdGeneralPath
.void
appendPointList
(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT) Appends a polyline to the givenILcdAWTPath
.void
appendVerticalLineTo
(double aDeltaY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGeneralPath aGeneralPathSFCT) Appends a vertical line starting from the current position to the givenILcdGeneralPath
.void
appendVerticalLineTo
(double aDeltaY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT) Appends a vertical line starting from the current position to the givenILcdAWTPath
.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.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 givenGraphics
.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 givenGraphics
.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 givenGraphics
.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 givenGraphics
.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 givenGraphics
.void
drawLineTo
(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) Draws a line from the current position to the given model point onto the givenGraphics
.void
drawPolygon
(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) Draws a polygon onto the givenGraphics
.void
drawPolyline
(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) Draws a polyline onto the givenGraphics
.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 givenGraphics
.void
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 givenGraphics
.int
Gets the hot point shape currently used by thisILcdGXYPen
.int
Gets the hot point size currently used by thisILcdGXYPen
.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 givenILcdPointList
which is touched by the given AWT point.int
getX()
Gets the AWT x coordinate of the current position of thisILcdGXYPen
.default double
Gets the AWT x coordinate of the current position of thisILcdGXYPen
.int
getY()
Gets the AWT y coordinate of the current position of thisILcdGXYPen
.default double
Gets the AWT y coordinate of the current position of thisILcdGXYPen
.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
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.

Field Details

FILLED_SQUARE
static final int FILLED_SQUAREconstant representing a filled square to be used as hot point shape See Also:

VERTICAL_CROSS
static final int VERTICAL_CROSSconstant representing a vertical cross to be used as hot point shape See Also:

HORIZONTAL_CROSS
static final int HORIZONTAL_CROSSconstant representing a horizontal cross to be used as hot point shape See Also:

CIRCLE
static final int CIRCLEconstant representing a circle to be used as hot point shape See Also:

FILLED_CIRCLE
static final int FILLED_CIRCLEconstant representing a filled circle to be used as hot point shape See Also:


Method Details

getX
int getX()Gets the AWT x coordinate of the current position of thisILcdGXYPen
. Returns:
 the AWT x coordinate of the current position of this
ILcdGXYPen

getY
int getY()Gets the AWT y coordinate of the current position of thisILcdGXYPen
. Returns:
 the AWT y coordinate of the current position of this
ILcdGXYPen

getXAsDouble
default double getXAsDouble()Gets the AWT x coordinate of the current position of thisILcdGXYPen
. Returns:
 the AWT x coordinate of the current position of this
ILcdGXYPen
 Since:
 2019.0

getYAsDouble
default double getYAsDouble()Gets the AWT y coordinate of the current position of thisILcdGXYPen
. Returns:
 the AWT y coordinate of the current position of this
ILcdGXYPen
 Since:
 2019.0

moveTo
void moveTo(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException Moves the current position by setting its model coordinates to the given model point. The world and AWT coordinates of the current position are updated by means of the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
.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
, ordrawVerticalLineTo
methods or in case one adds a line to an empty (sub)path with one of theappendLineTo
oraccumulateLineTo
methods.Note that this method does not create a line break.
 Parameters:
aPoint
 the model point to which the current position is movedaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinates Throws:
TLcdOutOfBoundsException
 If the given point is outside the valid area of the givenILcdModelXYWorldTransformation
.

moveTo
void moveTo(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation) throws TLcdOutOfBoundsException Moves the current position by setting its model coordinates to the given model point. The world coordinates of the current position are updated by means of the givenILcdModelXYWorldTransformation
.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
, ordrawVerticalLineTo
methods or in case one adds a line to an empty (sub)path with one of theappendLineTo
oraccumulateLineTo
methods.Note that this method does not create a line break.
 Parameters:
aPoint
 the model point to which the current position is movedaModelXYWorldTransformation
 the transformation between model and world coordinates Throws:
TLcdOutOfBoundsException
 If the given point is outside the valid area of the givenILcdModelXYWorldTransformation
.

moveTo
void moveTo(double aX, double aY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException Moves the current position by setting its AWT coordinates to the given AWT point. The world and model coordinates of the current position are updated by means of the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
.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
, ordrawVerticalLineTo
methods or in case one adds a line to an empty (sub)path with one of theappendLineTo
oraccumulateLineTo
methods.Note that this method does not create a line break.
 Parameters:
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 coordinates Throws:
TLcdOutOfBoundsException
 If the given point is outside the valid area of the givenILcdModelXYWorldTransformation
.

translateOf
void translateOf(double aDeltaX, double aDeltaY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException Translates the AWT coordinates of the current position. The world and model coordinates of the current position are updated by means of the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
.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
, ordrawVerticalLineTo
methods or in case one adds a line to an empty (sub)path with one of theappendLineTo
oraccumulateLineTo
methods.Note that this method does not create a line break.
 Parameters:
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 coordinates Throws:
TLcdOutOfBoundsException
 If the translated point is outside the valid area of the givenILcdModelXYWorldTransformation

resetPosition
void resetPosition()Makes the current position undefined so that it is not involved in the next drawing or append/accumulate operation. 
drawLineTo
void drawLineTo(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException Draws a line from the current position to the given model point onto the givenGraphics
. The given model coordinates of the end point of the line are transformed to AWT coordinates by applying the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. Parameters:
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 drawn Throws:
TLcdOutOfBoundsException
 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.

drawLineTo
void drawLineTo(double aX, double aY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException Draws a line from the current position to the given AWT point onto the givenGraphics
. The given AWT coordinates of the end point of the line are transformed to model coordinates by applying the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. Parameters:
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 drawn Throws:
TLcdOutOfBoundsException
 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.

drawHorizontalLineTo
void drawHorizontalLineTo(double aDeltaX, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException Draws a horizontal line from the current position to the given model point onto the givenGraphics
. 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 givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. Parameters:
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 drawn Throws:
TLcdOutOfBoundsException
 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.

drawVerticalLineTo
void drawVerticalLineTo(double aDeltaY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException Draws a vertical line from the current position to the given model point onto the givenGraphics
. 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 givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. Parameters:
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 drawn Throws:
TLcdOutOfBoundsException
 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.

emptyAccumulated
void emptyAccumulated()Clears the accumulated internal path. See Also:

accumulateLineTo
void accumulateLineTo(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException Accumulates a line from the current position to the given model point to the internally stored path. The given model coordinates of the end point of the line are transformed to AWT coordinates by means of the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
.Note that nothing is painted yet.
 Parameters:
aPoint
 the end point (specified in model coordinates) of the lineaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinates Throws:
TLcdOutOfBoundsException
 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. See Also:

accumulateHorizontalLineTo
void accumulateHorizontalLineTo(double aDeltaX, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException Accumulates a horizontal line starting from the current position to the internally stored path. 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 givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
.Note that nothing is painted yet.
 Parameters:
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 coordinates Throws:
TLcdOutOfBoundsException
 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.

accumulateVerticalLineTo
void accumulateVerticalLineTo(double aDeltaY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException Accumulates a vertical line starting from the current position to the internally stored path. 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 givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
.Note that nothing is painted yet.
 Parameters:
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 coordinates Throws:
TLcdOutOfBoundsException
 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.

accumulatePointList
void accumulatePointList(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException Accumulates a polyline to the internally stored path. The polyline is given as anILcdPointList
of which the points are specified in model coordinates. These model coordinates are transformed to AWT coordinates by means of the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
.Note that nothing is painted yet.
 Parameters:
aPointList
 the point list (specified in model coordinates)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinates Throws:
TLcdOutOfBoundsException
 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. See Also:

accumulateArc
void accumulateArc(ILcdPoint aCenter, double aA, double aB, double aRotAngle, double aStartAngle, double aArcAngle, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException Accumulates a polyline approximation of the given arc to the internally stored path. The arc is specified as a segment of the circumference of an ellipse. The givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
are used to transform model coordinates to AWT coordinates.Note that nothing is painted yet.
 Parameters:
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 coordinates Throws:
TLcdOutOfBoundsException
 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. See Also:

drawAccumulatedPolyline
Draws the points stored in the internal path as a polyline. IfaEmptyAccumulated
istrue
, the internal path is cleared after the drawing operation. Parameters:
aGraphics
 theGraphics
onto which the polyline is drawnaEmptyAccumulated
 boolean indicating whether the internal path should be cleared

drawAccumulatedPolygon
Draws the points stored in the internal path as a polygon. IfaEmptyAccumulated
istrue
, the internal path is cleared after the drawing operation. Parameters:
aGraphics
 theGraphics
onto which the polyline is drawnaEmptyAccumulated
 boolean indicating whether the internal path should be cleared

fillAccumulatedPolygon
Draws the points stored in the internal path as a filled polygon. IfaEmptyAccumulated
istrue
, the internal path is cleared after the drawing operation. Parameters:
aGraphics
 theGraphics
onto which the polyline is drawnaEmptyAccumulated
 boolean indicating whether the internal path should be cleared

appendLineTo
void appendLineTo(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT) Appends a line from the current position to the given model point to the givenILcdAWTPath
. The given model coordinates of the end point of the line are transformed to AWT coordinates by means of the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. If this model point is outside the valid area of the givenILcdModelXYWorldTransformation
, a line break is appended to the givenILcdAWTPath
. Parameters:
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 appended

appendHorizontalLineTo
void appendHorizontalLineTo(double aDeltaX, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT) Appends a horizontal line starting from the current position to the givenILcdAWTPath
. 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 givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. If this model point is outside the valid area of the givenILcdModelXYWorldTransformation
, a line break is appended to the givenILcdAWTPath
. In case the current position is undefined, nothing is appended. Parameters:
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 appended

appendVerticalLineTo
void appendVerticalLineTo(double aDeltaY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT) Appends a vertical line starting from the current position to the givenILcdAWTPath
. 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 givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. If this model point is outside the valid area of the givenILcdModelXYWorldTransformation
, a line break is appended to the givenILcdAWTPath
. In case the current position is undefined, nothing is appended. Parameters:
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 appended

appendPointList
void appendPointList(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT) Appends a polyline to the givenILcdAWTPath
. The polyline is given as anILcdPointList
of which the points are specified in model coordinates. These model coordinates are transformed to AWT coordinates by means of the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. If a model point is outside the valid area of the givenILcdModelXYWorldTransformation
, a line break is appended to the givenILcdAWTPath
so that the polyline is split. Parameters:
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 appended

appendArc
void appendArc(ILcdPoint aCenter, double aA, double aB, double aRotAngle, double aStartAngle, double aArcAngle, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT) throws TLcdOutOfBoundsException Appends a polyline approximation of the given arc to the givenILcdAWTPath
. The arc is specified as a segment of the circumference of an ellipse. The givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
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 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 appended Throws:
TLcdOutOfBoundsException
 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. See Also:

appendGeneralPath
void appendGeneralPath(ILcdGeneralPath aGeneralPath, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, ILcdAWTPath aAWTPathSFCT) Appends the givenILcdGeneralPath
to the givenILcdAWTPath
. The world coordinates of the points stored in the givenILcdGeneralPath
are transformed to AWT coordinates by means of the givenILcdGXYViewXYWorldTransformation
. 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. Parameters:
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 appended

appendLineTo
void appendLineTo(ILcdPoint aPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGeneralPath aGeneralPathSFCT) Appends a line from the current position to the given model point to the givenILcdGeneralPath
. The given model coordinates of the end point of the line are transformed to world coordinates by means of the givenILcdModelXYWorldTransformation
. If this point is outside the valid area of the transformation, a line break is appended to the givenILcdGeneralPath
. Parameters:
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 appended

appendHorizontalLineTo
void appendHorizontalLineTo(double aDeltaX, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGeneralPath aGeneralPathSFCT) Appends a horizontal line starting from the current position to the givenILcdGeneralPath
. 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 givenILcdModelXYWorldTransformation
. If this point is outside the valid area of this transformation, a line break is appended to the givenILcdGeneralPath
. In case the current position is undefined, nothing is appended. Parameters:
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 appended

appendVerticalLineTo
void appendVerticalLineTo(double aDeltaY, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGeneralPath aGeneralPathSFCT) Appends a vertical line starting from the current position to the givenILcdGeneralPath
. 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 givenILcdModelXYWorldTransformation
. If this point is outside the valid area of this transformation, a line break is appended to the givenILcdGeneralPath
. In case the current position is undefined, nothing is appended. Parameters:
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 appended

appendPointList
void appendPointList(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGeneralPath aGeneralPathSFCT) Appends a polyline to the givenILcdGeneralPath
. The polyline is given as anILcdPointList
of which the points are specified in model coordinates. These model coordinates are transformed to world coordinates by means of the givenILcdModelXYWorldTransformation
. If a model point is outside the valid area of this transformation, a line break is appended to the givenILcdGeneralPath
so that the polyline is split. Parameters:
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 appended

appendArc
void appendArc(ILcdPoint aCenter, double aA, double aB, double aRotAngle, double aStartAngle, double aArcAngle, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGeneralPath aGeneralPathSFCT) throws TLcdOutOfBoundsException Appends a polyline approximation of the given arc to the givenILcdGeneralPath
. The arc is specified as a segment of the circumference of an ellipse. The givenILcdModelXYWorldTransformation
is used to transform model coordinates to world coordinates. Parameters:
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 appended Throws:
TLcdOutOfBoundsException
 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. See Also:

drawLine
void drawLine(ILcdPoint aFromPoint, ILcdPoint aToPoint, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException Draws a line between the two given model points onto the givenGraphics
. The model coordinates of the end points of the line are transformed to AWT coordinates by applying the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. Parameters:
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 drawn Throws:
TLcdOutOfBoundsException
 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.

drawPolyline
void drawPolyline(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException Draws a polyline onto the givenGraphics
. The polyline is given as anILcdPointList
of which the points are specified in model coordinates. These model coordinates are transformed to AWT coordinates by means of the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. Parameters:
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 drawn Throws:
TLcdOutOfBoundsException
 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.

drawPolygon
void drawPolygon(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException Draws a polygon onto the givenGraphics
. The polygon is given as anILcdPointList
of which the points are specified in model coordinates. These model coordinates are transformed to AWT coordinates by means of the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. Parameters:
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 drawn Throws:
TLcdOutOfBoundsException
 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.

fillPolygon
void fillPolygon(ILcdPointList aPointList, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException Draws a filled polygon onto the givenGraphics
. The polygon is given as anILcdPointList
of which the points are specified in model coordinates. These model coordinates are transformed to AWT coordinates by means of the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. Parameters:
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 drawn Throws:
TLcdOutOfBoundsException
 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.

drawArc
void drawArc(ILcdPoint aCenter, double aA, double aB, double aRotAngle, double aStartAngle, double aArcAngle, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException Draws an arc onto the givenGraphics
. The arc is specified as a segment of the circumference of an ellipse. The givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
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 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 drawn Throws:
TLcdOutOfBoundsException
 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. See Also:

drawArc
void drawArc(double aCenterX, double aCenterY, double aStartX, double aStartY, double aArcAngle, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation, Graphics aGraphics) throws TLcdOutOfBoundsException Draws a circular arc onto the givenGraphics
. 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 givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
are used to transform between model coordinates and AWT coordinates. Parameters:
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 drawn Throws:
TLcdOutOfBoundsException
 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.

modelDistance
double modelDistance(double aX1, double aY1, double aX2, double aY2, ILcdModelXYWorldTransformation aModelXYWorldTransformation, ILcdGXYViewXYWorldTransformation aGXYViewXYWorldTransformation) throws TLcdOutOfBoundsException Calculates the model distance between the two given points expressed in AWT coordinates. These AWT coordinates are transformed to model coordinates by means of the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. Parameters:
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 coordinates Returns:
 the distance between the two given points within the model coordinate system
 Throws:
TLcdOutOfBoundsException
 If one of the two given points is outside the valid area of the givenILcdModelXYWorldTransformation
.

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 givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. 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 coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaBoundsSFCT
 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 givenILcdModelXYWorldTransformation
.

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 anILcdPointList
of which the points are specified in model coordinates. These model coordinates are transformed to AWT coordinates by means of the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. Parameters:
aPointList
 the point list (specified in model coordinates)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaBoundsSFCT
 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 givenILcdModelXYWorldTransformation
.

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 givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
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 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 coordinatesaBoundsSFCT
 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 givenILcdModelXYWorldTransformation
 See Also:

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 sizeaSensitivity
centered on the AWT coordinates of the given model point. These AWT coordinates are obtained from the given model coordinates by means of the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. Parameters:
aPoint
 the model pointaX
 the xcoordinate of the AWT pointaY
 the ycoordinate of the AWT pointaSensitivity
 the allowed tolerance (expressed in pixels)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 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 givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. 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 pointaY
 the ycoordinate of the AWT pointaIncludeHotPoint
 boolean indicating whether to include the hot pointsaSensitivity
 the allowed tolerance (expressed in pixels)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 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 givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. 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 translatedaX
 the xcoordinate of the AWT pointaY
 the ycoordinate of the AWT pointaIncludeHotPoint
 boolean indicating whether to include the hot pointsaSensitivity
 the allowed tolerance (expressed in pixels)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 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 givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. 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 translatedaX
 the xcoordinate of the AWT pointaY
 the ycoordinate of the AWT pointaIncludeHotPoint
 boolean indicating whether to include the hot pointsaSensitivity
 the allowed tolerance (expressed in pixels)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 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 givenILcdPointList
which is touched by the given AWT point. IfaAsPolygon
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 theILcdPointList
) is taken into account as well. Parameters:
aPointList
 the point list defining the line segmentsaAsPolygon
 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 pointaY
 the ycoordinate of the AWT pointaIncludeHotPoints
 boolean indicating whether to include the hot pointsaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 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 givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
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 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 angleaX
 the xcoordinate of the AWT pointaY
 the ycoordinate of the AWT pointaSensitivity
 the allowed tolerance (expressed in pixels)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinates Returns:
 a boolean indicating whether the given arc is touched by the given AWT point
 See Also:

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 anILcdPointList
containing points specified in model coordinates. Model coordinates are transformed to AWT coordinates by means of the givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. Parameters:
aPointList
 the point list defining a polygonaX
 the xcoordinate of the AWT pointaY
 the ycoordinate of the AWT pointaModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 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
int getHotPointShape()Gets the hot point shape currently used by thisILcdGXYPen
. Returns:
 the hot point shape currently used by this
ILcdGXYPen
 See Also:

getHotPointSize
int getHotPointSize()Gets the hot point size currently used by thisILcdGXYPen
. 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
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:

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 givenILcdModelXYWorldTransformation
andILcdGXYViewXYWorldTransformation
. Parameters:
aPoint
 the position at which the hot point is drawn (specified in model coordinates)aModelXYWorldTransformation
 the transformation between model and world coordinatesaGXYViewXYWorldTransformation
 the transformation between world and view coordinatesaGraphics
 the Graphics onto which the hot point is drawn Throws:
TLcdOutOfBoundsException
 If the given model point is outside the valid area of the givenILcdModelXYWorldTransformation
.

drawHotPoint
Draws a hot point at the given AWT point. Parameters:
aX
 the AWT x coordinate of the position at which the hot point is drawnaY
 the AWT y coordinate of the position at which the hot point is drawnaGraphics
 the Graphics onto which the hot point is drawn

clone
Object clone()
