gisc 6382 applied gis ut-dallas briggs 1 customizing arcgis spring 2008

17
GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

Upload: roland-obrien

Post on 22-Dec-2015

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

1

Customizing ArcGIS

Spring 2008

Page 2: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

2

Customization in ARCGISTwo levels of Customization• Customizing the Interface

– To create more efficient user interfaces• For yourself (e.g. grouping frequently used tools)• For specialized applications (e.g. simplified interface for data entry operators)

– To access capabilities not on the standard interface• Supplied as part of ArcGIS but not on the standard interface (many!)• Downloaded from the web

– From ESRI web site, supplied by ESRI or users– From other web sites

• Developed by you

• Developing Additional Capabilities– Automating repetitive tasks– Creating new analytical procedures

Our focus here will be on customizing the interface. GIS 5317 Programming for GIS will focus on developing additional capabilities.

Page 3: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

3

Options for Developing Additional CapabilitiesCurrent Generation—ESRI ARCGIS

• Modelbuilder– Multi-step, sequential processing of ArcTools, using a visual

development environment which comes as part of ArcGIS• Python, Jscript and VBScript

– standardized and relatively simple scripting languages for repetitive processing, including loops and decision trees, using ArcTools

– Python scripts can be generated from Modelbuilder• Visual Basic for Applications

– Permits writing of VB macros for sophisticated customization and development within standard ArcGIS (ArcMap/ArcCatalog) interface (and thus requires license for these)

– may incorporate ArcObjects, the COM compliant software objects out of which ArcGIS is constructed.

• ArcGIS Engine – Set of embeddable GIS components (ArcObjects software objects) for use

in building custom applications, independent of ArcGIS interface– Runs under Windows, Unix and Linux, with support for Java, C++, COM

and .NET

Page 4: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

4

Options for Developing Additional CapabilitiesEarlier Generations: ESRI

• MapObjects– Microsoft COM compliant objects used to incorporate geographic

capability in standard IT applications, introduced around 1997– Replaced by ArcEngine/ArcObjects

• Avenue– The proprietary object oriented programming language used for ESRI’s

first GUI based product, ArcVIEW, introduced in 1993, – Not compatible with ArcGIS 8 or 9– Most Avenue-based applications have now been replaced with ArcGIS 8/9

equivalents

• AMLs: Arc Macro Language– The scripting language associated with ESRI’s original ArcInfo product

introduced in 1981– Can still be run within ArcGIS 9 via:

• ArcInfo Workstation interface• Via a tool on a toolbar in Arc Map or ArcCatalog

Page 5: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

5

Options for Developing Additional CapabilitiesCurrent Generation—non-ESRI

• Other major GIS software vendors have equivalents to ArcEngine e.g. MapInfo MapX

• TatukGIS specializes in providing GIS software component objects (and there are others)– http://www.tatukgis.com/

• Google Map and Google Earth mashups, combining your own data and applications with Google Map or Google Earth using kml scripts (keyhole markup language)– http://magellan.utdallas.edu/biomap/

Page 6: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

6

Customization Dialog Box• A graphic interface for

customization. To open– Go to Tools>Customization– Or, double click on empty

area in a toolbar• Modify user interface

– Turn toolbars on and off– Create new toolbars– Create new controls– Add, delete, and move

controls (buttons and menus)

– Manage shortcut keys

Page 7: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

7

Creating a new tool bar• Organize related controls

• Name the toolbar

• Drag commands, controls, or macros onto (off) the toolbar

Page 8: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

8

Creating a Menu• New Menu and Menu Items

Page 9: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

9

Adding commands to context menus

• Add the context Menu toolbar

• Drag commands onto the context menu

Page 10: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

10

Shortcut Keys• Keyboard button in the customize dialog• Change the shortcut key for any command

Page 11: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

11

UI Controls• User Interface (UI)

Controls – UIButtons, UItools,

UIEditBoxs, and UIComboBoxes

• Control Properties– Text or no text

– Image

– Caption

– Group

Page 12: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

12

Visual Basic Editor• Tools> Macros> Visual Basic Editor• View Source

Page 13: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

13

ToolTips• Help for your controls• Set the Tooltip property

• Help message in the status bar (Message)

Page 14: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

14

Save Customizations• ArcMap has three level of storage

– Normal Template (Normal.mxt): Affect all documents

– Template (MyTemp.mxt): Affects all documents using this template

– This Document (Myproject.mxd): Affects this document only

• ArcCatalog only uses a normal template

Page 15: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

15

Examples• Code for Fixed Zoom-In

• What about Fixed Zoom-out

Dim pDoc As IMxDocument Dim pEnv As IEnvelope Set pDoc = ThisDocument Set pEnv = pDoc.ActiveView.Extent pEnv.Expand 0.5, 0.5, True pDoc.ActivatedView.Extent = pEnv pDoc.ActivatedView.Refresh

Page 16: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

16

AMLs: Arc Macro Language• The scripting language associated with ESRI’s original ArcInfo

product• Essentially allows ArcInfo commands to be saved in a text file

and then executed in batch• Based on the operating system for the Prime minicomputer of

the 1970s• Conceptually similar to the old DOS .bat files • Was the only way to be productive in ArcInfo version 7 and

earlier!• Many AMLs still exist and need to be converted• Still runs in Workstation ArcInfo• ArcCatalog will generate and save AML scripts• With the introduction of scripting capabilities in ArcGIS 9.0,

AMLs no longer useful – Most AML capabilities can be re-created with python script.

Page 17: GISC 6382 Applied GIS UT-Dallas Briggs 1 Customizing ArcGIS Spring 2008

GISC 6382 Applied GIS UT-Dallas Briggs

17

Running an AML in ArcGis Workstation• Initiate an ArcGIS Workstation session• If necessary, use the CREATWWORKSPACE command to create a workspace

– cw c:\usr\ini\custom

• Use the command WORKSPACE to move into the new workspace– w c:\usr\ini\custom

• Use a standard text processor (e.g. Wordpad) to create/edit your AML and be sure it is saved as a text file with the extension of .aml (place double quotes around name in save box e.g. “newaml.aml”)

– Use Explorer to copy p:\data\p6382\exercises\custom\utd_newtin.aml– Use Wordpad to specify appropriate directory for CREATETIN command

• Establish the necessary environment for running an AML – &TERM 9999 (directs AML output to your terminal)– DISPLAY 9999 (directs any graphic output to terminal—not needed here)– &ECHO &ON (sends debug info to terminal—turn off with &OFF)

• Run the AML with the &RUN command– &RUN utd_newtin.aml

• After AML finishes, check that AML tasks completed successfully, e.g. use the DIRECTORY TIN command to list TINs created

– DIR TIN

• For practice, run the AML: giscity.aml – Issue the command END in the Arc window to close the graphic window.