Geography 465 Overview Geoprocessing in ArcGIS. MODELING Geoprocessing as modeling.

Slides:



Advertisements
Similar presentations
WITHOUT LANGUAGE [ DEVELOPING GEO-PROCESSING MODELS USING ARCGIS MODELBUILDER 10 ] PROGRAMMING R. RYAN STEVENS / GIS RESEARCH ANALYST / THE POLIS CENTER.
Advertisements

Customisation The GUI in most GIS applications is sufficient for most needs. However, situations arise where you want either to: –Modify the interface,
Environmental GIS Nicholas A. Procopio, Ph.D, GISP Some slides from Lyna Wiggins (Rutgers University)
Why python? Automate processes Batch programming Faster Open source Easy recognition of errors Good for data management What is python? Scripting programming.
1 Software Design Introduction  The chapter will address the following questions:  How do you factor a program into manageable program modules that can.
Lecture 8 Model Builder.
Object-Oriented Analysis and Design
What is Software Design?  Introduction  Software design consists of two components, modular design and packaging.  Modular design is the decomposition.
Objectives Detailed Object-Oriented Requirements Definitions
Object Oriented Design An object combines data and operations on that data (object is an instance of class) data: class variables operations: methods Three.
Python & ModelBuilder. Overview Python/ModelBuilder Concepts – The Geoprocessor – Checking some environment variables – Providing feedback from your model/script.
ModelBuilder In ArcGIS 9.x By Tim Weigel GEOG 407/607 April 3 rd, 2006.
Spatial Analysis, Geoprocessing,
ModelBuilder at ArcGIS 9.2 Lyna Wiggins Rutgers University May 2008.
Chapter 7 Managing Data Sources. ASP.NET 2.0, Third Edition2.
Workflow API and workflow services A case study of biodiversity analysis using Windows Workflow Foundation Boris Milašinović Faculty of Electrical Engineering.
Page 1 ISMT E-120 Introduction to Microsoft Access & Relational Databases The Influence of Software and Hardware Technologies on Business Productivity.
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
Advance Model Builder Features. Advance Features Using Lists (also Batching) Iteration Feedback Model Only Tools Inline Variable Substitution Preconditions.
Arc: Programming Options Dr Andy Evans. Programming ArcGIS ArcGIS: Most popular commercial GIS. Out of the box functionality good, but occasionally: You.
Python & ModelBuilder. Continuing Education Python and ModelBuilder Overview Python/ModelBuilder Concepts –The Geoprocessor –Checking some environment.
WorkPlace Pro Utilities.
Preparing Data for Analysis and Analyzing Spatial Data/ Geoprocessing Class 11 GISG 110.
Sep , 2006 v FME Worldwide User Conference - Vancouver What’s New in ArcGIS Data Interoperability Extension Kim Avery, ESRI, California, USA, and.
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
Introduction to Spatial Analysis and Spatial Modeling
Spreadsheet-Based Decision Support Systems Chapter 22:
Chapter 7 Structuring System Process Requirements
From Use Cases to Test Cases 1. A Tester’s Perspective  Without use cases testers will approach the system to be tested as a “black box”. “What, exactly,
Introduction to Software Design Chapter 1. Chapter Objectives  To become familiar with the software challenge and the software life cycle  To understand.
ArcGIS Network Analyst: Automating Workflows with Geoprocessing
Esri UC2013. Technical Workshop. Technical Workshop 2013 Esri International User Conference July 8–12, 2013 | San Diego, California ModelBuilder – Getting.
Programming for Geographical Information Analysis: Advanced Skills Lecture 1: Introduction Programming Arc Dr Andy Evans.
Introduction of Geoprocessing Topic 7a 4/10/2007.
Introduction to Model Builder Mike Sweeney ESRI-Charlotte.
WyGEO Conference September 17 & 18, About Me Shawn Lanning – GIS Research WyGISC – ModelBuilder Experience About You?
11 CORE Architecture Mauro Bruno, Monica Scannapieco, Carlo Vaccari, Giulia Vaste Antonino Virgillito, Diego Zardetto (Istat)
1 Extend is a simulation tool to create models quickly, with all the blocks you need and without even having to type an equation. You can use a series.
Systems Analysis and Design in a Changing World, 3rd Edition
Introduction to ArcGIS for Environmental Scientists Module 3 – GIS Analysis Model Builder.
Esri UC2013. Technical Workshop. Technical Workshop 2013 Esri International User Conference July 8–12, 2013 | San Diego, California Automating Geodatabase.
Introduction of Geoprocessing Lecture 9. Geoprocessing  Geoprocessing is any GIS operation used to manipulate data. A typical geoprocessing operation.
Composition in Modeling Macromolecular Regulatory Networks Ranjit Randhawa September 9th 2007.
Juanita Cano City of Sacramento Spring 2014 Geography 375.
NSF DUE ; Wen M. Andrews J. Sargeant Reynolds Community College Richmond, Virginia.
Geoprocessing Geoprocessing is a fancy name for Spatial Operations So what is Geoprocessing? Processing or manipulating of geographic/spatial data to.
SPI NIGHTLIES Alex Hodgkins. SPI nightlies  Build and test various software projects each night  Provide a nightlies summary page that displays all.
Introduction of Geoprocessing Lecture 9 3/24/2008.
Python: Building Geoprocessing Tools David Wynne, Ghislain Prince.
Technical Workshops | Esri International User Conference San Diego, California Branching and Iteration in ModelBuilder Shitij Mehta July 24, :15.
1 Team Skill 3 Defining the System Part 1: Use Case Modeling Noureddine Abbadeni Al-Ain University of Science and Technology College of Engineering and.
Software Testing.
How to automatise the grid production - using model builder in ArcGIS
Environmental GIS Nicholas A. Procopio, Ph.D, GISP
System Design.
String several geoprocessing processes
Using Model Builder in ArcGIS
ModelBuilder for Beginners
Scenario Modeling in GoldSim
URBDP 422 Urban and Regional Geo-Spatial Analysis
Automating and Validating Edits
CE 525.
Automating Analyses with ModelBuilder
HP Quality Center 10.0 The Test Plan Module
CodePainter Revolution Trainer Course
Network Analysis using Python
PYTHON: BUILDING GEOPROCESSING TOOLS
Network Analyst – Automating Workflows with Geoprocessing
Programming Arc.
Business Process Modeling Notation (BPMN)
Presentation transcript:

