Arc4You Poly Clean 1.0.0.3
With this extension for ArcView 3.x you can clean the topology of polygon themes. All possible errors like destroyed or overlapping polygons as well as gaps between the polygons can be cleaned. You should clean a polygon theme after importing (e.g. from ARC/INFO Coverage or AutoCAD drawing) as well as after editing or geoprocessing it (e.g. intersecting polygon themes using GeoProcessing Wizard or XTools). Particularly before final data transfer or conversion into a ARC/INFO Coverage this cleaning should happen.
Why is the topology of polygon shapefiles often incorrect?
Why shall I truncate the coordinates of all vertices?
When you load the extension into your ArcView project, the new button
will appear in the button bar.
Click on this button to analyze and clean the active polygon theme.
Hint: Press the Shift key when clicking on the button in order to reopen the command with the previous settings. Thereby you can repeat the cleaning process or apply the same cleaning on other themes.

What's new in version 1.0.0.3:
- Overlaps of polygons that extended over several zones were only cleaned in the first zone (cleaning is done zone by zone). This bug has been fixed. To ensure that there really are no overlaps, you should clean shapefiles with the new version again!
- If Self Intersections in polygons were created by truncating coordinates, these polygons were not detected as multipart and were not exploded into single polygons. This bug has been fixed.
- Sliver Polygons are no more attached to polygons that are only connected at a single point (hidden node) because multipart polygons would result.
- Sliver Polygons that were overlapped by other polygons were identified as fuzzy vertices in the previous version. This bug had no effect on the results, but deleted vertices were reported and displayed as fuzzy.
What's new in version 1.0.0.2:
- Exploding Multipart Polygons into single polygons is now much faster. In the previous version the shapefile was copied and the records were duplicated within this file. But in ArcView this is apparently much slower than copying records from one shapefile (source) to another (destination).
- Removing Sliver Polygons was accelerated a lot too. Removing thousands of polygons caused an enormous slowdown in the previous version due to an overload of memory.
With this extension the following errors can be found and cleaned automatically:
- Empty or Collapsed Polygons (area 0) are deleted, because they are irregular and may cause problems.
- Multipart Polygons (polygons with several spatially separated parts) can be exploded into multiple single polygons (records). These polygons are not incorrect but may cause problems when the shapefile is processed. In ArcView these polygons occur by editing, intersecting or combining polygons.
- Incorrect Polygons are cleaned with the maximum settings of ArcView, where intersections are checked as well as the grain direction of outline (clockwise) or islands (anti-clockwise) and overlapping rings. This is necessary after converting an ARC/INFO Coverage into a shapefile, because the surrounding polygons of pseudo islands (these are "peninsulas" that are connected with the surrounding polygon at a single point) are converted incorrectly. As these islands are not detected and are therefore not removed from the surrounding polygon (the points are stored in the wrong direction), it's area is too big by the size of the island. Statistics on the area of such shapefiles are incorrect!
- Duplicate and Overlapping Areas can be identified and cleaned easily. In that process polygons in the foreground (higher record number) have priority. Therefore after cleaning the shapefile, it will be displayed exactly as before. Polygons that are totally covered by others are completely deleted, otherwise only the overlapping area is removed. All overlapped and removed areas are stored in a separate shapefile. Thereby you can control the results and restore polygons that are still required (you can use the Update function of the XTools extension to transfer some polygons back into the cleaned shapefile).
- Sliver Polygons are very small or thin polygons that are hardly visible. They result from editing or intersecting polygon themes. Deleting these polygons is mostly not reasonable, because this would create gaps. With this extension you can remove sliver polygons, that are smaller or thinner (see Thinness Ratio) than a specified value, by appending them to other adjacent polygons. There are several methods for choosing the best adjacent polygon (total area, length of borderlines, enclosed area or angle of the joint lines - see Method).
- Gaps between polygons are empty areas that are surrounded by polygons on all sides. When editing polygons in ArcView, very small or thin gaps can occur that are hardly visible. It is nearly impossible and very time-consuming to find and clean these gaps. With this extension you can easily fill all gaps or gaps that are smaller or thinner (see Thinness) than a specified value. There are different methods to fill gaps (like deleting polygons - see Method).
- Hidden Gaps are a kind of inversions or indentations in marginal polygons, that are only closed at a single point (a so-called Hidden Node). As there are no neighboring polygons, no gap can be detected. A hidden node can be found nevertheless, as the contour of this polygon passes through it twice. Cleaning can be done like normal gaps.
- Zero Point Vertices (at coordinate 0/0) occur due to calculation errors in ArcView when intersecting polygons (see Truncating Coordinates). They are noticeable as narrow stripes that run out of the theme across all other polygons far left to the bottom of the visible extent. Each stripe is a single vertex that leads from the contour of a polygon to the coordinate 0/0 and back to the next vertex on the contour. It may happen that the calculation error only occurs in one axis, so only the X or Y coordinate are zero. Such vertices can also be found as they lay outside of the polygon extent that is stored in the shapefile (This indicates that the error occurs when the shape is stored in the shapefile and not before).
Warning: If you clean a polygon shapefile without removing these vertices, irreparable errors will result. The program would find self intersections and overlaps and would try to "clean" them, whereby other polygons would be covered or gaps would be filled.
- Fuzzy Vertices are slightly displaced vertices in the contours of adjacent polygons (the borderlines are not identical). They are created by editing shapefiles due to the variable Fuzzy Tolerance of ArcView (see Fuzzy Tolerance). They cause tiny little gaps and overlaps that are not visible at a normal scale and can't be cleaned with on board functions of ArcView because every intersection between the polygons underlies the internal fuzzy tolerance. Therefore we call them Hidden Gaps and Overlaps. These errors can be cleaned by snapping all other vertices in the nearest surroundings to this point (within a distance of 1/10.000 of the theme extent).
How to find fuzzy vertices: In a shapefile each vertex between adjacent polygons should exist twice, each corner point between several polygons (node) three or multiple times and each vertex along the outer border once. You can get the marginal vertices by combining all polygons to an overall polygon. All other single vertices are fuzzy.
How to find thin polygons: To identify thin areas (so-called Sliver Polygons) we use the so-called Thinness Ratio, the relation between the area of the polygon and the square of it's maximum elongation in X and Y axis (e.g. 100x100 m² at an X/Y extent of 30/100 m). This value is reciprocal to the QDRatio or Thickness Ratio (that is for example used in the extension Edit Tools of Ianko Tchoukanski). The larger the value, the thinner is the polygon. At a value of 10 the polygon covers the tenth part of its extent. Squares reach the minimum value of 1. In opposite to the Sliver Ratio (area-perimeter ratio - introduced in ArcView 3.2) this value is independent from the length and frayness of the polygon contour. Even a dense network of finest "veinlets" would not be classified as thin (i.e. would achieve a small thinness ratio), if it fills a major part of its extent.
How to find gaps and overlaps: The algorithm for the detection of gaps and overlaps has been optimized in speed (as far as this is possible in Avenue) and requires only a few minutes even for thousands of polygons (the duration increases linear by the number of polygons). This is achieved by dividing the theme in rectangular areas of some hundreds of polygons and analyzing each area for gaps and overlaps at a single step. If one of these areas contains more than 400 polygons, it will be divided in equally sized rectangles with approximately 200 polygons each (e.g. an area with 800 polygons will be divided in 2x2 rectangles). If you have activate the option Display Errors as Graphics, the currently analyzed area will be drawn as a black frame.
© 2003 WLM Klosterhuber & Partner OEG