<<Type>> GM_Surface {Analysis} derived from: GM_OrientableSurface

Documentation
GM_Surface (Figure 12) a subclass of GM_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. Its included GM_SurfacePatches describe the interior structure of a GM_Surface.
NOTE Other than the restriction on orientability, no other "validity" condition is required for GM_Surface.


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


Operations
NameSignatureClass
GM_SurfaceGM_Surface GM_Surface (GM_SurfacePatch patch[1..*])GM_Surface
GM_SurfaceGM_Surface GM_Surface (GM_SurfaceBoundary bdy)GM_Surface
boundaryGM_SurfaceBoundary boundary ()GM_OrientableSurface
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
SegmentationsurfaceGM_SurfacepatchGM_SurfacePatch
--Not Named--shapeGM_Surface--Not Named----Not Defined--
CompositiongeneratorGM_OrientableSurfacecompositeGM_CompositeSurface
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_SurfaceGM_OrientableSurface
--Not Named--GM_OrientableSurfaceGM_OrientablePrimitive
--Not Named--GM_OrientablePrimitiveGM_Primitive
--Not Named--GM_PrimitiveGM_Object


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