# Simplifying Multiple neighbouring Polygons, removing gaps and overlaps

My main goal is to simplify multiple polygons, avoiding overlaps and gaps between them.

My initial approach was:

1. Find intersections for each polygon so that I end up with an array of polygons, each having a number of intersections.

Example: ```[ {polygon:{feature}, intersections:[linestring,linestring]}, {polygon:{feature}, intersections:[linestring,linestring, linestring]}, {polygon:{feature}, intersections:[linestring]} ]```

1. Assuming a polygon can be represented by its intersections and external lines (e.g. lines no intersecting with any other polygon).

• Slice a polygon into multiple linestrings.

• Simplify each individual linestring

• Concatenate the linestring to form a polygon

Example:

• Polygon A = simplify(A1) + simplify(A2) + simplify(Polygon A - (A1 + A2))

• Polygon B = simplify(B1) + simplify(Polygon B - B1)

• Polygon C = simplify(C1) + simplify(Polygon C - C1)

where A1 = B1 and A2 = C1

My question is, is this a good way to simplify multiple neighbouring polygons, or could you recommend a library or and algorithm for this task?