public class TLcdGML32DirectPositionList extends TLcdDataObject implements com.luciad.internal.format.gmlcommon.ILcd3DEditablePointListWithSrs
posList instances (and other instances with the content model specified by DirectPositionListType) hold the coordinates for a sequence of direct positions within the same coordinate reference system (CRS).
if no srsName attribute is given, the CRS shall be specified as part of the larger context this geometry element is part of, typically a geometric object like a point, curve, etc.
The optional attribute count specifies the number of direct positions in the list. If the attribute count is present then the attribute srsDimension shall be present, too.
The number of entries in the list is equal to the product of the dimensionality of the coordinate reference system (i.e. it is a derived value of the coordinate reference system definition) and the number of direct positions.
Modifier and Type | Field and Description |
---|---|
static TLcdDataProperty |
COUNT_PROPERTY
Property that maps on the
count attribute. |
static TLcdDataProperty |
SRS_PROPERTY
Property that maps on the
SRSReferenceGroup attributes. |
static TLcdDataProperty |
VALUE_PROPERTY
Property that maps on the value defined by the simple content.
|
Constructor and Description |
---|
TLcdGML32DirectPositionList() |
TLcdGML32DirectPositionList(ILcdModelReference aSrs)
Constructs a direct position list and initializes its
model reference (srs).
|
TLcdGML32DirectPositionList(TLcdDataType aType) |
TLcdGML32DirectPositionList(TLcdDataType aDataType,
ILcdModelReference aSrs)
Constructs a direct position list and initializes its
model reference (srs).
|
Modifier and Type | Method and Description |
---|---|
Long |
getCount()
Gets the value of the
COUNT_PROPERTY property. |
ILcdPoint |
getPoint(int aIndex)
Returns the
ILcdPoint at a given index. |
int |
getPointCount()
Returns the number of
ILcdPoint objects in the list. |
ILcdModelReference |
getSrs()
Gets the value of the
SRS_PROPERTY property. |
ILcdDoubleList |
getValueObject()
Returns the value of the value property.
|
void |
insert2DPoint(int aIndex,
double aX,
double aY)
Inserts a point at the given index into this
ILcd2DEditablePointList . |
void |
insert3DPoint(int aIndex,
double aX,
double aY,
double aZ)
Inserts a point at the given index into this
ILcd3DEditablePointList . |
void |
move2DPoint(int aIndex,
double aX,
double aY)
Moves the specified point of this
ILcd2DEditablePointList to the given point in the 2D space. |
void |
move3DPoint(int aIndex,
double aX,
double aY,
double aZ)
Moves the specified point of this
ILcd3DEditablePointList to the given point in the 3D space. |
void |
removePointAt(int aIndex)
Removes the point at the given index from this
ILcd3DEditablePointList . |
void |
setCount(Long aValue)
Sets the value of the
COUNT_PROPERTY property. |
void |
setSrs(ILcdModelReference aValue)
Sets the value of the
SRS_PROPERTY property. |
void |
setValue(TLcdDataProperty aProperty,
Object aFeature)
Sets the value of the given property for this data object.
|
void |
setValueObject(ILcdDoubleList aValue)
Sets the value of the value property to the given value.
|
void |
translate2D(double aDeltaX,
double aDeltaY)
Translates all the points of this
ILcd2DEditablePointList 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 this
ILcd2DEditablePointList from its current position
over the given translation vector in the 2D space. |
void |
translate3D(double aDeltaX,
double aDeltaY,
double aDeltaZ)
Translates all the points of this
ILcd3DEditablePointList from their current positions
over the given translation vector in the 3D space. |
void |
translate3DPoint(int aIndex,
double aDeltaX,
double aDeltaY,
double aDeltaZ)
Translates the specified point of this
ILcd3DEditablePointList from its current position
over the given translation vector in the 3D space. |
clone, clone, getDataType, getValue, getValue, hasValue, hasValue, setValue, toString
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
append2DPoint
getPointSFCT, getX, getY, getZ
public static final TLcdDataProperty VALUE_PROPERTY
com.luciad.util.collections.ILcdDoubleList
.public static final TLcdDataProperty COUNT_PROPERTY
count
attribute. Acceptable values for this property are instances of java.lang.Long
.public static final TLcdDataProperty SRS_PROPERTY
SRSReferenceGroup
attributes. Acceptable values for this property are instances of ILcdModelReference
.public TLcdGML32DirectPositionList()
public TLcdGML32DirectPositionList(TLcdDataType aType)
public TLcdGML32DirectPositionList(ILcdModelReference aSrs)
aSrs
- the model reference for this objectsetSrs(ILcdModelReference)
public TLcdGML32DirectPositionList(TLcdDataType aDataType, ILcdModelReference aSrs)
aDataType
- the data type for this objectaSrs
- the model reference for this objectsetSrs(ILcdModelReference)
public ILcdDoubleList getValueObject()
public void setValueObject(ILcdDoubleList aValue)
aValue
- the value to setpublic Long getCount()
COUNT_PROPERTY
property.COUNT_PROPERTY
property.public void setCount(Long aValue)
COUNT_PROPERTY
property.aValue
- the value to set for the COUNT_PROPERTY
property.public ILcdModelReference getSrs()
SRS_PROPERTY
property.getSrs
in interface com.luciad.internal.format.gmlcommon.ILcd3DEditablePointListWithSrs
SRS_PROPERTY
property.public void setSrs(ILcdModelReference aValue)
SRS_PROPERTY
property.setSrs
in interface com.luciad.internal.format.gmlcommon.ILcd3DEditablePointListWithSrs
aValue
- the value to set for the SRS_PROPERTY
property.public void translate3D(double aDeltaX, double aDeltaY, double aDeltaZ)
ILcd3DEditablePointList
ILcd3DEditablePointList
from their current positions
over the given translation vector in the 3D space.translate3D
in interface ILcd3DEditablePointList
aDeltaX
- the x coordinate of the translation vector.aDeltaY
- the y coordinate of the translation vector.aDeltaZ
- the z coordinate of the translation vector.public void move3DPoint(int aIndex, double aX, double aY, double aZ)
ILcd3DEditablePointList
ILcd3DEditablePointList
to the given point in the 3D space.move3DPoint
in interface ILcd3DEditablePointList
aIndex
- a valid index in the list of points.aX
- the x coordinate of the point.aY
- the y coordinate of the point.aZ
- the z coordinate of the point.public void translate3DPoint(int aIndex, double aDeltaX, double aDeltaY, double aDeltaZ)
ILcd3DEditablePointList
ILcd3DEditablePointList
from its current position
over the given translation vector in the 3D space.translate3DPoint
in interface ILcd3DEditablePointList
aIndex
- a valid new index in the list of points.aDeltaX
- the x coordinate of the translation vector.aDeltaY
- the y coordinate of the translation vector.aDeltaZ
- the z coordinate of the translation vector.public void insert3DPoint(int aIndex, double aX, double aY, double aZ)
ILcd3DEditablePointList
ILcd3DEditablePointList
.insert3DPoint
in interface ILcd3DEditablePointList
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.aZ
- the z coordinate of the new point.public void removePointAt(int aIndex)
ILcd3DEditablePointList
ILcd3DEditablePointList
.removePointAt
in interface ILcd2DEditablePointList
removePointAt
in interface ILcd3DEditablePointList
aIndex
- a valid index in the list of ILcdPoint
objects.public void translate2D(double aDeltaX, double aDeltaY)
ILcd2DEditablePointList
ILcd2DEditablePointList
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.translate2D
in interface ILcd2DEditablePointList
aDeltaX
- the x coordinate of the translation vector.aDeltaY
- the y coordinate of the translation vector.public void move2DPoint(int aIndex, double aX, double aY)
ILcd2DEditablePointList
ILcd2DEditablePointList
to the given point in the 2D space. Only the first
two dimensions of the ILcdShape
are considered.
The third dimension is left unchanged.move2DPoint
in interface ILcd2DEditablePointList
aIndex
- a valid index in the list of points.aX
- the x coordinate of the point.aY
- the y coordinate of the point.public void translate2DPoint(int aIndex, double aDeltaX, double aDeltaY)
ILcd2DEditablePointList
ILcd2DEditablePointList
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.translate2DPoint
in interface ILcd2DEditablePointList
aDeltaX
- the x coordinate of the translation vector.aDeltaY
- the y coordinate of the translation vector.public void insert2DPoint(int aIndex, double aX, double aY)
ILcd2DEditablePointList
ILcd2DEditablePointList
.insert2DPoint
in interface ILcd2DEditablePointList
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.public int getPointCount()
ILcdPointList
ILcdPoint
objects in the list.getPointCount
in interface ILcdPointList
ILcdPoint
objects in the list.public ILcdPoint getPoint(int aIndex) throws IndexOutOfBoundsException
ILcdPointList
ILcdPoint
at a given index.getPoint
in interface ILcdPointList
aIndex
- a valid index in the list of ILcdPoint
objects.ILcdPoint
at the given index.IndexOutOfBoundsException
- if the given index is out of bounds.public void setValue(TLcdDataProperty aProperty, Object aFeature)
ILcdDataObject
Sets the value of the given property for this data object. The implementation is allowed to throw an exception if the given value can't be set.
The given property must be declared in thedata object's type
or in one of its super types. In
other words, getDataType().getProperties().contains( aProperty ) should always be true.
Otherwise, the implementation should throw an IllegalArgumentException
.setValue
in interface ILcdDataObject
setValue
in class TLcdDataObject
aProperty
- the property for which the value is to be setaFeature
- the value to setTLcdDataType.getProperty(String)