Array of Geoprocessing Options in ArcGIS 9
ArcGIS 9 provides a complete geoprocessing framework and tool set for ArcGIS Desktop at the ArcView, ArcEditor, and ArcInfo licensing levels.
|With ArcGIS 9, ArcToolbox changes from a standalone application to a dockable window within any ArcGIS application.|
Geoprocessing, along with mapping and data management, is one of the fundamental capabilities of GIS. Some people define geoprocessing broadly as all operations that accept input and generate output inside a GIS. Others limit the definition to processes such as feature overlay. Whatever the scope of the definition, most GIS users agree that the term refers to a process that applies defined operations to a set of inputs and generates new information that answers a spatial question.
Geoprocessing tools range from common GIS operations, such as overlay, buffer, and data management, to more advanced operations for raster processing, topology, and schema definitions. Traditionally, ArcInfo Workstation and ARC Macro Language (AML) have been used for these tasks.
ArcGIS 9The Geoprocessing Framework
Prior to ArcGIS 9, geoprocessing in ArcGIS used a hybrid approach. While working in ArcGIS Desktop 8, a small set of new commands that work on geodatabase feature classes could be accessed. Most geoprocessing tools were run from the Arc: prompt in ArcInfo Workstation.
Whether working in ArcInfo Workstation or ArcGIS Desktop, many geoprocessing operations required the conversion of data to coverages. ArcGIS 9, which is fully operational in the ArcGIS Desktop environment, supports including geodatabase feature classes, map layers, coverages, shapefiles, grids, and triangulated irregular network (TIN) data and modernizes all geoprocessing operations.
Although the number of tools available at each licensing level varies, ArcGIS 9 provides a common geoprocessing framework for ArcView, ArcEditor, and ArcInfo. ArcView supports a core set of simple data loading and translation tools as well as approximately 40 fundamental analysis tools. ArcEditor augments this set with tools for geodatabase creation and loading. ArcInfo supplies approximately 200 tools including all geoprocessing functionality that has been available in ArcInfo Workstation. ArcInfo supports advanced analysis and complex work flows. Additional geoprocessing tools are supplied by ArcGIS extensions. For example, ArcGIS Spatial Analyst and ArcGIS 3D Analyst add more than 200 tools such as raster modeling tools. Table 1 lists some of the geoprocessing tools available.
One noticeable interface modification occurs with ArcGIS 9. ArcToolbox changes from a stand-alone application to a dockable window within any ArcGIS application (e.g., ArcMap, ArcCatalog, ArcScene, or ArcGlobe). Users can now share tools in any application. These tools can be custom tools, such as models or scripts, or system tools from other toolboxes. Toolboxes can be added or removed and users can create custom toolboxes for storing shortcuts to often used tools, models, scripts, and favorite toolboxes.
Toolboxes can be created inside a folder or a geodatabase; copied and pasted from one location to another; and altered by adding, deleting, or renaming tools or tool sets. Documentation for a toolbox can also be created or edited and will be added to the ArcGIS Desktop online help. As tools execute, the geoprocessing window displays messages that provide the status of the processes being executed.
Many Ways of Working
The geoprocessing framework and tools in ArcGIS 9 provide great flexibility. The same operations, commands, or tools can run using dialog boxes, quickly at the command line or interactively in visual models, as well as being integrated into multipart scripts. Geoprocessing ArcObjects can supply advanced analysis capabilities to custom applications written in industry-standard programming languages such as C#. Each method for accomplishing geoprocessing tasks works with all supported data formats.
Using Dialog Boxes
Dialog boxes let users become familiar with tools in ArcGIS. They guide the user through the steps needed for running a tool, indicate when data should be specified, and make suggestions for any necessary parameter values.
Using the Command Line
Experienced ArcInfo Workstation users will feel right at home with this option. The command line is available for ArcInfo, ArcEditor, and ArcView. The intelligent command line in ArcGIS Desktop 9 features autocompletion and honors the domain set for each parameter so valid parameter values, whether layers or keywords, are presented in a drop-down list. For users familiar with a tool and its parameter values, running from the command line is quick and convenient.
|ModelBuilder provides a graphic modeling framework for building geoprocessing work flows and scripts and speeds design and implementation of complex geoprocessing models.|
First introduced with the ArcView Spatial Analyst 2 extension for ArcView 3, ModelBuilder provides a graphic modeling framework for building geoprocessing work flows and scripts and speeds design and implementation of complex geoprocessing models. Models are data flow diagrams that connect tools and data to create advanced procedures and work flows. Users can drag tools and datasets onto a model to perform an ordered sequence of complex GIS tasks. Models can be saved, modified, and rerun. Consequently, ModelBuilder has great value as a mechanism for sharing methods and procedures with others.
Models process input data and generate output data that can be used as input for other operations. Procedures can be repeated with altered or different data and/or modified parameter values. For example, a user could build a model that extracts data from an external database of customer addresses, geocodes them in ArcGIS, and outputs a geodatabase feature class.
ModelBuilder's flexibility allows any tool's parameter value to be shared between processes so that a shared value need only be updated once for a model. External applications can also be called from within ModelBuilder using scripts. Models document processes and can easily be exported to a script for editing or sharing. Available in ArcView, ArcEditor, and ArcInfo as well as several extensions, ModelBuilder can be used with all data types and tools.
Because geoprocessing often involves processing many datasets or datasets with many records, geoprocessing tasks typically are repetitive and good candidates for automation. Any scripting language with a COM interpreter, such as Python, JScript, or VBScript, can be used to write scripts that execute ArcGIS Desktop 9 geoprocessing tools and automate tasks. Because these scripting languages are not proprietary, many resources for learning them are available.
Scripts can execute simple processes employing a single tool, complex processes that link several tools together, or looping operations that perform batch processing on input datasets. Scripts are also recyclable because the data can be nonspecific. The ability to execute scripts outside of ArcGIS Desktop 9 provides opportunities for increasing efficiency.
Veteran ArcInfo Workstation users with AML experience will likely find the transition to a new scripting language easy. For users unfamiliar with scripting languages, ModelBuilder provides a built-in tool for script creation. Simply create a model and export it to a script. In addition to running as stand-alone operations, scripts can be added to a toolbox and can run a dialog box.
Using Geoprocessing ArcObjects
Geoprocessing objects can be accessed in a development environment to create custom applications using Visual Basic, C++, and C#. Any geoprocessing tool can be incorporated in new or existing applications. Custom dynamic link libraries (DLLs) can also be created that use geoprocessing tools. These applications using geoprocessing objects require an appropriate ArcGIS Desktop license. For example, if the application calls an object available in ArcInfo, that application will require an ArcInfo license.
Better Choices for Geoprocessing
The flexible geoprocessing framework introduced with ArcGIS 9 lets users choose the most appropriate method, gives many options for automating tasks and sharing processes and methods, and works with all data types in the desktop environment. For more information, visit www.esri.com/arcgis9.