public interface Surface extends OrientableSurface
This interface is equivalent to the GM_Surface specified in ISO 19107. Surface is a subclass of Primitive
and is the basis
for 2-dimensional geometry. Unorientable surfaces such as the M�bius band
are not allowed.
The orientation of a surface chooses an "up" direction through the choice of the upward normal, which, if the surface is not a cycle, is the side of the surface from which the exterior boundary appears counterclockwise. Reversal of the surface orientation reverses the curve orientation of each boundary component, and interchanges the conceptual "up" and "down" direction of the surface.
If the surface is the boundary of a solid, the "up" direction is usually outward. For closed surfaces, which have no boundary, the up direction is that of the surface patches, which must be consistent with one another.
Geometry.DIMENSIONS, Geometry.OPERATIONS, Geometry.SUBTYPES, Geometry.TYPES, Geometry.ValidationStatus
BEST, E, EXTENDED_GEOMSUBTYPE_OFFSET, EXTENDED_GEOMTYPE_OFFSET, JOIN_STYLE_BEVEL, JOIN_STYLE_MITRE, JOIN_STYLE_ROUND, N, NE, NW, S, SE, SELECTHANDLER, STRETCHINGHANDLER, SW, W
Modifier and Type | Method and Description |
---|---|
void |
addInteriorRing(Line line)
Creates a ring from the coordinates of the line and adds it to the surface like an inner ring.
|
void |
addInteriorRing(Polygon polygon)
Creates a ring from the coordinates of the shell of the polygon and adds it to the surface like an inner ring.
|
void |
addInteriorRing(Ring ring) |
Ring |
getInteriorRing(int index) |
java.util.List<Ring> |
getInteriorRings() |
int |
getNumInteriorRings() |
SurfaceAppearance |
getSurfaceAppearance()
Gets surface appearance
|
void |
removeInteriorRing(int index) |
void |
setSurfaceAppearance(SurfaceAppearance app)
Sets the appearance of the Surface
|
Geometry |
split(Geometry splitter) |
addMoveToVertex, addVertex, addVertex, addVertex, closePrimitive, ensureCapacity, getCoordinateAt, getNumVertices, getVertex, insertVertex, removeVertex, setCoordinateAt, setGeneralPath, setVertex
area, boundary, buffer, buffer, canBeReprojected, canBeTransformed, centroid, clone, cloneGeometry, closestPoints, contains, convertTo, convertToEWKB, convertToEWKB, convertToEWKBForcingType, convertToGeoJson, convertToHexEWKB, convertToHexEWKBQuietly, convertToHexWKB, convertToHexWKBQuietly, convertToWKB, convertToWKB, convertToWKBForcingType, convertToWKBQuietly, convertToWKT, convertToWKTQuietly, convexHull, coveredBy, covers, crosses, difference, disjoint, distance, ensureOrientation, equals, fastIntersects, fix, flip, force2D, forceSubtype, getBounds2D, getDimension, getEnvelope, getGeneralPath, getGeometryType, getHandlers, getInteriorPoint, getInternalShape, getPathIterator, getPathIterator, getProjection, getShape, getShape, getType, getValidationStatus, intersection, intersects, intersects, invokeOperation, invokeOperation, isCCW, isEmpty, isSimple, isValid, isWithinDistance, makeValid, move, offset, offset, out, overlaps, perimeter, reProject, rotate, scale, setProjection, setProjection, setProjectionIffNull, snapTo, toLines, toPoints, toPolygons, touches, transform, union, within
contains, contains, contains, contains, getBounds, intersects
isEmpty, isEmpty, isEmpty, isEmptyQuietly
void setSurfaceAppearance(SurfaceAppearance app)
app
- The appearance of the surfaceSurfaceAppearance getSurfaceAppearance()
int getNumInteriorRings()
Ring getInteriorRing(int index)
void addInteriorRing(Ring ring)
void addInteriorRing(Line line)
ring
- java.util.List<Ring> getInteriorRings()
void addInteriorRing(Polygon polygon)
polygon
- void removeInteriorRing(int index)