...
The resulting GML ArcByCenterPoint can be encoded as follows:
Code Block |
---|
language | xml |
---|
linenumbers | true |
---|
|
|
...
<Surface gml:id="S01" srsName="urn:ogc:def:crs:EPSG::4326">
|
|
...
...
...
<gml:exterior>
<gml:Ring>
<gml:curveMember>
<Curve gml:id="C01">
|
|
...
<gml:segments>
<gml:ArcByCenterPoint numArc="1">
<gml:pos>44.82694444445 -0.72111111111</gml:pos>
|
|
...
<gml:radius uom="[nmi_i]">23.0</gml:radius>
|
|
...
<gml:startAngle uom="deg">-39.056642</gml:startAngle>
|
|
...
<gml:endAngle uom="deg">96.278174</gml:endAngle>
|
|
...
...
<gml:GeodesicString>
<gml:posList>44.78388889 -0.18750000 44.69055556 -0.29527778 44.63083333 -0.36416667
44.55222222 -0.45444444 44.56000000 -0.60305556 44.56166667 -0.63277778
44.57194444 -0.83333333 44.66666667 -0.83333333 44.82527778 -1.00000000
44.90000000 -1.00000000 45.12333333 -1.06138889</gml:posList>
</gml:GeodesicString>
</gml:segments>
</gml:Curve>
</gml:curveMember>
</gml:Ring>
</gml:exterior>
</gml:PolygonPatch>
</gml:patches>
</Surface> |
| Image Added |
Note that the second point of the arc (44°47'02"N; 000°11'15"W) is coded as the first point of the GeodesicString that follows the arc. This ensures that there is no gap between the end of the arc and the start of the next curve.
In this particular case where the first curve defining the surface is an arc, it is not necessary to code explicitly the start point of the arc. The geometry of the surface is properly close, as required by the GML rules, because the arc starts exactly where the last segment of the GeodesicString ends (45°07'24"N; 001°03'41"W).