dissolve is distorting geometry

1758
9
04-13-2017 02:49 PM
KeithD1
New Contributor III

Running ArcMap 10.1

I am using the Dissolve tool on a polyline shapefile, dissolving on two attributes (not sure if that matters).

The resulting output always contains small geometric distortions. It appears that not all of the vertexes are being carried into the dissolved linework. If I reduce the number of input features (subset the geographic extent) the situation improves, but does not go away.

Is this a bug? Any solution? I was hoping to rely on this tool but with this happening, it's just too risky.

Thanks!

Tags (3)
0 Kudos
9 Replies
DanPatterson_Retired
MVP Emeritus

Image?  you could always densify if it is a more global problem.  And you are working with projected data? since problems will be greater if the data are in geographic coordinates

0 Kudos
AbdullahAnter
Occasional Contributor III

Could you insert snapshot of the status before dissolve and after and the attribute table ( dissolve fields) for error features?

0 Kudos
KeithD1
New Contributor III

Thanks you both.

I will provide some images tomorrow.

All I can think of is if there's a maximum number of vertices per feature and I'm hitting that ceiling so ArcMap has to discard some.

The data represents 14,000 miles of roadway centerlines which are broken into roughly one mile segments, each segment has many vertices. I am dissolving the input on "route number" and there are a few hundred routes, some of which are comprised of 1000+ individual input features. So there must be a large number of vertices.

Sent from my iPhone

0 Kudos
DanPatterson_Retired
MVP Emeritus

Grief... you will definitely get some differences, but you may be able to control distortions by using Simplify Line  You will then have some control over what vertices are removed prior to dissolving by attributes

KeithD1
New Contributor III

Unfortunately Simplify Line in 10.1 has a bug too. I can't use it because it requires a tolerance parameter, and there is no way to provide that unless you run the tool in batch mode.

Sent from my iPhone

0 Kudos
ChrisDonohue__GISP
MVP Alum

Just an idea - can you copy the data into a File Geodatabase and then run the Dissolve?  That may offer better results, as most of the limits for a File Geodatabase are higher than for a shapefile.

Also, are you sure the topology for the lines is solid before the Dissolve is run?  It may be that the geometric distortions you are seeing are actually cases where the line topology was not properly connected in the first place.

Chris Donohue, GISP

KeithD1
New Contributor III

Right now the file (it's actually an oldschool arc/info coverage) is being copied into an in_memory workspace where I do a few things as part of a groprocessing model, including the dissolve. I'll try using a file geodatabase for the scratch workspace, that's a good idea.

Sent from my iPhone

0 Kudos
ChrisDonohue__GISP
MVP Alum

I'm trying to remember if there were settings for coverages that affect Dissolve, but it's been too many years.  Let me instead tag someone who is very knowledgeable about working with coveragesrastrauch 

Chris Donohue, GISP

0 Kudos
RebeccaStrauch__GISP
MVP Emeritus

Coverages have a 500 maximum vertices per feature, then they are "split" with a "pseudo" node (two lines into one node). If auto split, the -ID ("dash Id") will remain the same.  Just an FYI, one line into a node (eg an end point) is a dangle node....multiple lines to same node, makes it just  a node, by definition.

i haven't used the ArcGIS Desktop tool much for coverages, but the best, most reliable way I found when I was moving my coverages to geodatabases was to take advantage of the coverages "REGION" features.  The region features let you group or associate multiple features by common attributes (with tools) or by manually selecting features in ArcEdit.  You can use the same feature in more than one region feature.  Clean topology (i.e., nodes that connect, lines that don't overlap, etc.) is still important, and using the BUILD command in ArcINFO Workstaion (with the property feature type as an argument) was important.  CLEAN could also work, but could eliminate features or adjust vertices within the fuzzy tolerance if not careful.

With REGION features in a coverage, you could actually have multiple representations, or REGION feature classes, of the different features types (point, lines, polygons) as separate displays from the same underlying geometry.  This was very powerful.

The semi-equivalent data management style in a geodatabase would be a dataset and feature classes with topology rules in place.  We used our REGION features, which were mainly based on polygon features, from about 27 different coverages, and where able to rebuild the polygon features into three gdb feature classes with topology.  I realized after multiple tests that mixing the arc/line and point/label/attribute REGIONS with the Poly regions in the topology didn't work, but all can be re-created with custom scripts to rebuild what I had in coverages.

more than you probably were asking, but it may help if/when you start moving from coverages.  I was a hold out for many years and had to wait until the topology rules were adequate, and a projection bug was fixed (which happened with the release of 10.0, so a few years back now).

So, bottom line, I'm not 100% sure about DISSOLVE and more, but the FUZZY tolerance (which can introduce fuzzy-creep), the 500-vertices limit, other possible "tolerances", etc can effect coverage processing.  Instead of DISSOLVE, try creating REGION features that is very powerful and will not change the underlying geometry.  Once the geometry is clean, you can convert the REGION features to gdb feature classes.  My recommendation.