@UML(identifier="GM_Complex", specification=ISO_19107) public interface Complex extends Geometry
Complex
, then there exists a set of primitives of lower dimension in the same complex that form
the boundary of this primitive.
A geometric complex can be thought of as a set in two distinct ways. First, it is a finite set
of objects (via delegation to its elements member) and, second, it is an infinite set of point
values as a subtype of geometric object. The dual use of delegation and subtyping is to
disambiguate the two types of set interface. To determine if a primitive
P is an element of a Complex
C, call: C.element().contains(P)
.
The "elements" attribute allows Complex
to inherit the
behavior of Set<Primitive>
without confusing the same sort of behavior
inherited from TransfiniteSet<DirectPosition>
inherited through Geometry
. Complexes shall be used in application schemas where the
sharing of geometry is important, such as in the use of computational topology. In a complex,
primitives may be aggregated many-to-many into composites for use as attributes of features.
Modifier and Type | Method and Description |
---|---|
Collection<? extends Primitive> |
getElements()
Returns the collection of primitives contained in this complex.
|
Complex[] |
getSubComplexes()
Returns a subset of the primitives of that complex that is, in its own right, a geometric
complex.
|
Complex[] |
getSuperComplexes()
Returns a superset of primitives that is also a complex.
|
boolean |
isMaximal()
Returns
true if and only if this Complex is maximal. |
clone, distance, getBoundary, getBuffer, getCentroid, getClosure, getConvexHull, getCoordinateDimension, getCoordinateReferenceSystem, getDimension, getEnvelope, getMaximalComplex, getMbRegion, getPrecision, getRepresentativePoint, isCycle, isMutable, isSimple, toImmutable, transform, transform
contains, contains, difference, equals, intersection, intersects, symmetricDifference, union
@UML(identifier="isMaximal", obligation=MANDATORY, specification=ISO_19107) boolean isMaximal()
true
if and only if this Complex
is maximal. A complex is maximal if
it is a subcomplex of no larger complex.true
if this complex is maximal.@UML(identifier="superComplex", obligation=MANDATORY, specification=ISO_19107) Complex[] getSuperComplexes()
@UML(identifier="subComplex", obligation=MANDATORY, specification=ISO_19107) Complex[] getSubComplexes()
@UML(identifier="element", obligation=MANDATORY, specification=ISO_19107) Collection<? extends Primitive> getElements()
Copyright © 1996–2019 Geotools. All rights reserved.