diagram | ![]() |
||||||||||||||||||||||||||||||||||||||||||||||
namespace | http://www.opengis.net/gml | ||||||||||||||||||||||||||||||||||||||||||||||
type | extension of gml:AbstractCurveSegmentType | ||||||||||||||||||||||||||||||||||||||||||||||
properties |
|
||||||||||||||||||||||||||||||||||||||||||||||
children | gml:pos gml:pointProperty gml:pointRep gml:posList gml:coordinates gml:bulge gml:normal | ||||||||||||||||||||||||||||||||||||||||||||||
used by |
|
||||||||||||||||||||||||||||||||||||||||||||||
attributes |
|
||||||||||||||||||||||||||||||||||||||||||||||
annotation |
|
||||||||||||||||||||||||||||||||||||||||||||||
source | <xs:complexType name="ArcStringByBulgeType"> <xs:annotation> <xs:documentation>This variant of the arc computes the mid points of the arcs instead of storing the coordinates directly. The control point sequence consists of the start and end points of each arc plus the bulge.</xs:documentation> </xs:annotation> <xs:complexContent> <xs:extension base="gml:AbstractCurveSegmentType"> <xs:sequence> <xs:choice> <xs:annotation> <xs:documentation>GML supports two different ways to specify the control points of a curve segment. 1. A sequence of "pos" (DirectPositionType) or "pointProperty" (PointPropertyType) elements. "pos" elements are control points that are only part of this curve segment, "pointProperty" elements contain 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 allows for a compact way to specifiy the coordinates of the control points, if all control points are in the same coordinate reference systems and belong to this curve segment only. The number of direct positions in the list must be at least two.</xs:documentation> </xs:annotation> <xs:choice minOccurs="2" maxOccurs="unbounded"> <xs:element ref="gml:pos"/> <xs:element ref="gml:pointProperty"/> <xs:element ref="gml:pointRep"> <xs:annotation> <xs:documentation>Deprecated with GML version 3.1.0. Use "pointProperty" instead. Included for backwards compatibility with GML 3.0.0.</xs:documentation> </xs:annotation> </xs:element> </xs:choice> <xs:element ref="gml:posList"/> <xs:element ref="gml:coordinates"> <xs:annotation> <xs:documentation>Deprecated with GML version 3.1.0. Use "posList" instead.</xs:documentation> </xs:annotation> </xs:element> </xs:choice> <xs:element name="bulge" type="double" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>The bulge controls the offset of each arc's midpoint. The "bulge" is the real number multiplier for the normal that determines the offset direction of the midpoint of each arc. The length of the bulge sequence is exactly 1 less than the length of the control point array, since a bulge is needed for each pair of adjacent points in the control point array. The bulge is not given by a distance, since it is simply a multiplier for the normal. The midpoint of the resulting arc is given by: midPoint = ((startPoint + endPoint)/2.0) + bulge*normal</xs:documentation> </xs:annotation> </xs:element> <xs:element name="normal" type="gml:VectorType" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>The attribute "normal" is a vector normal (perpendicular) to the chord of the arc, the line joining the first and last point of the arc. In a 2D coordinate system, there are only two possible directions for the normal, and it is often given as a signed real, indicating its length, with a positive sign indicating a left turn angle from the chord line, and a negative sign indicating a right turn from the chord. In 3D, the normal determines the plane of the arc, along with the start and endPoint of the arc. The normal is usually a unit vector, but this is not absolutely necessary. If the normal is a zero vector, the geometric object becomes equivalent to the straight line between the two end points. The length of the normal sequence is exactly the same as for the bulge sequence, 1 less than the control point sequence length.</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> <xs:attribute name="interpolation" type="gml:CurveInterpolationType" fixed="circularArc2PointWithBulge"> <xs:annotation> <xs:documentation>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 ArcStringByBulge the interpolation is fixed as "circularArc2PointWithBulge".</xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="numArc" type="integer" use="optional"> <xs:annotation> <xs:documentation>The number of arcs in the arc string can be explicitly stated in this attribute. The number of control points in the arc string must be numArc + 1.</xs:documentation> </xs:annotation> </xs:attribute> </xs:extension> </xs:complexContent> </xs:complexType> |
type | gml:CurveInterpolationType | ||||||||||||||||||||||||||||||||||||
properties |
|
||||||||||||||||||||||||||||||||||||
facets |
|
||||||||||||||||||||||||||||||||||||
annotation |
|
||||||||||||||||||||||||||||||||||||
source | <xs:attribute name="interpolation" type="gml:CurveInterpolationType" fixed="circularArc2PointWithBulge"> <xs:annotation> <xs:documentation>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 ArcStringByBulge the interpolation is fixed as "circularArc2PointWithBulge".</xs:documentation> </xs:annotation> </xs:attribute> |
type | xs:integer | ||||
properties |
|
||||
annotation |
|
||||
source | <xs:attribute name="numArc" type="integer" use="optional"> <xs:annotation> <xs:documentation>The number of arcs in the arc string can be explicitly stated in this attribute. The number of control points in the arc string must be numArc + 1.</xs:documentation> </xs:annotation> </xs:attribute> |
diagram | ![]() |
||||||||
namespace | http://www.opengis.net/gml | ||||||||
type | xs:double | ||||||||
properties |
|
||||||||
annotation |
|
||||||||
source | <xs:element name="bulge" type="double" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>The bulge controls the offset of each arc's midpoint. The "bulge" is the real number multiplier for the normal that determines the offset direction of the midpoint of each arc. The length of the bulge sequence is exactly 1 less than the length of the control point array, since a bulge is needed for each pair of adjacent points in the control point array. The bulge is not given by a distance, since it is simply a multiplier for the normal. The midpoint of the resulting arc is given by: midPoint = ((startPoint + endPoint)/2.0) + bulge*normal</xs:documentation> </xs:annotation> </xs:element> |
diagram | ![]() |
||||||||||||||||||||||||||||||||||||||
namespace | http://www.opengis.net/gml | ||||||||||||||||||||||||||||||||||||||
type | gml:VectorType | ||||||||||||||||||||||||||||||||||||||
properties |
|
||||||||||||||||||||||||||||||||||||||
attributes |
|
||||||||||||||||||||||||||||||||||||||
annotation |
|
||||||||||||||||||||||||||||||||||||||
source | <xs:element name="normal" type="gml:VectorType" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>The attribute "normal" is a vector normal (perpendicular) to the chord of the arc, the line joining the first and last point of the arc. In a 2D coordinate system, there are only two possible directions for the normal, and it is often given as a signed real, indicating its length, with a positive sign indicating a left turn angle from the chord line, and a negative sign indicating a right turn from the chord. In 3D, the normal determines the plane of the arc, along with the start and endPoint of the arc. The normal is usually a unit vector, but this is not absolutely necessary. If the normal is a zero vector, the geometric object becomes equivalent to the straight line between the two end points. The length of the normal sequence is exactly the same as for the bulge sequence, 1 less than the control point sequence length.</xs:documentation> </xs:annotation> </xs:element> |