Class TLcdParachuteJumpArea
- All Implemented Interfaces:
ILcdEditableParachuteJumpArea,ILcdParachuteJumpArea,ILcdGeoPath,ILcdDataObject,ILcdBounded,ILcdCurve,ILcdPointList,ILcdPolygon,ILcdRing,ILcdShape,ILcdCloneable,Serializable,Cloneable
- Direct Known Subclasses:
TLcdFeaturedParachuteJumpArea
ILcdParachuteJumpArea.
This implementation performs a discretization of the parachute jump area in geodetic coordinates.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final TLcdDataPropertyThe Segments property of the airspace.Fields inherited from interface com.luciad.shape.ILcdCurve
INTERPOLATION_CIRCLE_BY_3POINTS, INTERPOLATION_CIRCLE_BY_CENTERPOINT, INTERPOLATION_CIRCULARARC_BY_3POINTS, INTERPOLATION_CIRCULARARC_BY_BULGE, INTERPOLATION_CIRCULARARC_BY_CENTERPOINT, INTERPOLATION_ELLIPTICAL, INTERPOLATION_GEODESIC, INTERPOLATION_LINEAR, INTERPOLATION_MIXED, INTERPOLATION_RHUMBFields inherited from interface com.luciad.shape.ILcdPolygon
CLOCKWISE, COUNTERCLOCKWISE, INVALID_ORIENTATION -
Constructor Summary
ConstructorsConstructorDescriptionDeprecated.TLcdParachuteJumpArea(TLcdParachuteJumpArea aParachuteJumpArea) Copy constructor.TLcdParachuteJumpArea(TLcdDataType aDataType) Creates a new instance for the given type. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddSegment(ILcdParachuteJumpAreaSegment aSegment) Adds a segment to this parachute jump area.clone()Returns a clone of thisTLcdParachuteJumpAreaobject.voidcomputePointSFCT(double aParam, ILcd3DEditablePoint aPointSFCT) Computes a point of the curve, defined by the given parameter.booleancontains2D(double aLon, double aLat) Checks whether thisILcdShapecontains the given point in the 2D space.booleancontains2D(ILcdPoint aPoint) Checks whether thisILcdShapecontains the givenILcdPointin the 2D space.booleancontains3D(double aLon, double aLat, double aHeight) Checks whether thisILcdShapecontains the given point in the 3D space.booleancontains3D(ILcdPoint aPoint) Checks whether thisILcdShapecontains the givenILcdPointin the 3D space.Returns theILcdBoundsby which the geometry of thisILcdBoundedobject is bounded.Returns the type of this data object.Retrieves the end point of the curve.doubleReturns the angle of the curve's tangent at the end point, in degrees counterclockwise from the direction at 3 o'clock.Returns the focus point of thisILcdShape.Returns the interpolation method used by this curve.getLeg(int i) Returns theILcdGeoPathLegat the given index.intReturns the number of legs in thisILcdGeoPath.doublegetLength2D(double aParam1, double aParam2) Returns the length between two points of the curve, defined by the given parameters.intReturns the number of intersections between this curve and a line segment defined by the two specified points.intReturns the orientation of thisILcdPolygon:ILcdPolygon.CLOCKWISEorILcdPolygon.COUNTERCLOCKWISE.getPoint(int i) Returns theILcdPointat a given index.intReturns the number ofILcdPointobjects in the list.getSegment(int aSegmentNumber) Returns theILcdParachuteJumpAreaSegmentwith the given segment number.Retrieves the start point of the curve.doubleReturns the angle of the curve's tangent at the start point, in degrees counterclockwise from the direction at 3 o'clock.doublegetTangent2D(double aParam) Returns the angle of the curve's tangent in the point defined by the given parameter, in degrees counterclockwise from the direction at 3 o'clock.getValue(TLcdDataProperty aProperty) Returns the value of the given property.Convenience method that returns the value of the property with the given name.booleanhasValue(TLcdDataProperty aProperty) Indicates whether this data object has a value for the given property.booleanIndicates whether this data object has a value for the given property.voidDiscards the geometry cached with this parachute jump area and recalculates it.voidremoveSegment(ILcdParachuteJumpAreaSegment aSegment) voidsetValue(TLcdDataProperty aProperty, Object aValue) Sets the value of the given property for this data object.voidConvenience method that sets the value of the property with the given name.Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.luciad.shape.ILcdPointList
getPointSFCT, getX, getY, getZ
-
Field Details
-
SEGMENTS
The Segments property of the airspace. Values for this property are lists of objects of typeILcdParachuteJumpAreaSegment.
-
-
Constructor Details
-
TLcdParachuteJumpArea
Deprecated.Constructs a newTLcdParachuteJumpAreaobject. -
TLcdParachuteJumpArea
Copy constructor.- Parameters:
aParachuteJumpArea- the parachute jump area to be copied into a new object
-
TLcdParachuteJumpArea
Creates a new instance for the given type.- Parameters:
aDataType- the data type of the returned instance- Throws:
IllegalArgumentException- ifTLcdAISDataTypes.ParachuteJumpAreais not assignable from the given data type- Since:
- 10.1
- See Also:
-
-
Method Details
-
getDataType
Description copied from interface:ILcdDataObjectReturns the type of this data object. This can never benull.- Specified by:
getDataTypein interfaceILcdDataObject- Returns:
- the type of this data object
-
getValue
Description copied from interface:ILcdDataObjectReturns the value of the given property.
If the property is a collection, the returned value will never be null. If the property has not been set, an empty collection of the appropriate type will be returned (Set, List or Map).
The property must not be null, and must be declared in the
data object's typeor in one of its super types. Otherwise anIllegalArgumentExceptionis thrown.- Specified by:
getValuein interfaceILcdDataObject- Parameters:
aProperty- the property for which the value is to be returned- Returns:
- the value of the given property for this data object
-
getValue
Description copied from interface:ILcdDataObjectConvenience method that returns the value of the property with the given name.
If more than one property exists with the given name, the most specific property should be used (this is the property defined by the most specialized type in this object's data type hierarchy). SeeILcdDataObject.getValue(TLcdDataProperty)for more information.- Specified by:
getValuein interfaceILcdDataObject- Parameters:
aPropertyName- the name of the property of which the value is to be returned- Returns:
- the value of the property with the given name
- See Also:
-
setValue
Description copied from interface:ILcdDataObjectSets 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 typeor in one of its super types. In other words, getDataType().getProperties().contains( aProperty ) should always be true. Otherwise, the implementation should throw anIllegalArgumentException.- Specified by:
setValuein interfaceILcdDataObject- Parameters:
aProperty- the property for which the value is to be setaValue- the value to set- See Also:
-
setValue
Description copied from interface:ILcdDataObjectConvenience method that sets the value of the property with the given name.
If more than one property exists with the given name, the most specific property should be used (this is the property defined by the most specialized type in this object's data type hierarchy). SeeILcdDataObject.setValue(TLcdDataProperty, Object)for more information.- Specified by:
setValuein interfaceILcdDataObject- Parameters:
aPropertyName- the name of the property of which the value is to be setaValue- the value to set
-
hasValue
Description copied from interface:ILcdDataObjectIndicates whether this data object has a value for the given property.aPropertyis from theright data type, and this instance has a value for it: returnstrueaPropertyis from theright data type, and this instance has no value for it: returnsfalseaPropertyis not from theright data type: not allowed, you will get IllegalArgumentExceptionaPropertyisnull: not allowed, you will get NullPointerException
- Specified by:
hasValuein interfaceILcdDataObject- Parameters:
aProperty- the property for which to return whether a value is present or not.- Returns:
trueif this data object has a value for the given property,falseotherwise.
-
hasValue
Description copied from interface:ILcdDataObjectIndicates whether this data object has a value for the given property.
SeeILcdDataObject.hasValue(TLcdDataProperty)for more information.- Specified by:
hasValuein interfaceILcdDataObject- Parameters:
aPropertyName- the name of the property for which to return whether a value is present or not.- Returns:
trueif this data object has a value for the property with the given name,falseotherwise.
-
getSegment
Description copied from interface:ILcdParachuteJumpAreaReturns theILcdParachuteJumpAreaSegmentwith the given segment number.- Specified by:
getSegmentin interfaceILcdParachuteJumpArea- Parameters:
aSegmentNumber-
-
addSegment
Description copied from interface:ILcdEditableParachuteJumpAreaAdds a segment to this parachute jump area.- Specified by:
addSegmentin interfaceILcdEditableParachuteJumpArea- Parameters:
aSegment- the segment to be added.
-
removeSegment
-
contains2D
Description copied from interface:ILcdShapeChecks whether thisILcdShapecontains the givenILcdPointin the 2D space. Only the first two dimensions of theILcdShapeand theILcdPointare considered.- Specified by:
contains2Din interfaceILcdShape- Parameters:
aPoint- theILcdPointto test.- Returns:
- the boolean result of the containment test.
- See Also:
-
contains2D
public boolean contains2D(double aLon, double aLat) Description copied from interface:ILcdShapeChecks whether thisILcdShapecontains the given point in the 2D space. Only the first two dimensions of theILcdShapeare considered.- Specified by:
contains2Din interfaceILcdShape- Parameters:
aLon- the x coordinate of the point.aLat- the y coordinate of the point.- Returns:
- the boolean result of the containment test.
-
contains3D
Description copied from interface:ILcdShapeChecks whether thisILcdShapecontains the givenILcdPointin the 3D space.- Specified by:
contains3Din interfaceILcdShape- Parameters:
aPoint- theILcdPointto test.- Returns:
- the boolean result of the containment test.
- See Also:
-
contains3D
public boolean contains3D(double aLon, double aLat, double aHeight) Description copied from interface:ILcdShapeChecks whether thisILcdShapecontains the given point in the 3D space.- Specified by:
contains3Din interfaceILcdShape- Parameters:
aLon- the x coordinate of the point.aLat- the y coordinate of the point.aHeight- the z coordinate of the point.- Returns:
- the boolean result of the containment test.
-
clone
Returns a clone of thisTLcdParachuteJumpAreaobject. Note: the features of the new object are a shallow clone of the features of this object.- Specified by:
clonein interfaceILcdCloneable- Overrides:
clonein classObject- Returns:
- a clone of this
TLcdParachuteJumpAreaobject. - See Also:
-
getFocusPoint
Description copied from interface:ILcdShapeReturns the focus point of thisILcdShape.- Specified by:
getFocusPointin interfaceILcdShape- Returns:
- the focus point of this
ILcdShape.
-
getBounds
Description copied from interface:ILcdBoundedReturns theILcdBoundsby which the geometry of thisILcdBoundedobject is bounded.If the geometry does not allow retrieving valid bounds (for example a polyline with 0 points) the return value is unspecified. It is highly recommended to return an
undefinedbounds. You can create undefined bounds using the default constructors ofTLcdLonLatBoundsorTLcdXYBounds.- Specified by:
getBoundsin interfaceILcdBounded- Returns:
- the
ILcdBoundsby which the geometry of thisILcdBoundedobject is bounded.
-
getLeg
Description copied from interface:ILcdGeoPathReturns theILcdGeoPathLegat the given index.- Specified by:
getLegin interfaceILcdGeoPath- Parameters:
i- an index.- Returns:
- The
ILcdGeoPathLegat the given index.
-
getLegCount
public int getLegCount()Description copied from interface:ILcdGeoPathReturns the number of legs in thisILcdGeoPath.- Specified by:
getLegCountin interfaceILcdGeoPath- Returns:
- The number of legs in this
ILcdGeoPath.
-
getOrientation
public int getOrientation()Description copied from interface:ILcdPolygonReturns the orientation of thisILcdPolygon:ILcdPolygon.CLOCKWISEorILcdPolygon.COUNTERCLOCKWISE.- Specified by:
getOrientationin interfaceILcdPolygon- Returns:
- the orientation of this
ILcdPolygon:ILcdPolygon.CLOCKWISEorILcdPolygon.COUNTERCLOCKWISE. This method should not returnINVALID_ORIENTATION, which is only to be used for resetting the orientation so that it can be recalculated.
-
getPointCount
public int getPointCount()Description copied from interface:ILcdPointListReturns the number ofILcdPointobjects in the list.- Specified by:
getPointCountin interfaceILcdPointList- Returns:
- the number of
ILcdPointobjects in the list.
-
getPoint
Description copied from interface:ILcdPointListReturns theILcdPointat a given index.- Specified by:
getPointin interfaceILcdPointList- Parameters:
i- a valid index in the list ofILcdPointobjects.- Returns:
- the
ILcdPointat the given index. - Throws:
IndexOutOfBoundsException- if the given index is out of bounds.
-
invalidate
public void invalidate()Discards the geometry cached with this parachute jump area and recalculates it. Whenever this is done, the ILcdModel containing this parachute jump area should be notified by means of a call to elementChanged()! -
getStartPoint
Description copied from interface:ILcdCurveRetrieves the start point of the curve.This is equivalent to
computePointSFCT(0).- Specified by:
getStartPointin interfaceILcdCurve- Returns:
- the start point of the curve
-
getEndPoint
Description copied from interface:ILcdCurveRetrieves the end point of the curve.This is equivalent to
computePointSFCT(1).- Specified by:
getEndPointin interfaceILcdCurve- Returns:
- the end point of the curve
-
getStartTangent2D
public double getStartTangent2D()Description copied from interface:ILcdCurveReturns the angle of the curve's tangent at the start point, in degrees counterclockwise from the direction at 3 o'clock.The tangent orientation is from the start point towards the rest of the shape.
This is the same as
getTangent2D(0).- Specified by:
getStartTangent2Din interfaceILcdCurve- Returns:
- the curve's angle in the start point
-
getEndTangent2D
public double getEndTangent2D()Description copied from interface:ILcdCurveReturns the angle of the curve's tangent at the end point, in degrees counterclockwise from the direction at 3 o'clock.The tangent orientation is from the end point, away from the curve before it.
This is the same as
getTangent2D(1).- Specified by:
getEndTangent2Din interfaceILcdCurve- Returns:
- the curve's angle in the end point
-
getTangent2D
public double getTangent2D(double aParam) Description copied from interface:ILcdCurveReturns the angle of the curve's tangent in the point defined by the given parameter, in degrees counterclockwise from the direction at 3 o'clock.The tangent orientation is from the point at parameter
aParamtowards the rest of the shape.- The tangent at parameter 0 is the same as
ILcdCurve.getStartTangent2D(). - The tangent at parameter 1 is the same as
ILcdCurve.getEndTangent2D().
- Specified by:
getTangent2Din interfaceILcdCurve- Parameters:
aParam- a value of the closed interval [0,1]- Returns:
- the curve's angle in the point defined by the given parameter
- The tangent at parameter 0 is the same as
-
getLength2D
public double getLength2D(double aParam1, double aParam2) Description copied from interface:ILcdCurveReturns the length between two points of the curve, defined by the given parameters.- When
aParam1 == aParam2, the length is 0. - When
aParam1 == 0 and aParam2 == 1, the length is the whole length of the curve. - When
aParam1 > aParam2, the length is (aParam1 to 1) + (0 to aParam2).
- Specified by:
getLength2Din interfaceILcdCurve- Parameters:
aParam1- a value of the closed interval [0,1]aParam2- a value of the closed interval [0,1]- Returns:
- the length of the curve.
- When
-
computePointSFCT
Description copied from interface:ILcdCurveComputes a point of the curve, defined by the given parameter.- At parameter 0, the point is the same as
ILcdCurve.getStartPoint(). - At parameter 1, the point is the same as
ILcdCurve.getEndPoint().
- Specified by:
computePointSFCTin interfaceILcdCurve- Parameters:
aParam- a value of the closed interval [0,1]aPointSFCT- the point to store the computed curve point in
- At parameter 0, the point is the same as
-
getInterpolation
Description copied from interface:ILcdCurveReturns the interpolation method used by this curve.A set of predefined constants are defined in this interface, which are used by the default
ILcdCurveimplementations provided by LuciadLightspeed.Custom implementations can define their own constants, and use them to interpret the interpolation of the curve.
- Specified by:
getInterpolationin interfaceILcdCurve- Returns:
- the interpolation method used by this curve.
-
getLineSegmentIntersectionCount
Description copied from interface:ILcdCurveReturns the number of intersections between this curve and a line segment defined by the two specified points.This information can be used to perform containment calculations, if this curve is closed or if this curve is part of a composite closed curve. By determining the number of intersections between this curve and a line segment starting from a given point in a fixed direction, one can determine whether a point is located within the closed curve by using the even-odd rule.
- Specified by:
getLineSegmentIntersectionCountin interfaceILcdCurve- Parameters:
aP1- the first point of the line segmentaP2- the second point of the line segment- Returns:
- the number of intersections between the curve and the line segment
-