Read the Acrobat version - it's better! GIS Software Techniques and Implementation

A newsletter by Daniel Elroi

Volume 2, Number 2
February 2000

Hello again,

Hard to believe but ArcInfo 8 is finally out. According to ESRI, everyone should have received it by now. So the next question is "What do I do with it?" In this edition I try to answer some of the most pressing questions about ArcInfo 8, and provide a quick tutorial which is taken from the ArcInfo 8 course I wrote.

After a bit of a break I return in this issue to giving Avenue tips, this time related to 3D Analyst.

After reading this newsletter, can I please trouble you to send a copy of it to someone who does not yet receive it? I write this free newsletter to promote myself as an independent consultant, so I would really appreciate your help in letting people know about it. Also, I sure would appreciate it if you add me to your RFP distribution list! Thanks.

 

I Finally Have ArcInfo 8: Now What?
A Very Quick Tutorial for ArcGIS
Avenue Tips for 3D Analyst
New Clients, New Projects

 

I Finally Have ArcInfo 8:
Now What?

I recently caused a stir in certain circles when I stated to some readers that in ArcInfo 8 the command line was GONE. Actually, what I tried to say was that in ArcGIS the command line interface was gone. But the mere fact that statements about features of the "old" ArcInfo and "new" ArcInfo evoke strong reactions is an indication of the confusion surrounding the recently released version 8 of ArcInfo. Heck, even the name of the software is confusing at the moment: is it ARC/INFO or is it ArcInfo? Is ArcInfo synonymous with ArcGIS, or is ArcGIS a part of ArcInfo? And where do ArcObjects fit into all of this? I will try to answer some of these essential questions and clear up some of the confusion.

Where does one begin when there is so much that is new, so much that can be confusing? Let us begin with the names and terminology.

 

What’s in a name?

ARC/INFO. Though often misspelled in the past as Arcinfo, Arc/Info, and such, the official, trademarked name up until version 7 was in fact ARC/INFO. Starting with version 8, however, the official name has been changed to ArcInfo. I think that from a philosophical point of view this says a lot. First, it is an indication that although it is founded on the previous versions of the software, the new version is significantly different, with more to come. Second, it gives me the sense that ESRI is falling in line with the rest of the software industry, where EveryOneAndTheirBrother has an UpAndDown name these days. And this may be a stretch, but the disappearance of the forward slash from the name also is an indication for me of the waning importance of UNIX, where the forward slash is king, from the future of ArcInfo.

Now that I have raised the thorny UNIX issue, I will quickly back off and get back to it later.

Let's tackle the ArcInfo versus ArcGIS terminology. One of the greatest sources for anxiety that I have heard is whether the command line, AML, ArcTools, and the rest of the traditional functionality of ArcInfo is going away. The answer is an emphatic No. All of ARC/INFO 7.2.1 is still available in ArcInfo 8. Also included in ArcInfo 8, however, is a new software called ArcGIS. Here is an analogy between the old and new components of ArcInfo: think of the difference between a computer running in DOS, without any Windows interface – that would be ARC/INFO 7. Now think of a Windows NT machine, where a DOS window is available, in case you want to use the old DOS commands or fire up an old DOS software package – that would be ArcInfo 8. Does that make sense? "Old" ArcInfo is still there, but you're going to have a whole lot more power and flexibility if you use ArcGIS. Both are available, but they are not the same, nor are they built on top of each other. ArcGIS is a brand spanking new, object-oriented, software, written with all new COM components called ArcObjects.

 

Workstation ArcInfo versus Desktop ArcInfo

If the new part is called ArcGIS, what do we now call the "old" part? ESRI calls the two components Desktop ArcInfo (the "new" stuff, or ArcGIS) and Workstation ArcInfo (the "old" stuff). One of the most obvious differences between the two is that Workstation ArcInfo runs in both UNIX and NT, but Desktop ArcInfo only runs in Windows NT. Which gets us back to UNIX, doesn't it? Wait, we'll get back to that.

