Package com.luciad.format.gml2.model
Class TLcdGML2Polygon
java.lang.Object
com.luciad.datamodel.TLcdDataObject
com.luciad.datamodel.TLcdFeaturedDataObject
com.luciad.format.gml2.model.TLcdGML2AbstractGeometry
com.luciad.format.gml2.model.TLcdGML2Polygon
- All Implemented Interfaces:
ILcdDataObject,ILcdBounded,ILcdComplexPolygon,ILcdEditableSurface,ILcdPointList,ILcdShape,ILcdSurface,ILcdCloneable,ILcdDeepCloneable,ILcdFeatured,ILcdSelfDescribedFeatured,Serializable,Cloneable
public class TLcdGML2Polygon
extends TLcdGML2AbstractGeometry
implements ILcdEditableSurface, ILcdComplexPolygon
A Polygon is defined by an outer boundary and zero or more inner
boundaries which are in turn defined by LinearRings.
- Since:
- 10.0
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final TLcdDataPropertyData property that maps to theinnerBoundaryIselement.static final TLcdDataPropertyData property that maps to theouterBoundaryIselement.Fields inherited from class com.luciad.format.gml2.model.TLcdGML2AbstractGeometry
GID_PROPERTY, SRS_PROPERTY -
Constructor Summary
ConstructorsConstructorDescriptionTLcdGML2Polygon(TLcdDataType aType) TLcdGML2Polygon(TLcdDataType aDataType, ILcdModelReference aSrs) Constructs a polygon and initializes its model reference (srs).Constructs a polygon and initializes its model reference (srs). -
Method Summary
Modifier and TypeMethodDescriptionclone()Returns a deep clone of this object.Returns a deep clone of this object.booleancontains2D(double aX, double aY) Checks whether thisILcdShapecontains the given point in the 2D space.booleancontains2D(ILcdPoint aPoint) Checks whether thisILcdShapecontains the givenILcdPointin the 2D space.booleancontains3D(double aX, double aY, double aZ) 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 exterior boundary of this surface.Returns the focus point of thisILcdShape.Returns the value of the property that maps to theinnerBoundaryIselement.Returns the holes in this surface, as a list ofILcdRinginstances.Returns the value of the property that maps to theouterBoundaryIselement.getPoint(int aIndex) Returns theILcdPointat a given index.intReturns the number ofILcdPointobjects in the list.getPolygon(int aIndex) Returns theILcdPolygonat the given index.intReturns the number ofILcdPolygonobjects in the list.voidsetExteriorRing(ILcdRing aExteriorRing) Sets the exterior boundary of this surface.voidSets the value of the property that maps to theouterBoundaryIselement.Methods inherited from class com.luciad.format.gml2.model.TLcdGML2AbstractGeometry
getGid, getSrs, setGid, setSrsMethods inherited from class com.luciad.datamodel.TLcdFeaturedDataObject
canSetFeature, getFeature, getFeature, getFeatureCount, getFeaturedDescriptor, setFeature, setFeatureMethods inherited from class com.luciad.datamodel.TLcdDataObject
getDataType, getValue, getValue, hasValue, hasValue, setValue, setValue, toStringMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.luciad.shape.ILcdComplexPolygon
getPolygonsMethods inherited from interface com.luciad.shape.ILcdPointList
getPointSFCT, getX, getY, getZ
-
Field Details
-
OUTER_BOUNDARY_IS_PROPERTY
Data property that maps to theouterBoundaryIselement. The possible values for this property are instances ofTLcdGML2LinearRingMember. -
INNER_BOUNDARY_IS_PROPERTY
Data property that maps to theinnerBoundaryIselement. The possible values for this property are instances ofList<TLcdGML2LinearRingMember>.
-
-
Constructor Details
-
TLcdGML2Polygon
public TLcdGML2Polygon() -
TLcdGML2Polygon
-
TLcdGML2Polygon
Constructs a polygon and initializes its model reference (srs).- Parameters:
aSrs- the model reference for this object- See Also:
-
TLcdGML2Polygon
Constructs a polygon and initializes its model reference (srs).- Parameters:
aDataType- the data type for this objectaSrs- the model reference for this object- See Also:
-
-
Method Details
-
getPolygon
Description copied from interface:ILcdComplexPolygonReturns theILcdPolygonat the given index.- Specified by:
getPolygonin interfaceILcdComplexPolygon- Parameters:
aIndex- a valid index in the list ofILcdPolygonobjects.- Returns:
- the
ILcdPolygonat the given index. - Throws:
IndexOutOfBoundsException- when the index is not valid.
-
getPolygonCount
public int getPolygonCount()Description copied from interface:ILcdComplexPolygonReturns the number ofILcdPolygonobjects in the list.- Specified by:
getPolygonCountin interfaceILcdComplexPolygon- Returns:
- the number of
ILcdPolygonobjects in the list.
-
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:
aIndex- a valid index in the list ofILcdPointobjects.- Returns:
- the
ILcdPointat the given index. - Throws:
IndexOutOfBoundsException- if the given index is out of bounds.
-
setExteriorRing
Description copied from interface:ILcdEditableSurfaceSets the exterior boundary of this surface.Note that this implementations may throw a
ClassCastExceptionorIllegalArgumentExceptionin case the class of the ring is not compatible with the implementation of the surface. Implementations should specify in their documentation all restrictions that apply in this context.- Specified by:
setExteriorRingin interfaceILcdEditableSurface- Parameters:
aExteriorRing- the exterior boundary of this surface.
-
getExteriorRing
Description copied from interface:ILcdSurfaceReturns the exterior boundary of this surface.- Specified by:
getExteriorRingin interfaceILcdSurface- Returns:
- the exterior boundary of this surface.
-
getInteriorRings
Description copied from interface:ILcdEditableSurfaceReturns the holes in this surface, as a list ofILcdRinginstances. If there are no holes, an empty list is returned.The returned list is editable and can be used to add, remove or replace interior rings.
- Specified by:
getInteriorRingsin interfaceILcdEditableSurface- Specified by:
getInteriorRingsin interfaceILcdSurface- Returns:
- an editable list containing zero or more rings, representing the holes in this surface.
-
contains2D
public boolean contains2D(double aX, double aY) 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- Overrides:
contains2Din classTLcdGML2AbstractGeometry- Parameters:
aX- the x coordinate of the point.aY- the y coordinate of the point.- Returns:
- the boolean result of the containment test.
-
contains3D
public boolean contains3D(double aX, double aY, double aZ) Description copied from interface:ILcdShapeChecks whether thisILcdShapecontains the given point in the 3D space.- Specified by:
contains3Din interfaceILcdShape- Overrides:
contains3Din classTLcdGML2AbstractGeometry- Parameters:
aX- the x coordinate of the point.aY- the y coordinate of the point.aZ- the z coordinate of the point.- Returns:
- the boolean result of the containment test.
-
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- Overrides:
contains2Din classTLcdGML2AbstractGeometry- Parameters:
aPoint- theILcdPointto test.- Returns:
- the boolean result of the containment test.
- See Also:
-
contains3D
Description copied from interface:ILcdShapeChecks whether thisILcdShapecontains the givenILcdPointin the 3D space.- Specified by:
contains3Din interfaceILcdShape- Overrides:
contains3Din classTLcdGML2AbstractGeometry- Parameters:
aPoint- theILcdPointto test.- Returns:
- the boolean result of the containment test.
- See Also:
-
getFocusPoint
Description copied from interface:ILcdShapeReturns the focus point of thisILcdShape.- Specified by:
getFocusPointin interfaceILcdShape- Overrides:
getFocusPointin classTLcdGML2AbstractGeometry- 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- Overrides:
getBoundsin classTLcdGML2AbstractGeometry- Returns:
- the
ILcdBoundsby which the geometry of thisILcdBoundedobject is bounded.
-
clone
Description copied from class:TLcdDataObjectReturns a deep clone of this object. This method delegates toTLcdDataObject.clone(Map).- Specified by:
clonein interfaceILcdCloneable- Overrides:
clonein classTLcdDataObject- Returns:
- a deep clone of this object
- See Also:
-
clone
Description copied from class:TLcdDataObjectReturns a deep clone of this object. If the clone is not already present in the dictionary, a new instance if created as follows:- First, a new instance is created using Java's clone() mechanism.
- Then, all properties of this object are cloned and set on the newly created
instance. A property is cloned as follows:
- If the property value is an
ILcdDataObject, the value is cloned by first creating a new instance via thevalue.getDataType().newInstance()method, and then cloning its properties one by one. - If the value implements
ILcdDeepCloneableorILcdCloneablethen this interface is used to clone the value. - Otherwise, the property value is copied by reference.
- If the property value is an
- Specified by:
clonein interfaceILcdDeepCloneable- Overrides:
clonein classTLcdDataObject- Parameters:
aObjectDictionary- the Object dictionary that keeps track of the objects for which a clone has already been made, and their corresponding clone Object.- Returns:
- a deep clone of this object
-
getOuterBoundaryIs
Returns the value of the property that maps to theouterBoundaryIselement.- Returns:
- the value of the
OUTER_BOUNDARY_IS_PROPERTYproperty.
-
setOuterBoundaryIs
Sets the value of the property that maps to theouterBoundaryIselement.- Parameters:
aValue- the value to set for theOUTER_BOUNDARY_IS_PROPERTYproperty.
-
getInnerBoundaryIs
Returns the value of the property that maps to theinnerBoundaryIselement.- Returns:
- the value of the
INNER_BOUNDARY_IS_PROPERTYproperty.
-