<<Type>> GM_Curve {Analysis} derived from: GM_OrientableCurve

Documentation
GM_Curve (Figure 11) is a descendent subtype of GM_Primitive through GM_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)ŽEn where "t" is a real parameter and En 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) ŽEn, is an equivalent representation of the same curve. For the sake of simplicity, GM_Curves should be parameterized by arc length, so that the parameterization operation inherited from GM_GenericCurve (see 6.4.7) will be valid for parameters between 0 and the length of the 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)ŽEn would be defined by a function of the form s(t) = c(a + b - t):(a, b)ŽEn.
A curve is composed of one or more curve segments. Each curve segment within a curve may be defined using a different interpolation method. The curve segments are connected to one another, with the end point of each segment except the last being the start point of the next segment in the segment list.


Parent PackageGeometric primitiveAbstractNo
Export ControlPublicAccessLink Class forNone
Class KindNormalClassCardinalityn
Space ConcurrencySequential
PersistenceYes  


Operations
NameSignatureClass
GM_CurveGM_Curve GM_Curve (GM_CurveSegment segment[1..*])GM_Curve
boundaryGM_CurveBoundary boundary ()GM_OrientableCurve
boundaryGM_PrimitiveBoundary boundary ()GM_Primitive
GM_PrimitiveGM_Primitive GM_Primitive (GM_Envelope e)GM_Primitive
mbRegionGM_Object mbRegion ()GM_Object
representativePointDirectPosition representativePoint ()GM_Object
boundaryGM_Boundary boundary ()GM_Object
closureGM_Complex closure ()GM_Object
isSimpleBoolean isSimple ()GM_Object
isCycleBoolean isCycle ()GM_Object
distanceDistance distance (GM_Object geometry)GM_Object
dimensionInteger dimension (DirectPosition point = NULL)GM_Object
coordinateDimensionInteger coordinateDimension ()GM_Object
maximalComplexSet<GM_Complex> maximalComplex ()GM_Object
transformGM_Object transform (SC_CRS newCRS)GM_Object
envelopeGM_Envelope envelope ()GM_Object
centroidDirectPosition centroid ()GM_Object
convexHullGM_Object convexHull ()GM_Object
bufferGM_Object buffer (Distance radius)GM_Object


Attributes
NameClassTypeInitial Value
orientationGM_OrientablePrimitiveSign 


Associations
NameMy RoleMy ClassOther RoleOther Element
SegmentationcurveGM_CurvesegmentGM_CurveSegment
orientedproxyGM_OrientableCurveprimitiveGM_Curve
CompositiongeneratorGM_OrientableCurvecompositeGM_CompositeCurve
orientedproxyGM_OrientableCurveprimitiveGM_Curve
OrientedproxyGM_OrientablePrimitiveprimitiveGM_Primitive
Interior tocontainingPrimitiveGM_PrimitivecontainedPrimitiveGM_Primitive
OrientedproxyGM_OrientablePrimitiveprimitiveGM_Primitive
RealizationgeometryGM_PrimitivetopologyTP_Primitive
ComplexelementGM_PrimitivecomplexGM_Complex
CompositiongeneratorGM_PrimitivecompositeGM_Composite
--Not Named--elementGM_Object--Not Named--GM_Aggregate
SpatialCompositionspatialElementGM_Object--Not Named--CV_DomainObject
Coordinate Reference SystemobjectGM_ObjectCRSSC_CRS


Generalization Relationships
NameClassSupplier
--Not Named--GM_CurveGM_OrientableCurve
--Not Named--GM_OrientableCurveGM_OrientablePrimitive
--Not Named--GM_OrientablePrimitiveGM_Primitive
--Not Named--GM_PrimitiveGM_Object


Realize Relationships
NameClassSupplier
--Not Named--GM_CurveGM_GenericCurve
--Not Named--GM_ObjectTransfiniteSet<DirectPosition>