Package com.luciad.ais.model.airspace
Class TLcdSubPointlistAirspaceSegment
java.lang.Object
com.luciad.ais.shape.TLcdAISPoint
com.luciad.ais.model.airspace.TLcdSubPointlistAirspaceSegment
- All Implemented Interfaces:
ILcdAirspaceSegment
,ILcdEditableAirspaceSegment
,ILcdGeoPathLeg
,ILcdBounded
,ILcdPoint
,ILcdShape
,ILcd2DEditablePoint
,ILcd2DEditableShape
,ILcd3DEditablePoint
,ILcd3DEditableShape
,ILcdCloneable
,Serializable
,Cloneable
public class TLcdSubPointlistAirspaceSegment
extends TLcdAISPoint
implements ILcdEditableAirspaceSegment
An implementation of an airspace segment that uses a
ILcdGeoPathLeg.SUB_POINT_LIST
as geopath leg type together with a shared subpointlist as dataset. When the memory is important,
this implementation is preferred over the normal TLcdAirspaceSegment
that copies the data.
A subpointlist can be set using the setSubPointlist()
method;
this method expects a ILcdPointList
instance as argument.
Note that this class extends TLcdAISPoint
, and so it is
required to set a delegate point implementation using the
setLocation()
method before using the airspace segment object.
- See Also:
-
Field Summary
Fields inherited from interface com.luciad.ais.shape.ILcdGeoPathLeg
ARC, ARC_BY_EDGE, CIRCLE_POINT, CIRCLE_RADIUS, GEODESIC_LINE, POINT, RHUMB_LINE, SUB_POINT_LIST
-
Constructor Summary
ConstructorDescriptionCreates a newTLcdSubPointlistAirspaceSegment
object. -
Method Summary
Modifier and TypeMethodDescriptionclone()
Creates and returns a copy of this object.int
Returns the number of parameters in the leg's data array.void
getDataSFCT
(double[] aDataSFCT) Copies the GeoPath leg's parameter list into theaDataSFCT
array.int
Returns the segment number of theILcdAirspaceSegment
object.Returns theILcdPointList
that is currently associated with this airspace segment.int
getType()
Returns the type of this GeoPath leg.void
setSegmentNumber
(int aSegmentNumber) Specifies the segment number of theILcdEditableAirspaceSegment
object.void
setSubPointlist
(ILcdPointList aPointlist) Sets the givenILcdPointList
instance as the subpointlist that is associated with this airspace segment.Methods inherited from class com.luciad.ais.shape.TLcdAISPoint
cloneAs2DEditablePoint, cloneAs3DEditablePoint, contains2D, contains2D, contains3D, contains3D, equals, getBounds, getCosX, getCosY, getFocusPoint, getSinX, getSinY, getTanX, getTanY, getX, getY, getZ, hashCode, move2D, move2D, move3D, move3D, setLocation, translate2D, translate3D
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.luciad.shape.ILcdBounded
getBounds
Methods inherited from interface com.luciad.shape.ILcdPoint
cloneAs2DEditablePoint, cloneAs3DEditablePoint, equals, getCosX, getCosY, getSinX, getSinY, getTanX, getTanY, getX, getY, getZ
Methods inherited from interface com.luciad.shape.ILcdShape
contains2D, contains2D, contains3D, contains3D, getFocusPoint
-
Constructor Details
-
TLcdSubPointlistAirspaceSegment
public TLcdSubPointlistAirspaceSegment()Creates a newTLcdSubPointlistAirspaceSegment
object.The geopath leg type is set to
ILcdGeoPathLeg.SUB_POINT_LIST
.
-
-
Method Details
-
setSubPointlist
Sets the givenILcdPointList
instance as the subpointlist that is associated with this airspace segment.- Parameters:
aPointlist
- The subpointlist that must be associated with this airspace segment.- Throws:
IllegalArgumentException
- if the supplied argument is null.
-
getSubPointlist
Returns theILcdPointList
that is currently associated with this airspace segment.- Returns:
- the
ILcdPointList
that is currently associated with this airspace segment.
-
setSegmentNumber
public void setSegmentNumber(int aSegmentNumber) Description copied from interface:ILcdEditableAirspaceSegment
Specifies the segment number of theILcdEditableAirspaceSegment
object. The segment number is application-defined and does not necessarily have to correspond with the index of the segment within containing airspace.- Specified by:
setSegmentNumber
in interfaceILcdEditableAirspaceSegment
- Parameters:
aSegmentNumber
- a segment number for theILcdEditableAirspaceSegment
object
-
getSegmentNumber
public int getSegmentNumber()Description copied from interface:ILcdAirspaceSegment
Returns the segment number of theILcdAirspaceSegment
object.- Specified by:
getSegmentNumber
in interfaceILcdAirspaceSegment
- Returns:
- the segment number of the
ILcdAirspaceSegment
object
-
getType
public int getType()Description copied from interface:ILcdGeoPathLeg
Returns the type of this GeoPath leg.- Specified by:
getType
in interfaceILcdGeoPathLeg
- Returns:
- one of the constants defined above
-
getDataLength
public int getDataLength()Description copied from interface:ILcdGeoPathLeg
Returns the number of parameters in the leg's data array. UsegetDataSFCT()
to obtain the contents of the parameter list.- Specified by:
getDataLength
in interfaceILcdGeoPathLeg
- Returns:
- the length of the leg's parameter list
-
getDataSFCT
public void getDataSFCT(double[] aDataSFCT) Description copied from interface:ILcdGeoPathLeg
Copies the GeoPath leg's parameter list into theaDataSFCT
array. The array must be sufficiently large! UsegetDataLength()
to determine the required size of the array.- Specified by:
getDataSFCT
in interfaceILcdGeoPathLeg
- Parameters:
aDataSFCT
- will receive the parameter list of this GeoPath leg.
-
clone
Creates and returns a copy of this object. The subpointlist is copied without being cloned.- Specified by:
clone
in interfaceILcdCloneable
- Overrides:
clone
in classTLcdAISPoint
- See Also:
-