Package com.luciad.shape.shape2D
Class TLcd2DEditablePointListXYFloatArray
java.lang.Object
com.luciad.shape.shape2D.TLcd2DEditablePointListXYFloatArray
- All Implemented Interfaces:
ILcdPointList
,ILcd2DEditablePointList
,ILcdCloneable
,Serializable
,Cloneable
public class TLcd2DEditablePointListXYFloatArray
extends Object
implements ILcd2DEditablePointList, ILcdCloneable
This class provides an implementation of
ILcd2DEditablePointList
.
This implementation uses an array of the right size to store the coordinates
of the points, which is memory efficient, but inefficient for adding and
removing points.
This class is thread-safe for read-only access.
- See Also:
-
Constructor Summary
ConstructorDescriptionConstructs a new emptyTLcd2DEditablePointList
.TLcd2DEditablePointListXYFloatArray
(float[] aPoints, boolean aDeepCopy) Constructs a newTLcd2DEditablePointList
that is a copy of the givenILcd2DEditablePointList
.TLcd2DEditablePointListXYFloatArray
(TLcd2DEditablePointListXYFloatArray a2DEditablePointListXYFloatArray, boolean aDeepCopy) -
Method Summary
Modifier and TypeMethodDescriptionclone()
MakesObject.clone()
public.boolean
final ILcdPoint
getPoint
(int aIndex) Returns theILcdPoint
at a given index.final int
Returns the number ofILcdPoint
objects in the list.void
insert2DPoint
(int aIndex, double aX, double aY) Inserts a point at the given index into thisILcd2DEditablePointList
.void
insert2DPoint
(int aIndex, ILcd2DEditablePoint a2DEditablePoint) void
move2DPoint
(int aIndex, double aX, double aY) Moves the specified point of thisILcd2DEditablePointList
to the given point in the 2D space.void
removePointAt
(int aIndex) Removes the point at the given index from thisILcd2DEditablePointList
.void
translate2D
(double aDeltaX, double aDeltaY) Translates all the points of thisILcd2DEditablePointList
from their current positions over the given translation vector in the 2D space.void
translate2DPoint
(int aIndex, double aDeltaX, double aDeltaY) Translates the specified point of thisILcd2DEditablePointList
from its current position over the given translation vector in the 2D space.Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.luciad.shape.shape2D.ILcd2DEditablePointList
append2DPoint
Methods inherited from interface com.luciad.shape.ILcdPointList
getPointSFCT, getX, getY, getZ
-
Constructor Details
-
TLcd2DEditablePointListXYFloatArray
public TLcd2DEditablePointListXYFloatArray()Constructs a new emptyTLcd2DEditablePointList
. -
TLcd2DEditablePointListXYFloatArray
public TLcd2DEditablePointListXYFloatArray(float[] aPoints, boolean aDeepCopy) Constructs a newTLcd2DEditablePointList
that is a copy of the givenILcd2DEditablePointList
.- Parameters:
aPoints
- an array of x/y coordinates. Then
'th point is specified by the valuesaPoints[2n]
(the x) andaPoints[2n+1]
(the y).aDeepCopy
- a boolean indicating whether the individual points in the list should be cloned or just referenced.
-
TLcd2DEditablePointListXYFloatArray
public TLcd2DEditablePointListXYFloatArray(TLcd2DEditablePointListXYFloatArray a2DEditablePointListXYFloatArray, boolean aDeepCopy)
-
-
Method Details
-
getPointCount
public final int getPointCount()Description copied from interface:ILcdPointList
Returns the number ofILcdPoint
objects in the list.- Specified by:
getPointCount
in interfaceILcdPointList
- Returns:
- the number of
ILcdPoint
objects in the list.
-
getPoint
Description copied from interface:ILcdPointList
Returns theILcdPoint
at a given index.- Specified by:
getPoint
in interfaceILcdPointList
- Parameters:
aIndex
- a valid index in the list ofILcdPoint
objects.- Returns:
- the
ILcdPoint
at the given index.
-
translate2D
public void translate2D(double aDeltaX, double aDeltaY) Description copied from interface:ILcd2DEditablePointList
Translates all the points of thisILcd2DEditablePointList
from their current positions over the given translation vector in the 2D space. Only the first two dimensions of the points are considered. The third dimension is left unchanged.- Specified by:
translate2D
in interfaceILcd2DEditablePointList
- Parameters:
aDeltaX
- the x coordinate of the translation vector.aDeltaY
- the y coordinate of the translation vector.
-
move2DPoint
public void move2DPoint(int aIndex, double aX, double aY) Description copied from interface:ILcd2DEditablePointList
Moves the specified point of thisILcd2DEditablePointList
to the given point in the 2D space. Only the first two dimensions of theILcdShape
are considered. The third dimension is left unchanged.- Specified by:
move2DPoint
in interfaceILcd2DEditablePointList
- Parameters:
aIndex
- a valid index in the list of points.aX
- the x coordinate of the point.aY
- the y coordinate of the point.
-
translate2DPoint
public void translate2DPoint(int aIndex, double aDeltaX, double aDeltaY) Description copied from interface:ILcd2DEditablePointList
Translates the specified point of thisILcd2DEditablePointList
from its current position over the given translation vector in the 2D space. Only the first two dimensions of the points are considered. The third dimension is left unchanged.- Specified by:
translate2DPoint
in interfaceILcd2DEditablePointList
- Parameters:
aDeltaX
- the x coordinate of the translation vector.aDeltaY
- the y coordinate of the translation vector.
-
insert2DPoint
-
insert2DPoint
public void insert2DPoint(int aIndex, double aX, double aY) Description copied from interface:ILcd2DEditablePointList
Inserts a point at the given index into thisILcd2DEditablePointList
.- Specified by:
insert2DPoint
in interfaceILcd2DEditablePointList
- Parameters:
aIndex
- a valid new index in the list of points.aX
- the x coordinate of the new point.aY
- the y coordinate of the new point.
-
removePointAt
public void removePointAt(int aIndex) Description copied from interface:ILcd2DEditablePointList
Removes the point at the given index from thisILcd2DEditablePointList
.- Specified by:
removePointAt
in interfaceILcd2DEditablePointList
- Parameters:
aIndex
- a valid index in the list ofILcdPoint
objects.
-
equals
-
clone
Description copied from interface:ILcdCloneable
Makes
When for example extending fromObject.clone()
public.java.lang.Object
, it can be implemented like this:public Object clone() { try { return super.clone(); } catch ( CloneNotSupportedException e ) { // Cannot happen: extends from Object and implements Cloneable (see also Object.clone) throw new RuntimeException( e ); } }
- Specified by:
clone
in interfaceILcdCloneable
- Overrides:
clone
in classObject
- See Also:
-