Does ArcGIS, or Desktop ArcInfo, have all the functionality of Workstation, or "old", ArcInfo? No, not yet. The main components that have been migrated are Arcedit and Arcplot, and portions of Arc, Network, Tables, and INFO. TIN and Grid have not been migrated, and many of the functions of Arc are only indirectly available. ArcGIS consists of three components: ArcMap, which is the combined editing, query, and mapping component that has absorbed much of Arcedit, Arcplot, and Network; ArcCatalog which has absorbed components of Arc, Tables, and INFO; and ArcToolbox, which has absorbed the remainder of Arc. Of these components, ArcMap and ArcCatalog are based on the new ArcObjects. ArcToolbox is merely a new (and improved) forms-based interface to "old" ArcInfo commands - a sort of cross-over component that bridges the gap between the two versions.

So why am I telling you all this? Glad you asked. The functions served by ArcMap and ArcCatalog are executed and run in Windows NT alone. However, and this is where we finally get back to UNIX, ArcToolbox functions are executed either in NT or UNIX. "How's that?" you ask. Workstation ArcInfo (pop quiz: is that "old" or "new ArcInfo?) has been modified so that it can be executed locally or remotely, immediately or in batch. Since ArcToolbox executes "old" ArcInfo commands, it too can take advantage of this capability. I shall elaborate.

 

Hang on, we’re off on a wild ride

Imagine that you are cleaning a small coverage on your NT workstation. No problem. You run it locally and right away. However, suppose you have to intersect several dozen coverages, you can instruct a remote UNIX ArcInfo application server to execute the command, either right away or at a specified time. This relegates the UNIX workstation (or the NT application server, for that matter) to handling big disk I/O, CPU, and RAM jobs, and the desktop computer to handling smaller tasks and launching jobs. Play close attention! What we are witnessing here is a rapid evolution of the software towards the Web. In the near future, especially after ArcIMS is released, we are likely to see application servers serving up GIS "brains" over the Web, with the user interface being a somewhat-intelligent application running inside a Web browser. In other words, instead of all the brains residing locally in an ArcInfo desktop machine, we will see Java applications that are somewhat GIS savvy interacting dynamically, in real time, with a heavy duty server around the corner or across the world. A far cry from today’s "real" GIS and funky IMS applications, where you click on the browser and eventually receive a picture of the answer.

Whoa! How did I go from explaining the modules of ArcInfo 8 to discussing science fiction GIS? Hah! Not science fiction at all. ArcInfo 8 (or 8.0.1 to be precise) is in my opinion the beginning of a rapid and wild ride towards truly distributed GIS, even for the common installation in the small county or city down the road. So saddle up and hang on tightly, but in the mean time read on, and learn how you can start using ArcGIS today.

 

A Very Quick Tutorial for ArcGIS

Rather than talking about ArcGIS and ArcInfo 8, let’s start using it now. Provided that you have
installed Desktop ArcInfo (i.e. ArcGIS), and have obtained a new keycode from ESRI, you are ready to roll. In this exercise, we will annex the Yukon to the United States, rename it, and make and print a map showing this change. The only data you will need is the ESRI data directory that comes with ArcView. If you don’t have it, fake it.

First we want to make copies of two shapefiles, so that the annexation of the Yukon does not become permanent (some people may not appreciate the change). We will do this with ArcCatalog. To start ArcCatalog, go to Start | Programs | ArcInfo and click on the ArcCatalog selection. Navigate on the left side of the screen to the location of your shapefiles (e.g. c:\esri\esridata). Go to the usa directory and click on the green icon called states. Press the Copy button on the Standard Toolbar. Navigate to a work directory, such as c:\temp, and click on that directory’s name. Press the Paste button on the Standard Toolbar, and your shapefile will be placed there. Repeat for the province shapefile in the canada directory.

Now we will fire up ArcMap by pressing its icon on the Standard Toolbar in ArcCatalog . Make sure that the ArcCatalog window is smaller than ArcMap’s and that you see the main part of the ArcMap window peeking behind ArcCatalog. Click on one of the shapefiles you created, hold down the shift key, and click on the other. Both should be selected. Let go of the shift key. Click, hold, and drag the two selected shapefiles onto the main (right side) portion of the ArcMap window, and let go. The two shapefiles should be drawn there. Minimize ArcCatalog.

Find the editor button on the Standard Toolbar in ArcMap and press it. This will activate the Editor Toolbar. Press the Editor pulldown menu, and choose the Start Editing option. In the Target pulldown list on the Editor Toolbar, make sure that the US shapefile is highlighted. Now use edit tool on that toolbar to select the Yukon polygon from the Canadian layer (or any other province, for that matter). Press the copy and paste buttons on the Standard Toolbar. Because the US layer is the target of your edit, the polygon has automatically been pasted into it. Since it is still selected, click on the attributes button on the Editor Toolbar to bring up an attribute editing form. Click to the right of the State_name field and enter a new value (e.g. East Alaska). Press the Enter key and close the form. From the Editor pulldown, choose the Stop Editing option, and save your change.

To make and print a map, find the little button at the bottom-left of the display that will place the two layers on a page layout. Turn off the province layer in the Table of Contents. From the Insert menu choose the Title option. Type a title (e.g. If I Ran the World), and press the Enter key. Save your project, which will create a MXD file (similar to ArcView’s APR file). Now press the Print button on the Standard Toolbar, and follow the standard options. And there you have it: your first graphic and attribute edit and mapping operation in ArcGIS.

The rest will be easy!

 

Avenue Tips for 3D Analyst

3D Analyst APRs can’t be opened when 3D Analyst isn’t available

As most of you know, ArcView does not appreciate it when you save an APR with an extension loaded, and then try to open it without that extension being available. The situation becomes critical, however, with 3D Analyst, if you save an APR with a 3D Scene. Likewise, if you write a script that relies on 3D Analyst, you will have a very difficult time reopening the APR. The reason is that without the extension loaded, various objects are not available to the APR.

About the only solution to this dilemma is to offload the 3D Scenes to an Object Database (ODB) file as part of the Save operation. This way the APR is saved without the 3D Scenes actually embedded in it. The Startup script then has to be rigged to load the ODB back into the project only when ArcView detects 3D Analyst being loaded.

As for including 3D Analyst dependent scripts in an APR, that may opened in a non 3D Analyst environment, the only solution I know of is to store those scripts in their own ODB, or in a separate extension, and only load those after 3D Analyst is detected. The reason for this is a little quirky: apparently, ArcView compiles all scripts as an APR is reopened or an extension is loaded. So even if the script was compiled and worked fine before the APR was saved, it will fail to operate if opened without the required extension loaded.

Finally, how do you write code to test if a document is a 3D Scene, so that it will not crash if the extension is not loaded? Instead of using

if (myDoc.Is(Scene)) then

use

if (av.FindGUI(myDoc.GetGUI).AsString = "3D Scene") then

Happy coding.

 

New Clients, New Projects

I am pleased to have recently completed a software development project for EarthSoft, Inc. (Pensacola, Florida – www.earthsoft.com). EarthSoft is the manufacturer of EQuIS, a comprehensive suite of environmental data management software with an optional ArcView interface.

Since the beginning of the year I have started a very exciting project with Adams County, Colorado (Brighton, Colorado – www.co.adams.co.us). I am heading a team that will be linking the County’s GIS to the Assessor’s and Permit Tracking Oracle databases, and publishing them all on the Web. The Needs Assessment phase has begun, and the project is expected to be completed no later than October.

I am also pleased to announce my continuing relationship with AngloGold North America (Englewood, Colorado – www.anglogold.com), in the Cripple Creek and Jerritt Canyon mines and at their exploration office in northern Nevada.

In addition to my regular column at Directions Magazine (www.directionsmag.com), I have recently published articles on 3D GIS in ArcUser (www.esri.com/arcuser) and on ArcInfo 8 training in ArcNews (www.esri.com/arcnews). I also have a series of articles on HTML Help and GIS coming up in the next two editions of ArcUser.


GIS Software Techniques and Implementation is an on-line newsletter published freely by Daniel Elroi.

Daniel Elroi is an independent GIS consultant residing in Denver, Colorado, USA. Starting in 1986, he has implemented GIS systems and customized software in local, state, and national government levels, and in the mining, pipeline, real estate, engineering, and nuclear waste industries. He has also managed consulting and programming groups and marketed GIS services around the world. He may be contacted at 1- 303-355-4447 or at daniel@elroi.com.

To subscribe to this newsletter, go to elroi.listbot.com.

All trademarks, trade names, and registered names used in this article are the properties of their recognized and legal owners.

Copyright © 2000 Daniel Elroi.
For permission to reprint, write me at daniel@elroi.com.