Package org.geotools.geometry.jts
Class MultiSurface
- Object
-
- Geometry
-
- GeometryCollection
-
- MultiPolygon
-
- MultiSurface
-
- All Implemented Interfaces:
Serializable
,Cloneable
,Comparable
,CurvedGeometry<MultiPolygon>
,MultiCurvedGeometry<MultiPolygon>
,Polygonal
public class MultiSurface extends MultiPolygon implements MultiCurvedGeometry<MultiPolygon>
A subclass ofMultiPolygon
that can host alsoCurvePolygon
and will linearize if needed- Author:
- Andrea Aime - GeoSolutions
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class GeometryCollection
geometries
-
Fields inherited from class Geometry
envelope, factory, SRID, TYPECODE_GEOMETRYCOLLECTION, TYPECODE_LINEARRING, TYPECODE_LINESTRING, TYPECODE_MULTILINESTRING, TYPECODE_MULTIPOINT, TYPECODE_MULTIPOLYGON, TYPECODE_POINT, TYPECODE_POLYGON, TYPENAME_GEOMETRYCOLLECTION, TYPENAME_LINEARRING, TYPENAME_LINESTRING, TYPENAME_MULTILINESTRING, TYPENAME_MULTIPOINT, TYPENAME_MULTIPOLYGON, TYPENAME_POINT, TYPENAME_POLYGON
-
-
Constructor Summary
Constructors Constructor Description MultiSurface(List<Polygon> components, GeometryFactory factory, double tolerance)
MultiSurface(Polygon[] polygons, GeometryFactory factory, double tolerance)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MultiSurface
copyInternal()
int
getCoordinatesDimension()
Returns the dimension of the geometry without forcing access to the coordinate sequenceString
getGeometryType()
double
getTolerance()
The default linearization toleranceMultiPolygon
linearize()
Linearizes the geometry using the built-in linearization toleranceMultiPolygon
linearize(double tolerance)
Linearizes the geometry using the provided tolerance, the result is guaranteed to be less than tolerance away from the curved geometry unless the number of points needed to linearize the geometry exceeds the build-in per quadrant maximum, seeCircularArc.MAX_SEGMENTS_QUADRANT
String
toCurvedText()
Parallel method toGeometry.toText()
that will output the geometry as curved instead of as linear-
Methods inherited from class MultiPolygon
equalsExact, getBoundary, getBoundaryDimension, getDimension, getTypeCode, reverse, reverseInternal
-
Methods inherited from class GeometryCollection
apply, apply, apply, apply, clone, compareToSameClass, compareToSameClass, computeEnvelopeInternal, getArea, getCoordinate, getCoordinates, getGeometryN, getLength, getNumGeometries, getNumPoints, isEmpty, normalize
-
Methods inherited from class Geometry
buffer, buffer, buffer, compare, compareTo, compareTo, contains, convexHull, copy, coveredBy, covers, crosses, difference, disjoint, distance, equal, equals, equals, equalsExact, equalsNorm, equalsTopo, geometryChanged, geometryChangedAction, getCentroid, getEnvelope, getEnvelopeInternal, getFactory, getInteriorPoint, getPrecisionModel, getSRID, getUserData, hashCode, hasNonEmptyElements, hasNullElements, intersection, intersects, isEquivalentClass, isGeometryCollection, isRectangle, isSimple, isValid, isWithinDistance, norm, overlaps, relate, relate, setSRID, setUserData, symDifference, toString, toText, touches, union, union, within
-
-
-
-
Constructor Detail
-
MultiSurface
public MultiSurface(List<Polygon> components, GeometryFactory factory, double tolerance)
-
MultiSurface
public MultiSurface(Polygon[] polygons, GeometryFactory factory, double tolerance)
-
-
Method Detail
-
linearize
public MultiPolygon linearize()
Description copied from interface:CurvedGeometry
Linearizes the geometry using the built-in linearization tolerance- Specified by:
linearize
in interfaceCurvedGeometry<MultiPolygon>
-
linearize
public MultiPolygon linearize(double tolerance)
Description copied from interface:CurvedGeometry
Linearizes the geometry using the provided tolerance, the result is guaranteed to be less than tolerance away from the curved geometry unless the number of points needed to linearize the geometry exceeds the build-in per quadrant maximum, seeCircularArc.MAX_SEGMENTS_QUADRANT
- Specified by:
linearize
in interfaceCurvedGeometry<MultiPolygon>
- Parameters:
tolerance
- Linearization tolerance, should be zero or positive. When zero is used, the maximum number of allowed linearization points will be used, seeCircularArc.MAX_SEGMENTS_QUADRANT
-
toCurvedText
public String toCurvedText()
Description copied from interface:CurvedGeometry
Parallel method toGeometry.toText()
that will output the geometry as curved instead of as linear- Specified by:
toCurvedText
in interfaceCurvedGeometry<MultiPolygon>
-
getTolerance
public double getTolerance()
Description copied from interface:CurvedGeometry
The default linearization tolerance- Specified by:
getTolerance
in interfaceCurvedGeometry<MultiPolygon>
-
getCoordinatesDimension
public int getCoordinatesDimension()
Description copied from interface:CurvedGeometry
Returns the dimension of the geometry without forcing access to the coordinate sequence- Specified by:
getCoordinatesDimension
in interfaceCurvedGeometry<MultiPolygon>
-
copyInternal
public MultiSurface copyInternal()
- Overrides:
copyInternal
in classMultiPolygon
-
getGeometryType
public String getGeometryType()
- Overrides:
getGeometryType
in classMultiPolygon
-
-