Interface Curve

All Superinterfaces:
Comparable, Geometry, OrientableCurve, OrientablePrimitive, Primitive, Serializable, Shape
All Known Subinterfaces:
Arc, Spline
All Known Implementing Classes:
Arc2D, Arc2DZ, Curve2D, Curve2DZ, DefaultCurve, EllipticArc2D, EllipticArc2DZ, Spline2D, Spline2DZ

public interface Curve
extends OrientableCurve

This interface is equivalent to the GM_Curve and the GM_CurveSegment specified in ISO 19107. Curve is a descendent subtype of Primitive through OrientablePrimitive. It is the basis for 1-dimensional geometry.

A curve is a continuous image of an open interval and so could be written as a parameterized function such as c(t):(a, b) -> E^n where "t" is a real parameter and E^n is Euclidean space of dimension n (usually 2 or 3, as determined by the coordinate reference system). Any other parameterization that results in the same image curve, traced in the same direction, such as any linear shifts and positive scales such as e(t) = c(a + t(b-a)):(0,1) -> E^n, is an equivalent representation of the same curve.

Curves are continuous, connected, and have a measurable length in terms of the coordinate system. The orientation of the curve is determined by this parameterization, and is consistent with the tangent function, which approximates the derivative function of the parameterization and shall always point in the "forward" direction. The parameterization of the reversal of the curve defined by c(t):(a, b) -> E^n would be defined by a function of the form s(t) = c(a + b - t):(a, b) - >E^n.

In the ISO model a curve is composed of one or more curve segments. In gvSIG a curve is not composed by curve segments: a curve is one and only one curve segment.

Jorge Piera
See Also:
ISO 19107

Nested Class Summary
Nested classes/interfaces inherited from interface org.gvsig.fmap.geom.Geometry
Geometry.DIMENSIONS, Geometry.OPERATIONS, Geometry.SUBTYPES, Geometry.TYPES
Field Summary
Fields inherited from interface org.gvsig.fmap.geom.Geometry
Method Summary
 void setPoints(Point initialPoint, Point endPoint)
          Sets the initial point and the end point of the curve.
Methods inherited from interface org.gvsig.fmap.geom.primitive.OrientablePrimitive
addMoveToVertex, addVertex, addVertexes, closePrimitive, getCoordinateAt, getNumVertices, getVertex, insertVertex, removeVertex, setCoordinateAt, setGeneralPath, setVertex
Methods inherited from interface org.gvsig.fmap.geom.Geometry
area, buffer, centroid, cloneGeometry, contains, convertToWKB, convertToWKT, convexHull, coveredBy, crosses, difference, disjoint, distance, fastIntersects, getBounds2D, getDimension, getEnvelope, getGeneralPath, getGeometryType, getHandlers, getInternalShape, getPathIterator, getPathIterator, getShape, getShape, getType, intersection, intersects, intersects, invokeOperation, invokeOperation, isSimple, overlaps, perimeter, reProject, touches, transform, union, within
Methods inherited from interface java.awt.Shape
contains, contains, contains, contains, getBounds, intersects
Methods inherited from interface java.lang.Comparable

Method Detail


void setPoints(Point initialPoint,
               Point endPoint)
Sets the initial point and the end point of the curve. On this case, the curve is a single line

initialPoint - The initial point
endPoint - The end point

Copyright © 2004-2012 gvSIG. All Rights Reserved.