Skip to main content
Question

PolygonPatch builder


Hi,

 

 

I want to make several polygon features as a single GML Surface feature. I need to convert polygons into PolygonPatches and then aggregare them into single Surface (with several polygon patches) grouped by specified attribute. How to get this done?

I tried Aggregator, GeometryCoercer, different combinations, but, nothing.

3 replies

takashi
Contributor
Forum|alt.badge.img+21
  • Contributor
  • October 16, 2015
Hi,

 

 

GML MultiSurface can be created from an aggregate feature with the GeometryExtractor. I'm wondering if it can be modified into GML Surface through some XML and/or String operations.

 

 

Or, use the GeometryExtractor to create GML Surface for each single polygon; extract PolygonPatch element form the resulting Surface; and then construct the required GML Surface that contains multiple PolgyonPatch elements.

 

 

Anyway, some transformers in the XML category might help you.

 

 

Takashi

  • Author
  • October 16, 2015

Takashi,

 

 

I already made Surface using this approach in PythonCaller. But it is 'slow' because it uses string concatenations, xml fragmentation and so on.

If there is no FME built-in transformer, I'll optimize mine a little bit more.

Thanks anyway!


takashi
Contributor
Forum|alt.badge.img+21
  • Contributor
  • October 16, 2015
Python is also good, but I think XML transformers are also worth to try.

 

e.g.

 

 

 

XQuery Expression parameter (XMLXQueryUpdater)

 

-----

 

declare namespace gml='http://www.opengis.net/gml/3.2';

 

<gml:Surface>

 

<gml:patches>

 

{//gml:PolygonPatch}

 

</gml:patches>

 

</gml:Surface>

 

------

Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings