Skip to main content
Question

AreaGapAndOverlapCleaner does not fill gaps with grouping enabled

  • Nov 9, 2026 10:18 AM UTC
  • 2 replies
  • 13 views

koenterralytics
Supporter
Forum|alt.badge.img+11

I'm trying to use the AreaGapAndOverlapCleaner to fill gaps in my polygons. This works fine without grouping, but as soon grouping is enabled, the donuts and other slivers in the polygons are not filled any more. See screenshots below. The tolerance in both situations is 25cm. The only changed setting is the grouping. I used the AreaGapAndOverlapCleaner for many years now and never experienced this before. In most situations I used ‘automatic’ as tolerance.

I'm using Form 2026.2. I also tried to recreate the process in 2025.2.4 and still experience the same issue. 

Does anyone know why the donuts and slivers are not removed when grouping is enabled? 

Grouping disabled: all small holes are filled (as expected)

 

Grouping enabled: small holes and slivers still present. 

 

2 replies

j.botterill
Evangelist
Forum|alt.badge.img+69
  • Evangelist
  • Nov 9, 2026 12:56 PM UTC

few things I'd check:

  • Verify that all polygons surrounding the donuts/slivers belong to the same group value.
  • Inspect the features that form the boundary of the hole. If they're split across multiple groups, the cleaner won't be able to resolve the gap as it did when processing the dataset globally.
  • Run a simple test by assigning all features the same group value. If the holes are filled again, that would confirm the grouping is the cause rather than the tolerance setting.
  • Check whether any attributes used for grouping contain unexpected nulls, whitespace, or subtle value differences that could be creating more groups than expected.

Since you're seeing the same behaviour in both FME Form 2026.2 and 2025.2.4, this feels less like a regression and more like the topology being evaluated differently once grouping is applied.

It may also be worth examining the geometry of the remaining "donuts". In some cases they're not being treated as gaps within a group at all, but as interior rings of a polygon, which can change how the transformer handles them when processing grouped features. GeometryFilter prior to areaGapAndOverlapcleaner passing each type through separately 


koenterralytics
Supporter
Forum|alt.badge.img+11

I think I've been able to narrow down the issue. The AreaGapAndOverlapCleaner does not seem to edit single features. To test this, I sampled 1 feature from my dataset. When the sampler followed by the AreaGapAndOverlapCleaner immediately, the slivers/donuts are not removed. When I clone the exact same feature, followed by the AreaGapAndOverlapCleaner, the slivers/donuts are filled as expected. Grouping does not influence this.

So, did I always misunderstood the way the AreaGapAndOverlapCleaner should work, or is this a bug? I think the last, because there is no other transformer which does the same for single features? (The SliverRemover does not exist any more and the SpikeRemover and DonutHoleFilter as combination is not doing exactly the same)