My favorite keyboard shortcut is definitely Ctrl+Z. Undo. It can be comforting to know that a couple taps on a keyboard can quickly undo any typos or unwanted actions. Trial and error is an essential part of the scientific process, and … Continue reading
On Friday, July 17th, many ArcGIS Pro users saw a small window pop up on their computer screen. It announced to them, and to the world that a new version of Pro is available to download. I often find myself … Continue reading
Editing and data compilation are less commonly thought of as operations that can be automated through geoprocessing. However, ArcGIS 10 introduced the Editing toolbox, which contains a set of geoprocessing tools to perform bulk edits. These tools combined with others in the geoprocessing environment can automate data import and maintenance work. Automated data compilation tools are especially useful for importing data into a geodatabase but can also be employed on a regular schedule to perform routine quality assurance (QA) checks. In this entry, I will discuss the use of geoprocessing to clean CAD line data as part of the import process.
Importing data with geoprocessing
Lines that are created without the use of spatial integrity measures, such as snapping or topology, almost always contain some inconsistencies. These errors are likely in data that originated in formats such as CAD, shapefile, or KML. Fortunately, many common topological issues can be resolved in an automated manner by using ModelBuilder to link together tools that will import data into a geodatabase and perform standard data cleanup techniques.
I have a CAD file for a new subdivision that needs to be integrated with my existing GIS parcel data. The GIS data must be kept to stringent accuracy standards, so I need to fix any issues where lines do not connect to each other, overlap, or are duplicated. Rather than risk reducing the quality of the main parcels geodatabase, I can create a local temporary geodatabase where I can preprocess the CAD lines before introducing the features into the production geodatabase. Although the CAD file contains buildings, roads, text, registration tic marks, and other features, I plan to use only the parcel lot lines.
I have built a model that imports the CAD lines into a temporary scratch workspace, cleans and processes the lines, and then copies the corrected lines into an output file geodatabase. When importing CAD data into a geodatabase, I can choose from several available tools, including CAD to Geodatabase or Feature Class to Feature Class. The CAD to Geodatabase tool converts all the geometries in a drawing to individual feature classes, such as a line feature class for the parcel lines, annotation feature class for CAD text, and so on. In my case, I am using Feature Class to Feature Class tool because I need only the lot line geometry from the CAD file. This tool makes the model reusable because it can import many different formats and not simply CAD. In addition, the Feature Class to Feature Class tool allows for an SQL expression so I can further refine the import to include only the CAD features that satisfy an attribute query for lot lines (in this case, “Layer” = ‘LOT-L’).
Performing automated quality assurance on lines
Once the CAD parcel lot lines are imported into a geodatabase feature class, I can begin running tools to perform automated QA processes. Many tools are found in the Editing toolbox, although other toolboxes can be purposed for data compilation QA tasks. For example, I can start by using the Integrate tool in the Data Management toolbox to address minor inconsistencies in the line work. Integrate makes features coincident if they fall within the specified x,y tolerance. By using a small tolerance on Integrate (and other similar tools), I can avoid editing the data beyond the level of cleanup I intended. In addition, since I am running the tools on a copy of the data outside my production database, I can run the tools repeatedly to refine tolerance values to fix more issues in an automated manner. The intermediate data created as the model runs is maintained and can be reviewed in the scratch geodatabase.
After the dataset is integrated, I check for duplicated lines with the Delete Identical tool (Data Management toolbox). The dashed lines connecting to this tool represent preconditions, which are used to control the order of operations in a model. For example, the Integrated Lines output is a precondition to the Delete Identical tool. This way, the Delete Identical tool will not execute until the lines have been integrated.
The next part of the model identifies lines that are dangles. With the Feature Vertices to Points tool in the Data Management toolbox, I create a new point feature class containing the line endpoints that are not connected to any other lines. I can then use Select Layer By Location to identify the lines that intersect these dangling endpoints. The resulting selection represents lines with dangles.
Many of these dangle errors can be fixed by running the Editing toolbox’s Trim Line, Extend Line, and Snap tools. Effective use of the Editing toolbox geoprocessing tools can improve productivity because the tools apply edits in bulk, such as to all features or all selected features. In most cases, the similar editing function applies to only one feature at a time. Because I exposed the tolerances as variables and model parameters, I can easily run the model with different values because the tolerance settings appear as input boxes on the tool’s dialog box. For example, I am willing to extend or trim the lines from this CAD dataset initially up to a maximum length of five feet. After that procedure, I want to inspect the lines visually to see how many issues remain to ensure that I will not be making incorrect edits if I increase the tolerance value. I can change the tolerance as needed depending on the accuracy of the lines I am importing.
In addition, since my organization’s spatial integrity rules indicate the parcel lines should be split and not intersect themselves, I can use a sequence of spatial and attribute queries to find the locations where lines have intersecting endpoints. Lines are often split so that each length can be attributed separately.
Once these processes have run, the lines are output into a feature dataset in a geodatabase and are much cleaner topologically. After the model completes, I can run the Feature Vertices to Points tool again on the cleaned output to see the remaining dangles and compare the current number of endpoints that are dangles (the yellow circles in the graphic) to the number in the original CAD lines (the red circles). While there may be a few remaining issues, there are less than before running the model. At this point, I can build a geodatabase topology to check for and repair any other errors. When I am satisfied that the lines meet the standards for our spatial data, I can import it into the production database.
For more information:
The sample tools and data can be downloaded from the Editing Labs group on ArcGIS.com. An ArcInfo license in required to run the tools.
6. Trace edges when cutting polygons.
The current park design is landscaped with shrubs along the entire western border. However, I want the area to be three different types of vegetation, each separated by a foot path. I draw features for the new path lines first so I can use them to split the large polygon. Then, I select the polygon and click the Cut Polygons tool, change the construction method to Trace on the Feature Construction toolbar, and follow along the edge of the overlapping foot path feature. I need to make sure that the trace goes all the way across the polygon so the cut is successful. When I finish the sketch, the polygon is split and its edge exactly matches the shape of the path.
Another method I can use to split the shrub patch polygon by the overlapping foot path line is to snap to the edge of the polygon, right-click directly over the foot path line, click Replace Sketch, and finish the sketch. Replace Sketch pulls the shape of the underlying feature into the sketch used to cut the polygon.
7. Change attributes for multiple features in the Attributes window.
With the shrub patch polygon now split into three features, I want to make two of them flower beds by using the Attributes window to change the landscaping type. To update just two of the three selected polygons, I hold down CTRL and click the feature entries (listed by display expression) at the top of the window, then change their landscaping from Shrub Patch to Flower Bed. If I click the layer name, all selected features are updated; clicking just one feature updates just that feature’s values.
8. Extend lines by sketching with the Continue Feature tool.
The new foot path across the western landscaping needs to be extended eastward across the open space so it connects with another foot path. I can use the Continue Feature tool to extend a line by drawing a sketch. Since the path was digitized from the west originally, I flip the direction of the line so it will be extended toward the east instead. Continue Feature is available starting with ArcGIS 10 Service Pack 2, but must be added to a toolbar from the Customize dialog box because it is not on the default user interface.
9. Use Find Text to provide the text for annotation.
With my park features placed on the map, I want to add some annotation to describe them. To make the text string for a new annotation feature come from the attributes of an existing feature on the map, I can use the Find Text tool on the Annotation Construction window. For example, I click Find Text, click a recreational polygon, and it populates the text box with Athletic Field from the attributes of the polygon. This saves me from typing words manually.
10. Use the Topology toolbar to update multiple features at once.
I want to expand the area of vegetation around the recreational area so it goes closer to the eastern sidewalk of the park. This edge is shared by flower bed polygons, a foot path line, and open space polygons. I can build a map topology to make edits to all these features at the same time, including moving edges, reshaping edges, and modifying the vertices on the edges. I select the shared edge with the Topology Edit tool and use the Reshape Edge tool to update simultaneously all the features that share the common boundary.
The Shared Features window lists which features are part of the selected edge. By default, all shared features are updated when an edge is modified; I can exclude features from edits by unchecking the boxes next to the feature. Once I reshape the edge, the features are still coincident.
If I attempt to perform this edit with the Reshape Feature tool on the Editor toolbar, only one feature is updated at a time and gaps and overlaps will form among my features. With Reshape Edge, they are all modified together. Be sure to use the topology editing tools when making edits to features that share edges.
Content provided by Rhonda from the Editing Team
3. Set a feature template’s default attribute values.
By Jaynya Richards, Esri Research Cartographer
Modifying existing representation marker symbols in an ArcGIS style is easier than you’d think. Follow along to learn how you can do this, too. Start with any of the Esri styles that don’t already contain representation markers, like the NPS style that we have blogged about on Mapping Center. Make a copy of the style for backup. Continue reading
When editing, you can incorporate basemap layers into your map to increase productivity. If you have a complicated map, such as a water utility network containing many detailed features and underlying background layers, you can spend a lot of time waiting for the map to refresh whenever you pan or zoom. With ArcGIS 10, you can minimize this by creating a basemap layer containing the contextual reference layers that you are not editing, such as imagery or streets.
A basemap layer is a special type of group layer that is drawn using optimized map display logic that utilizes a local cache to refresh the map quickly. Basemap layers also help reduce network traffic since ArcMap does not need to contact the server repeatedly to retrieve the map extent. To create a basemap layer, right-click the data frame name in the table of contents, click New Basemap Layer, and drag the layers into it. Although a basemap layer can contain any layer format, such as feature classes, shapefiles, Web services, or rasters, some content types are more appropriate for use in basemaps. This post shows you how to identify layers suitable for basemaps, use the editing environment with basemaps, and improve your basemap performance.
Choosing the layers to be in a basemap layer
To use basemap layers effectively, they should truly form a basemap beneath the layers that you are editing. If you edit data for a water district, your operational layers, such as manholes, water main lines, and valves, cannot be part of a basemap layer because you need to edit them and have the features be drawn dynamically to access the latest updates from their data sources. However, any supporting reference layers that you normally display underneath the utility data can be placed in a basemap layer for enhanced performance. For example, you could include a land base of parcel boundaries, buildings, streets, and other built features, as well as imagery layers, in one or more basemap layers. The layers in the basemap look the same as they did before; they just draw faster now. Here is an example table of contents showing the kinds of underlying layers that could be basemap layers.
Basemaps tend to be relatively static and typically are updated on an infrequent basis. Rasters and service layers are good candidates for basemap layers because they are stable and can benefit greatly from improved drawing speed. ArcGIS Online, for example, provides imagery, topography, streets, and other content from several different sources that you can use in your maps. If you click the arrow next to the Add Data button and click Add Basemap, you can add layers from ArcGIS Online directly into a new basemap layer.
Editing when basemap layers are in the map
Because basemap layers are cached, there are limitations on what you can do with them. For example, you cannot edit the layers in a basemap or change the layer symbology. If you need to make edits or layer updates, drag the layer out of your basemap, make the changes, and drag the updated layer back into the basemap layer.
If you attempt to start an edit session with an editable layer in the basemap, ArcMap shows you a warning message. You can edit all the other layers in that workspace, but you cannot edit the layers in the basemap even if they belong to the same geodatabase. If the basemap contains any layers that are related to other editable layers through relationship classes, topologies, geometric networks, or parcel fabrics, or shares data sources with layers outside the basemap, you cannot start editing at all until you move the layer out of the basemap. You can double-click an entry in the Start Editing dialog box to open an ArcGIS Desktop Help topic containing more information on how to fix these and other issues that occur when you start editing.
Although you cannot edit the layers inside a basemap, you can snap to feature layers in a basemap layer. For example, if you were creating a new waterline in relation to building locations, you can still snap to the Building Footprints layer even though it is inside the basemap.
Improving basemap layer display and performance
With basemap layers, you can pan continuously and smoothly by pressing the Q key or holding down the mouse wheel. The rest of the map layers are redrawn once you release the key or the wheel button. If you find that the layers on top of the basemap are difficult to see, you can dim the display of the basemap using the Effects toolbar. This makes the basemap appear washed out and partially transparent, helping your operational layers stand out more. This can be useful for editing, especially in cases where your basemap layers contain orthographic images or other richly colored content that may obscure the details of layers on top of them.
Once you create a basemap layer, you can run diagnostic tests to check its performance. You can do this by right-clicking the basemap layer and clicking Analyze Basemap Layer to display a window listing ways you can speed it up even further. You might see messages indicating that the layer is being projected on the fly or uses complex symbology, which can slow down drawing. For example, the message “Layer draws at all scale ranges” is a suggestion to set a visible scale range on the layer since there is no need to display the layer when the features are too detailed or too coarse at certain map scales. You can right-click an entry to open the Layer Properties dialog box, where you can resolve many of the issues to get the most out of basemap layers.
Data used in the examples is modified from the Water Network Utilities Template by Esri and Fort Pierce, Florida.
3D Analyst 10 makes ArcGIS a complete system for 3D GIS.
That is a big statement so let me explain. Not only can you view your geospatial data in 3D Analyst, at 10 you can edit your data in 3D and analyze your data in 3D. Now that is pretty huge. Most companies focus on 3D visualization of geospatial data and some are very good at it. However you can only look at your data on a globe for so long. After awhile, the WOW factor starts wearing off and you’ll want to edit and analyze your data in 3D. This is what makes 3D Analyst different from 3D viewers.
So what does that mean: Edit in 3D and 3D Analysis?
We have enabled the standard ArcGIS editing environment inside both ArcGlobe and ArcScene. You can create and delete individual features, move, rotate, scale and replace feature geometry. This includes the ability to place 3D models (e.g.: COLLADA files) directly into the 3D view as new multipatch features, and then move / scale / rotate them on the landscape. All the standard editing options – Undo, Redo, Edit Templates, etc – are supported, as is the classic Snapping environment.
We’ve also made huge improvements in the analysis of 3D vector features. We have added 3D boolean operators such as Intersect 3D, Union 3D, Difference3D and Inside 3D to be used with closed multipatches, new GP tools that expose 3D vector analysis specifically for virtual city workflows, such as Skyline and Skyline Barrier and enhanced existing GP tools to work better with 3D – ‘Select by Location’ dialog uses 3D distances, multipatch objects can participate in the Line of Sight tool.
edit in 3D Analyze in 3D
So what does this all mean?
It means that 3DAnalyst 10 is a big leap forward for the handling of 3D GIS data. Not only can you view huge volumes of your data in 3D, you can edit your data in 3D, analyze it in 3D and easily share it with your colleagues or the public.
That sounds great but what can you actually do with it?
I’ll get into that in more detail next time.
Gert van Maren
3D Product Manager