Skip to main content
Dear FME community,

 

 

how can I generalize "normal" polygons which touch themselve and do not overlap? If I use the Generalizer, it creates holes (= new areas) between the original areas. What I want is to simplify the outlines of all the areas together. The MultiLayerAreaGeneralizer (Layer ID set to 1) should to the trick, but by using this transformer, not all of the polygons that enter it come out in the end.

 

 

The amalgamator could perhaps be used like in the URL, but I'm not clear of the settings (and in self amalgamation mode, it takes forever):

 

 

http://fmepedia.safe.com/articles/Samples_and_Demos/Performing-polyonal-generalization-with-the-Amalagamator-Join-Polygons-Amalgams

 

 

Does anyone have an idea how I can just simplify the polygons together in the way of cartographic generalization? I want to create a new layer with just fewer details of the original data.

 

 

Kind regards,

 

Thomas

 

 

Hi Thomas,

 

 

How about using the SliverRemover after generalization?

 

 

Takashi
I have found that the Generalizer has the option "Preserve Shared Boundaries". The results look quite promising and the touching boundaries seem to be correct.

 

 

Kind regards

 

Thomas
I've overlooked that parameter. Thanks for sharing the information.

 

 

Takashi

Generalizer with this option is not performing very fast. How can I run things faster?


You can do following:

Create topology out of the object. The nodes should be ordered.

Test for duplicate nodes (x and y are equal). That should yield the ******* selftouching bits.

Remove the vertices between the range of the selftouchers.

Order of nodes is preserved, use counter to create new ordernumbers.

Use pointconnector.


Reply