A friend of mine created a network of polylines that were all supposed to be connected. However, he just realized that many of the endpoints of the lines aren't connected, but are very close. I told him there should be a tool to snap the endpoints of the polylines if they are very close to each other, but I can't seem to find it. Does anyone know an easy way to do this?
|
|
The direction of the answer would depend on the license level of your ArcMap. ArcInfo does have this capability built in. Even Editor has some tools to accomplish this task. However with ArcView level you would need to depend on other tools to do this. Not sure if it has changed in 10. I have ArcMap editor 10 and the snap command
is what I would use. If you need other tools I think there are some free tools in et-geotools that will do it. |
||||
|
|
|
Depending on the distance identified as "close" there are tools. If you have at least an ArcEditor License for ArcGIS Desktop then you could create a Topology on the data. Once done during validation process the lines will move the distance of the cluster tolerance to snap to each other. By default the cluster tolerance is .001 m which is 10 times the default resolution of your data. If this automatic process does not do all of these it will identify where the errors are, in ArcMap there is an Error Inspector which will allow you to extend bulk lines so that it can then connect where possible. this will then enable you to have as many automated as possible. Hope this helps, CDB |
|||
|
|
|
You can use the geoprocessing "Integrate" tool which clusters vertices in the same way that topology validate does (without the need of creating a topology). At ArcGIS 10.0 there is a new tool called "Snap" in the Editing toolbox. The tool snaps the feature's vertices from 1 layer to the edge, vertex, endpoint of another feature. See link below. |
||||
|
|
|
Assuming your at the ArcView license and on 9.3, I would take a look at putting together a script in VBA. I would start off by taking some inspiration from some existing scripts at ArcScripts. For instance, this QuickSnap script may be of use? Open it up and see if you can fiddle it to do what you want. Or maybe this Snap & Split script. Id imagine you could run a script behind a UI control, to start an edit session, set a tolerance, cycle through features and snap endpoints of nearest other endpoints. If you can find a copy of ArcView 3.2, then there are plenty of Avenue scripts to choose from: Hope that helps :) |
|||
|
|
|
You can create a geometric network from those polylines and during the creation wizard you can enable feature snapping:
The wizard will move your lines to match the endpoint of other lines in that feature class within the given snapping distance. HTH |
|||
|
|

