Question

Write arcbycenter geometry in gml output aixm format

  • 7 November 2017
  • 4 replies
  • 4 views

Badge

Hi,

Probably this question has been asked before. ...

I have a geometry IFME arc well made in the workbench ( arc by centerpoint, or arc by centerpoint with end points ).

When i extract this geometry with GeometryExtractor i didn't obtain a <gml: arcbycenterpoint > description but a <gml: linestring > description. Only exception : arc with 3 points.

I used 2Darcreplacer to construct this arc.

It seems the only solution to obtain what i want is to write an XML templater with the desired squeleton and put the attributes inside. And when i retrieved the geometry with a geometry replacer + geometry extractor It doesn't change.

The problem is when i want to aggregate arcs with lines or with arcs again to obtain a complex geometry. With the transformers inside FME it's well made ( 2Darcreplacer, arcpropertysetter. ...) and i obtain a <gml: surface> made with many parts. ( aggregate in FME workbench made of IFME Polygon with IFME Paths made of IFME arc and IFME Lines ....). But i have to replace all the arcs written in <gml: linestring> if i want to extract the geometry in gml !!!!

with a templater it becomes more complex for such <gml: surface> structure . I can't use the same squeleton

Ex : surface can be made with arc + linestring + arc or any combination of these geometries in a form not known at the beginning of the process. So a squeleton Xml templater is not possible, each case is different.

Question 1 : the process of writing arcs with Python is possible without bad transformation in gml alter the creation ?

Question 2 : each part can be divided ( arc in one side in XML templater described in gml ) and linestring in the oder side in XML templater too ( with a dynamically list of points forming the lines). Is it possible to aggregate and reconstruct the <gml: surface> hierarchy without loosing the real arc geometry.

It's really strange that the combination ( 2Darcreplacer - GeometryExtractor gml) loose the good description of the arc in gml

Any ideas and advices ?

Thanks


4 replies

Userlevel 4
Badge +25

I just set up a small test (workspaces attached) and indeed it seems the GeometryExtractor set to GML strokes an arc that's been defined as arc by centerpoint, an arc from 3 points works just fine though.

I suspect that this may be a bug, the GML specs do show that that type of arc is supported. I'll alert Safe's support.

arcs-in-gml.fmw

Badge

@DeanAtSafe Can you have a look at this question ?

Userlevel 3
Badge +13

Hi @philippe33 and @redgeographics. I have received the following information from development:

 

"In GML, ArcByCenterPoint only has one radius and so it has to be a circular arc, otherwise we just stroke it. So in this case, either the FME arc by center points has two different radius, or we have an issue in our circular/non-circular arc detection or code somewhere."

If you think it is the second option, would you please share a sample of your data and workspace with us @philippe33? You can attach it to this question, or please submit a support request and reference this question. Thanks.

Badge

Hi @philippe33 and @redgeographics. I have received the following information from development:

 

"In GML, ArcByCenterPoint only has one radius and so it has to be a circular arc, otherwise we just stroke it. So in this case, either the FME arc by center points has two different radius, or we have an issue in our circular/non-circular arc detection or code somewhere."

If you think it is the second option, would you please share a sample of your data and workspace with us @philippe33? You can attach it to this question, or please submit a support request and reference this question. Thanks.

Hi,

 

 

in input data, i have a AIXM 5.1 file with description of airspace. ( see AirspaceTimeSlice description in the .xsd file provided in FME folders).

 

In this file there is a structured description of "surface {xml_geometry}" . Inside this one, it's possible to set many gml fields. Arcbycenterpoint définition in gml is possible inside with one radius ( correct) and one startangle ( correct) and one sweepAngle ( correct).

 

When i read this file with FME and just see it with the inspector, the arc is always written with 2 radius ! And then it became an ellipse. ..

 

It seems to be normal because it's a projection made by FME ( Internal work ?) on the surface of the earth. A circle is transformed in a ellipse. Correct ?

 

The backward processus ( write again the same gml ) doesn't work and it's stroke.

 

I send you a workbench

 

Reply