Documentation for fieldgml

Complex Type: ArcByCenterPointType

[Table of contents]

Super-types: AbstractCurveSegmentType < ArcByCenterPointType (by extension)
Sub-types:
Name ArcByCenterPointType
Abstract no
Documentation This variant of the arc requires that the points on the arc have to be computed instead of storing the coordinates directly. The control point is the center point of the arc plus the radius and the bearing at start and end. This represenation can be used only in 2D.
XML Instance Representation
<...
numDerivativesAtStart="integer [0..1]

'The attribute \"numDerivativesAtStart\" specifies the type of continuity between this curve segment and its predecessor. If this is the first curve segment in the curve, one of these values, as appropriate, is ignored. The default value of \"0\" means simple continuity, which is a mandatory minimum level of continuity. This level is referred to as \"C 0 \" in mathematical texts. A value of 1 means that the function and its first derivative are continuous at the appropriate end point: \"C 1 \" continuity. A value of \"n\" for any integer means the function and its first n derivatives are continuous: \"C n \" continuity. NOTE: Use of these values is only appropriate when the basic curve definition is an underdetermined system. For example, line string segments cannot support continuity above C 0 , since there is no spare control parameter to adjust the incoming angle at the end points of the segment. Spline functions on the other hand often have extra degrees of freedom on end segments that allow them to adjust the values of the derivatives to support C 1 or higher continuity.'

"

numDerivativesAtEnd="integer [0..1]

'The attribute \"numDerivativesAtEnd\" specifies the type of continuity between this curve segment and its successor. If this is the last curve segment in the curve, one of these values, as appropriate, is ignored. The default value of \"0\" means simple continuity, which is a mandatory minimum level of continuity. This level is referred to as \"C 0 \" in mathematical texts. A value of 1 means that the function and its first derivative are continuous at the appropriate end point: \"C 1 \" continuity. A value of \"n\" for any integer means the function and its first n derivatives are continuous: \"C n \" continuity. NOTE: Use of these values is only appropriate when the basic curve definition is an underdetermined system. For example, line string segments cannot support continuity above C 0 , since there is no spare control parameter to adjust the incoming angle at the end points of the segment. Spline functions on the other hand often have extra degrees of freedom on end segments that allow them to adjust the values of the derivatives to support C 1 or higher continuity.'

"

numDerivativeInterior="integer [0..1]

'The attribute \"numDerivativesInterior\" specifies the type of continuity that is guaranteed interior to the curve. The default value of \"0\" means simple continuity, which is a mandatory minimum level of continuity. This level is referred to as \"C 0 \" in mathematical texts. A value of 1 means that the function and its first derivative are continuous at the appropriate end point: \"C 1 \" continuity. A value of \"n\" for any integer means the function and its first n derivatives are continuous: \"C n \" continuity. NOTE: Use of these values is only appropriate when the basic curve definition is an underdetermined system. For example, line string segments cannot support continuity above C 0 , since there is no spare control parameter to adjust the incoming angle at the end points of the segment. Spline functions on the other hand often have extra degrees of freedom on end segments that allow them to adjust the values of the derivatives to support C 1 or higher continuity.'

"

interpolation="circularArcCenterPointWithRadius [0..1]

'The attribute \"interpolation\" specifies the curve interpolation mechanism used for this segment. This mechanism uses the control points and control parameters to determine the position of this curve segment. For an ArcByCenterPoint the interpolation is fixed as \"circularArcCenterPointWithRadius\".'

"

numArc="1 [1]

'Since this type describes always a single arc, the attribute is fixed to \"1\".'

"
>
Start Choice [1]

'GML supports two different ways to specify the control points of a curve segment. 1. A \"pos\" (DirectPositionType) or \"pointProperty\" (PointPropertyType) element. The \"pos\" element contains a center point that is only part of this curve segment, a \"pointProperty\" element contains a point that may be referenced from other geometry elements or reference another point defined outside of this curve segment (reuse of existing points). 2. The \"posList\" element can be used to specifiy the coordinates of the center point, too. The number of direct positions in the list must be one.'


Start Choice [1]
<gml:pos> ... </gml:pos> [1]
<gml:pointRep> ... </gml:pointRep> [1]

'Deprecated with GML version 3.1.0. Use \"pointProperty\" instead. Included for backwards compatibility with GML 3.0.0.'

End Choice
<gml:posList> ... </gml:posList> [1]
<gml:coordinates> ... </gml:coordinates> [1]

'Deprecated with GML version 3.1.0. Use \"posList\" instead.'

End Choice
<gml:radius> gml:LengthType </gml:radius> [1]

'The radius of the arc.'

<gml:startAngle> gml:AngleType </gml:startAngle> [0..1]

'The bearing of the arc at the start.'

<gml:endAngle> gml:AngleType </gml:endAngle> [0..1]

'The bearing of the arc at the end.'

</...>
Diagram
Schema Component Representation
<complexType name="ArcByCenterPointType">
<complexContent>
<extension base=" gml:AbstractCurveSegmentType ">
<sequence>
<choice>
<choice>
<element ref=" gml:pos "/>
<element ref=" gml:pointProperty "/>
<element ref=" gml:pointRep "/>
</choice>
<element ref=" gml:posList "/>
<element ref=" gml:coordinates "/>
</choice>
<element name="radius" type=" gml:LengthType "/>
<element name="startAngle" type=" gml:AngleType " minOccurs="0"/>
<element name="endAngle" type=" gml:AngleType " minOccurs="0"/>
</sequence>
<attribute name="interpolation" type=" gml:CurveInterpolationType " fixed="circularArcCenterPointWithRadius"/>
<attribute name="numArc" type=" integer " use="required" fixed="1"/>
</extension>
</complexContent>
</complexType>