| Original
dataset

|
Source
dataset sent from a customer. Visually looks good, but has several
topology problems. |
| Clean
Polygons

|
STEP1: Clean
Polygons function will
- Fix all coordinate inaccuracies within the Fuzzy (Cluster)
tolerance used.
- Create a separate polygon from the overlapping area of polygons.
The result will not have any overlaps. The polygon will have the
attributes of one of the overlapping polygons.
- Indicate with a point dataset the areas of overlaps in the
original dataset (optional)
Note: The use of very large Fuzzy tolerance might result in
unwanted approximation of the original shapes. |
Overlap
polygon - Sliver. |
If zoomed in the area of a
point that indicates an overlap we'll see something like this. In some
cases the overlap polygons might be real polygons, but in most of the
cases they will be slivers and have to be cleaned by joining them to
the neighboring real polygons. |
| A
Sliver polygon is a small polygon feature commonly occurring
along the borders of polygons following a overlay of two or more
polygon datasets or as a result of inaccurate digitizing.
There a several ways of identifying and cleaning the sliver
polygons, but in this case the best option is
- Create in the point dataset identifying overlaps a new field
(named for example "Sliver")
- Populate the field with the same value for all the points (for
example "Yes")
- Use Spatial
Join from the toolbox implementation of ET GeoWizards or the
standard ArcMap tool to join the points identifying overlaps to
the clean polygon dataset created in STEP1. All the new polygons
(overlaps) that have been created in STEP1 will have now [Sliver]
= "Yes"
The purpose of the above is to add to the attribute table of the
polygons an attribute identifying the slivers. This attribute will be
used in STEP 2 below. |
Identified
Sliver Polygons
Before Eliminate
After Eliminate |
STEP
2: Eliminate
function has several options to identify sliver polygons:
- Attribute query
- Thickness ratio
- Circularity ratio
After the preparation made above we can
use "Attribute query" option with [Sliver] =
"Yes". The highlighted polygons will be selected for
eliminating.
The Eliminate function has four methods for eliminating slivers.
For this task you can use two of the options:
- Join (Largest Area)
- Join (Longest boundary
The images on the left show the result of the Eliminate function. |
| After Clean Gaps

|
STEP
3: Clean
Gaps function will identify the gaps between the polygons and
create new polygons from them. The attribute table of the resulting
feature class will have a new field - "ET_Gaps". The gap
polygons will be indicated in this field as "Gap", the
original polygons will be indicated as "Original"
Notes:
- Only the gaps that are completely
enclosed by polygons will be converted to new polygons. Gaps that
are not completely enclosed - "leak" towards the
"Universal" polygon will remain
- Some of the gaps might represent
"True" gaps in the data. They will be filled by new
polygons and indicated as "Gap" in the attribute table.
Since we do not want to join them to the real polygons we can just
select :(for example "ET_Gaps" = 'Gap' AND "ET_Area" > 300 ) and
delete them.
STEP 4: The rest of the
"Gap" polygons can be joined to the adjacent polygons using
the Eliminate
function with attribute query "ET_Gaps" = 'Gap' |
|

|
Example from another location
in the same dataset:
1. Original |
 |
2. After Clean Polygon
function - a sliver polygon (former overlap) can be seen |
 |
3. After Eliminate function -
the sliver polygon merged to the original neighboring polygon |
 |
4. After Clean Gaps function -
the gap filled with a new polygon |
 |
5. After Eliminate function
- The sliver (former gap) polygon merged to the neighbor. |