public class GeometryCollection extends Geometry
Geometrys of
arbitrary type and dimension.TYPENAME_GEOMETRYCOLLECTION, TYPENAME_LINEARRING, TYPENAME_LINESTRING, TYPENAME_MULTILINESTRING, TYPENAME_MULTIPOINT, TYPENAME_MULTIPOLYGON, TYPENAME_POINT, TYPENAME_POLYGON| Constructor and Description |
|---|
GeometryCollection(Geometry[] geometries,
GeometryFactory factory) |
GeometryCollection(Geometry[] geometries,
PrecisionModel precisionModel,
int SRID)
Deprecated.
Use GeometryFactory instead
|
| Modifier and Type | Method and Description |
|---|---|
void |
apply(CoordinateFilter filter)
Performs an operation with or on this
Geometry's
coordinates. |
void |
apply(CoordinateSequenceFilter filter)
Performs an operation on the coordinates in this
Geometry's
CoordinateSequences. |
void |
apply(GeometryComponentFilter filter)
Performs an operation with or on this Geometry and its
component Geometry's.
|
void |
apply(GeometryFilter filter)
Performs an operation with or on this
Geometry and its
subelement Geometrys (if any). |
Object |
clone()
Deprecated.
|
boolean |
equalsExact(Geometry other,
double tolerance)
Returns true if the two
Geometrys are exactly equal,
up to a specified distance tolerance. |
double |
getArea()
Returns the area of this
GeometryCollection |
Geometry |
getBoundary()
Returns the boundary, or an empty geometry of appropriate dimension
if this
Geometry is empty. |
int |
getBoundaryDimension()
Returns the dimension of this
Geometrys inherent boundary. |
Coordinate |
getCoordinate()
Returns a vertex of this geometry
(usually, but not necessarily, the first one),
or
null if the geometry is empty. |
Coordinate[] |
getCoordinates()
Collects all coordinates of all subgeometries into an Array.
|
int |
getDimension()
Returns the dimension of this geometry.
|
Geometry |
getGeometryN(int n)
Returns an element
Geometry from a GeometryCollection
(or this, if the geometry is not a collection). |
String |
getGeometryType()
Returns the name of this Geometry's actual class.
|
double |
getLength()
Returns the length of this
Geometry. |
int |
getNumGeometries()
Returns the number of
Geometrys in a GeometryCollection
(or 1, if the geometry is not a collection). |
int |
getNumPoints()
Returns the count of this
Geometrys vertices. |
boolean |
hasDimension(int dim)
Tests whether an atomic geometry or any element of a collection
has the specified dimension.
|
boolean |
isEmpty()
Tests whether the set of points covered by this
Geometry is
empty. |
void |
normalize()
Converts this
Geometry to normal form (or
canonical form ). |
GeometryCollection |
reverse()
Creates a
GeometryCollection with
every component reversed. |
buffer, buffer, buffer, compareTo, compareTo, contains, convexHull, copy, coveredBy, covers, crosses, difference, disjoint, distance, equals, equals, equalsExact, equalsNorm, equalsTopo, geometryChanged, getCentroid, getEnvelope, getEnvelopeInternal, getFactory, getInteriorPoint, getPrecisionModel, getSRID, getUserData, hashCode, intersection, intersects, isRectangle, isSimple, isValid, isWithinDistance, norm, overlaps, relate, relate, setSRID, setUserData, symDifference, toString, toText, touches, union, union, withinpublic GeometryCollection(Geometry[] geometries, PrecisionModel precisionModel, int SRID)
public GeometryCollection(Geometry[] geometries, GeometryFactory factory)
geometries - the Geometrys for this GeometryCollection,
or null or an empty array to create the empty
geometry. Elements may be empty Geometrys,
but not nulls.public Coordinate getCoordinate()
Geometrynull if the geometry is empty.
The returned coordinate should not be assumed
to be an actual Coordinate object used in
the internal representation.getCoordinate in class GeometryGeometry.public Coordinate[] getCoordinates()
getCoordinates in class GeometryGeometry.geometryChanged(),
CoordinateSequence.setOrdinate(int, int, double)public boolean isEmpty()
GeometryGeometry is
empty.
Note this test is for topological emptiness,
not structural emptiness.
A collection containing only empty elements is reported as empty.
To check structural emptiness use Geometry.getNumGeometries().
public int getDimension()
Geometry
Note that this is a different concept to the dimension of
the vertex Coordinates.
The geometry dimension can never be greater than the coordinate dimension.
For example, a 0-dimensional geometry (e.g. a Point)
may have a coordinate dimension of 3 (X,Y,Z).
getDimension in class GeometryGeometry.hasDimension(int)public boolean hasDimension(int dim)
GeometryGeometryCollections
to test if they contain an element of the specified dimension.hasDimension in class Geometrydim - the dimension to testGeometry.getDimension()public int getBoundaryDimension()
GeometryGeometrys inherent boundary.getBoundaryDimension in class GeometryDimension.FALSE if the boundary is the empty geometry.public int getNumGeometries()
GeometryGeometrys in a GeometryCollection
(or 1, if the geometry is not a collection).getNumGeometries in class Geometrypublic Geometry getGeometryN(int n)
GeometryGeometry from a GeometryCollection
(or this, if the geometry is not a collection).getGeometryN in class Geometryn - the index of the geometry elementpublic int getNumPoints()
GeometryGeometrys vertices. The Geometry
s contained by composite Geometrys must be
Geometry's; that is, they must implement getNumPointsgetNumPoints in class GeometryGeometrypublic String getGeometryType()
GeometrygetGeometryType in class GeometryGeometrys actual classpublic Geometry getBoundary()
GeometryGeometry is empty.
(In the case of zero-dimensional geometries, '
an empty GeometryCollection is returned.)
For a discussion of this function, see the OpenGIS Simple
Features Specification. As stated in SFS Section 2.1.13.1, "the boundary
of a Geometry is a set of Geometries of the next lower dimension."getBoundary in class GeometryGeometrypublic double getArea()
GeometryCollectionpublic double getLength()
GeometryGeometry.
Linear geometries return their length.
Areal geometries return their perimeter.
They override this function to compute the area.
Others return 0.0public boolean equalsExact(Geometry other, double tolerance)
GeometryGeometrys are exactly equal,
up to a specified distance tolerance.
Two Geometries are exactly equal within a distance tolerance
if and only if:
GeometryFactory, the SRID,
or the userData fields.
To properly test equality between different geometries,
it is usually necessary to Geometry.normalize() them first.
equalsExact in class Geometryother - the Geometry with which to compare this Geometrytolerance - distance at or below which two Coordinates
are considered equaltrue if this and the other Geometry
have identical structure and point values, up to the distance tolerance.Geometry.equalsExact(Geometry),
Geometry.normalize(),
Geometry.norm()public void apply(CoordinateFilter filter)
GeometryGeometry's
coordinates.
If this method modifies any coordinate values,
Geometry.geometryChanged() must be called to update the geometry state.
Note that you cannot use this method to
modify this Geometry if its underlying CoordinateSequence's #get method
returns a copy of the Coordinate, rather than the actual Coordinate stored
(if it even stores Coordinate objects at all).public void apply(CoordinateSequenceFilter filter)
GeometryGeometry's
CoordinateSequences.
If the filter reports that a coordinate value has been changed,
Geometry.geometryChanged() will be called automatically.public void apply(GeometryFilter filter)
GeometryGeometry and its
subelement Geometrys (if any).
Only GeometryCollections and subclasses
have subelement Geometry's.public void apply(GeometryComponentFilter filter)
Geometrypublic Object clone()
GeometryCollection object.
(including all coordinates contained by it).public void normalize()
GeometryGeometry to normal form (or
canonical form ). Normal form is a unique representation for Geometry
s. It can be used to test whether two Geometrys are equal
in a way that is independent of the ordering of the coordinates within
them. Normal form equality is a stronger condition than topological
equality, but weaker than pointwise equality. The definitions for normal
form use the standard lexicographical ordering for coordinates. "Sorted in
order of coordinates" means the obvious extension of this ordering to
sequences of coordinates.
NOTE that this method mutates the value of this geometry in-place. If this is not safe and/or wanted, the geometry should be cloned prior to normalization.
public GeometryCollection reverse()
GeometryCollection with
every component reversed.
The order of the components in the collection are not reversed.reverse in class GeometryGeometryCollection in the reverse orderCopyright © 2024. All rights reserved.