Skip to main content

HI i'm sure there is a very simple answer to the question. I have a polygon with many small holes in it that i want to remove.

i'm running a DonutHoleExtractor followed by a tester to select holes <2m squared.

i want to merge only these small holes to my main dataset (so only the larger "real" holes are left)

i've tried running a Dissolver however this takes ages to run. can anyone think of another tool that would just merge these small holes into the larger polygons they touch?

Hi @jamiefinney, if you need to restore large holes, the DonutBuilder can be used after filtering the holes extracted through the DonutHoleExtractor.


yup D_holeExtractor, tester to filter small ones out and feed boundaries and larger holes to D_builder groupedBy object_id's

Like he said...


Thanks ​@gio and ​@takashi,

 

I’ve tried donutHoleExtractor. I get two results, through two ports: Outershell, Hole.

 

Outershell is exactly the same as the input. So, that one doesn’t do the job.

 

Hole port shows the cut out holes polygons like this example….

 

I can see how I could use these ‘hole’ polygons to merge with Outershell to give me the continuous polygon. However that wouldn’t work because the Hole polygons do not capture all of the holes, like this example…

 

I wonder if it that’s because some of the Holes contain small polygons, like a small island in a lake….

 

I’d need to capture holes like that those too. 

 

Thanks


Thanks ​@gio and ​@takashi,

 

I’ve tried donutHoleExtractor. I get two results, through two ports: Outershell, Hole.

 

Outershell is exactly the same as the input. So, that one doesn’t do the job.

 

 

The Outershell should be the outside of the polyons, with the holes omitted. Can you doublecheck that and if you do see a hole that you’re not expecting to see, check whether it’s really a hole. Maybe it’s connected to the outside with a really small sliver.


Reply