Interface OrientablePrimitive
- All Superinterfaces:
Cloneable,Comparable,Geometry,org.gvsig.tools.util.GetItem<Point>,org.gvsig.tools.util.IsEmpty,Primitive,Serializable,Shape,org.gvsig.tools.util.Size
- All Known Subinterfaces:
Arc,Circle,Circumference,Curve,Ellipse,EllipticArc,FilledSpline,Line,OrientableCurve,OrientableSurface,PeriEllipse,Polygon,Ring,Spline,Surface
This interface is equivalent to the GM_OrientablePrimitive specified in ISO 19107. Orientable primitives are those that can be mirrored into new geometric objects in terms of their internal local coordinate systems (manifold charts).
For curves, the orientation reflects the direction in which the curve is traversed, that is, the sense of its parameterization. When used as boundary curves, the surface being bounded is to the "left" of the oriented curve.
For surfaces, the orientation reflects from which direction the local coordinate system can be viewed as right handed, the "top" or the surface being the direction of a completing z-axis that would form a right-handed system.
When used as a boundary surface, the bounded solid is "below" the surface. The orientation of points and solids has no immediate geometric interpretation in 3-dimensional space.
OrientablePrimitive objects are essentially references to geometric primitives that carry an "orientation" reversal flag (either "+" or "-") that determines whether this primitive agrees or disagrees with the orientation of the referenced object.
- Author:
- Jorge Piera
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.gvsig.fmap.geom.Geometry
Geometry.DIMENSIONS, Geometry.OPERATIONS, Geometry.SUBTYPES, Geometry.TYPES, Geometry.ValidationStatus -
Field Summary
Fields inherited from interface org.gvsig.fmap.geom.Geometry
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 -
Method Summary
Modifier and TypeMethodDescriptionvoidaddMoveToVertex(Point point) Adds a vertex (or direct position) to the curveaddVertex(double x, double y) Utility method for add a vertexaddVertex(double x, double y, double z) Utility method for add a vertexAdds a vertex (or direct position) to the curvevoidCloses the geometryensureCapacity(int capacity) doublegetCoordinateAt(int index, int dimension) Gets the one of the values of a coordinate (direct position) in a concrete dimension.intGets the number of vertices (direct positions) of the curvegetVertex(int index) Gets a vertex (direct position)insertVertex(int index, Point p) Inserts a vertex (direct position) to the curve.voidremoveVertex(int index) Remove a vertex (direct position) to the curvesetCoordinateAt(int index, int dimension, double value) Sets the value of a coordinate (direct position) in a concrete dimensionvoidsetGeneralPath(GeneralPathX generalPathX) Sets all the coordinates of the curveSets a vertex in a concrete position and replaces the previous one that was in this position.Methods inherited from interface java.lang.Comparable
compareToMethods inherited from interface org.gvsig.fmap.geom.Geometry
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, withinMethods inherited from interface org.gvsig.tools.util.GetItem
getMethods inherited from interface org.gvsig.tools.util.IsEmpty
isEmptyMethods inherited from interface java.awt.Shape
contains, contains, contains, contains, getBounds, intersectsMethods inherited from interface org.gvsig.tools.util.Size
size
-
Method Details
-
getCoordinateAt
double getCoordinateAt(int index, int dimension) Gets the one of the values of a coordinate (direct position) in a concrete dimension.- Parameters:
index- The index of the direct position to set.dimension- The dimension of the direct position.- Returns:
- The value of the coordinate
-
setCoordinateAt
Sets the value of a coordinate (direct position) in a concrete dimension- Parameters:
index- The index of the direct position to setdimension- The dimension of the direct positionvalue- The value to set- Returns:
-
addVertex
Adds a vertex (or direct position) to the curve- Parameters:
point- The new point to add- Returns:
-
addVertex
Utility method for add a vertex- Parameters:
x-y-- Returns:
- See Also:
-
addVertex
Utility method for add a vertex- Parameters:
x-y-z-- Returns:
- See Also:
-
removeVertex
void removeVertex(int index) Remove a vertex (direct position) to the curve- Parameters:
index- The index of the vertex to remove
-
getVertex
Gets a vertex (direct position)- Parameters:
index- The index of the vertex to get- Returns:
- One point
-
getNumVertices
int getNumVertices()Gets the number of vertices (direct positions) of the curve- Returns:
- The number of vertices
-
insertVertex
Inserts a vertex (direct position) to the curve.- Parameters:
index- The index of the vertex where the new point has to be added.p- The vertex to add.- Returns:
-
setVertex
Sets a vertex in a concrete position and replaces the previous one that was in this position.- Parameters:
index- The index of the vertex where the new point has to be replaced.p- The vertex to set.- Returns:
-
setGeneralPath
Sets all the coordinates of the curve- Parameters:
generalPathX- The generalPath that contains all the coordinates
-
addMoveToVertex
Adds a vertex (or direct position) to the curve- Parameters:
point- The new point to add
-
closePrimitive
void closePrimitive()Closes the geometry -
ensureCapacity
-