Geography 465 Overview Geoprocessing in ArcGIS

MODELING Geoprocessing as modeling

Types of Models in GIS (by function) Descriptive models – database Change models – before and after Impact models – what happens Explanatory models – process influence Predictive models – what will be like Prescriptive models – should be like

Example of Suitability Model

The core of Geoprocessing… building data processing chains in GIS: data -> operation -> output

Geoprocessing Framework in ArcGIS 9.x Multiple ways to do geoprocessing in ArcGIS

Developing Geoprocessing Procedures with Model Builder Why use Model Builder? Automates geoprocessing workflow Portability Extensibility Reusability Documentation

Developing Geoprocessing Procedures (models) with Model Builder Identify the components of a model Build and test models Edit existing models Simplify complex models using submodels Set up a model to run from its dialog –model parameterization Facilitate conditional processing (branching) with scripts Calibrate and validateCalibrate and validate

Model Components In ModelBuilder, models are represented as flow charts with distinct symbols for each type of component Elements are connected together via connector lines that serve to create processes as well as show processing flow

Model Components (elements) Data Tool Derived data Value Derived value

Data Process Models typically contain several processes, and they can be chained together so that the derived output from one process becomes the input for another process

Variables Any element in a model that isn't a tool is a variable (project data, derived data, values, derived values) Variables can be thought of as placeholders for datasets or tool parameters Variable values can be easily changed, and they can be shared between processes in a model

Running a Model in ModelBuilder To run a model is to run all of the processes that compose it. The readiness of a process to run depends on the state of its elements. A process can be in one of three states: –not ready to run, –ready to run, or –has been run.

Sources of Simple Errors in Models A model's readiness to run can be affected by various factors. One factor is connectivity. A tool that is not connected to an input element will not be ready to run. In this example, there is no input to the Buffer tool operation; therefore, it is not ready to run.

Sources of Simple Errors in Models Although the input data element is ready to run, the parameters of the Add Field tool have not been defined; therefore, the process as a whole is not Another factor affecting to ability to execute a process in ModelBuilder is specification.

Sources of Simple Errors in Models In this example, the elements are connected and their parameters are fully specified. The problem is that ModelBuilder cannot find the input data it needs. The third factor affecting the ability to run a process is data accessibility.

How to start building a model? 1.Identify functional relationships between the phenomenon and its variables 2.Identify the initial input variables 3.Identify the intermediate input variables. 4.Choose appropriate tools for implementing transformation functions as processes 5.Combine processes based on cause-effect relationships

Parametrizing Geoprocessing Models Model variables can serve as model parameters. There are two purposes for this: –first, to be able to run your model from a dialog, and second, –to be able to incorporate submodels.

Parametrizing Geoprocessing Models Declaring a model variable as a parameter is called exposing the variable. Any variable in a model (in other words, datasets and tool values) may be exposed as a model parameter.

Running a model with parameters Right-click a data element to make it a parameter Input or output data can be parameters

Setting model properties Choose Properties on a model’s context menu

Setting model properties: General Modify the name, label, description, and style sheet

Setting model properties: Parameters Add, remove, or change the order of exposed parameters

Setting model properties: Environments Set values for all environments; applied to entire model

Models and Submodels Using submodels allows you to divide parts of a larger model into smaller, more manageable pieces. Before a submodel can be added to a primary model, the output variable of the submodel must be exposed as a model parameter. This will allow the output variable to be shared between models.

Models and Submodels

Creating the ESRI Geoprocessor object three ways - from ArcGIS Desktop 9.3 help

three way comparison - from ArcGIS Desktop 9.3 help

Turning a Script into a Tool Another way of using a submodel in a model is to: –1) export the submodel into a script, –2) turn script into a tool, and –3) use a script tool in a model

Turning a Script into a Tool 1)export the submodel into a script

Script from previous export

Add a loop wrapper

Turning a Script into a Tool Steps: 1) expose inputs and the output as model parameters 2) export the model into a Python script 3) turn the script into a geoprocessing tool 4) use the script tool as a submodel in an extended site suitability model

Geoprocessing Models as Simulation Tools Using a model as a simulation tool requires exposing the output data set as a model parameter Dialogs provide a simplified view of a model and allow the user to easily change parameter values each time the model is run. Once these model parameters are set, model users can simply use the dialog for execution. Running a model from its dialog allows for easy testing of alternative scenarios.

Sequence Control and Conditional Processing in ModelBuilder You can control the sequence of processing in your model by applying a precondition (the output data from one tool must exist before the tool can be executed) You can build conditional processing (branching) into your model with Python scripts Python Exercise time!