Quetion #1
I have a wokspace that takes the latest version of my data and creates buffers and then merges those to one polygon.
When 2 buffer polygons are near each other and close to create a hole. I would like to find a reasonable area size and remove only the holes. If there are small polygons for one reason or another I need to keep them.
Another question not exactly related mentions the donuthole extractor. Do I need to extract these and then delete them?
EDIT:
I used the solution with a tester and WAS successfull.
The part I was missing was I had to put all of this "behind" my first disolver.
It wasn't an actual donut until the two parts were together. I suppose I could get fancy and put some other locgic in front to make it that way.
The other problem I was having was it is using sq meters not hectares or acres. 🙂
On to the second problem which I have not had any luck with yet.
Question #2
I like the rounded version not the butt of bufferer. However would like to limit the ends (after the merge) to being only a specified distance from the end of the actual line.
OK I figured out I need to use the parameter created when I set the AreaCalculator. But I still don't see proper results.
I would like to chop off the end flat at maybe 20' offset from the actual end of the line.
Can I get a direction or pointer on accomplishing this?
Best Answer
I have come up with a solution to preserve only donuts below a defined area, the workbench is a bit messy as I had to hack together some shapefiles to make one with a range of donut holes in it.
The basic idea is to extract the holes using the extractor, calculate these polygon's areas and then do a test to exclude polygons above a defined size. These filtered hole polygons are then combined with the original input polygon using the Dissolver to fill in the holes that are above your defined limit.
As for the second part of your question, it seems a bit more complex, but I think it should be possible with a bit of creativity. I'll have a play around and if I can come up with anything I will edit this answer.
EDIT: To solve the second part of your problem I have used two buffers, one with no end caps and one with rounded ends. The buffer with no end caps is offset using both a positive and a negative Y value to extend the buffer by the required amount you wish to trim the rounded buffer. These two offset polygons are them aggregated and dissolved into a single polygon, selecting
Overlap
in the parameterOverlapping Input
. This polygon is the overlayed with the rounded buffer and areas with an overlap value of 2 are filtered out, giving the effect of trimming the rounded buffer by a defined amount above and below the original line.