Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue: gml:Arc in surface gives error #1577

Closed
johan974 opened this issue Sep 22, 2023 · 1 comment
Closed

Issue: gml:Arc in surface gives error #1577

johan974 opened this issue Sep 22, 2023 · 1 comment
Labels
question user question

Comments

@johan974
Copy link

johan974 commented Sep 22, 2023

Deegree-core: I get this error:

Cannot determine control points for ring, contains non-linear segments

There is a valid path starting from http://www.datypic.com/sc/niem21/t-gml32_MultiSurfaceType.html. You can find a path from multisurface > surfacememeber > surface > patches > polygonPatch > exterior > ring > curveMember > curve > segments > arc.

On this geometry:

<gml:MultiSurface>
    <gml:surfaceMember>
       <gml:Surface srsDimension="2">
          <gml:patches>
             <gml:PolygonPatch>
                <gml:exterior>
                   <gml:Ring>
                      <gml:curveMember>
                         <gml:Curve>
                            <gml:segments>
                               <gml:LineStringSegment>
                                  <gml:posList>118524.840 406164.280 118519.852 406161.756</gml:posList>
                               </gml:LineStringSegment>
                               <gml:Arc>
                                  <gml:posList>118519.852 406161.756 118519.145 406161.377 118518.437 406161.000</gml:posList>
                               </gml:Arc>
                               <gml:LineStringSegment>
                                  <gml:posList>118518.437 406161.000 118519.564 406159.203 118511.154 406154.290 118512.015 406152.813 118514.023 406149.364 118516.300 406145.460 118521.155 406148.289 118526.199 406151.228 118530.320 406153.630 118530.710 406153.010 118531.330 406153.410 118524.840 406164.280</gml:posList>
                               </gml:LineStringSegment>
                            </gml:segments>
                         </gml:Curve>
                      </gml:curveMember>
                   </gml:Ring>
                </gml:exterior>
             </gml:PolygonPatch>
          </gml:patches>
       </gml:Surface>
    </gml:surfaceMember>
 </gml:MultiSurface>

What about other libraries? For example, the pdok/gml3-jts, processes the geometry.

@tfr42 tfr42 added the question user question label Oct 17, 2023
@tfr42
Copy link
Member

tfr42 commented Oct 17, 2023

That questions looks more like one which the OGC GML SWIG members would like to answer.
Did you checked also the spec https://www.ogc.org/standard/gml/ and related test suite https://github.com/opengeospatial/ets-gml32 for more information?
If you would like to test yourself how deegree processes GML geometries like this, just add a valid GML file into the folder https://github.com/deegree/deegree3/tree/main/deegree-core/deegree-core-base/src/test/resources/org/deegree/gml/misc/geometry and add a unit test to https://github.com/deegree/deegree3/blob/main/deegree-core/deegree-core-base/src/test/java/org/deegree/geometry/validation/GeometryValidatorTest.java. If this runs into an error and you consider this as an bug in deegree please re-open the ticket and describe the bug in detail. You may also add a PR which fixes the bug. Also keep in mind that we mostly deal with GML data when a deegree WFS is in use. In such case please check yourself if the given data can be processed when used in a Memory feature store.

And a general remark, for inquires like this you found yourself already the right place at https://gis.stackexchange.com/. See https://www.deegree.org/community/ and https://github.com/deegree/deegree3/wiki/Bug-Report-writing-Guidelines for further information. Thank you for your understanding.

@tfr42 tfr42 closed this as completed Oct 17, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question user question
Projects
None yet
Development

No branches or pull requests

2 participants