I was asked some great questions by attendees during the recent round of Technology Directions events – here’s a summary of the most common ones and the answers to them. I’ll cover Add-ins, Query Layers, Attachments and the ArcGIS API for iOS.
Can I build desktop customisations that use the new dockable windows in ArcGIS 10?
Yes – the new Add-ins model for building customisations in ArcGIS 10 in either .NET or Java lets you create a single, easy to deploy package containing custom UI components including buttons and tools, combo boxes, menus, toolbars, dockable windows, extensions and more. Dockable windows are floating or docked windows that appear within the ArcGIS Desktop applications. You can populate dockable windows with any sort of content: charts, slide shows, video, mini-maps, or custom dialog boxes containing other controls—including Esri controls.
There is a good post introducing Add-ins on the ArcGIS Desktop blog here.
What is the difference between SDE Direct Connect and Query Layers in ArcGIS 10?
A query layer is a layer or stand-alone table that is defined by a SQL query. Query layers allow both spatial and nonspatial information stored in a DBMS to be easily integrated into GIS projects within ArcMap in read-only form. Since query layers are using SQL to directly query database tables and views, spatial information used by a query layer is not required to be in a geodatabase.
Query Layers have no need for SDE, or any understanding of the behaviours, rich data types and versioned editing model supported by the geodatabase. To use those additional capabilities (and there are many reasons to do so at ArcGIS 10), you need to connect ArcGIS with the geodatabase via a Direct or App Server database connection. The Direct Connect option positions the SDE “smarts” on the client (where ArcMap for example is running) and then uses the client components of the DBMS (the Oracle Client for example) to communicate with the database. In most cases this is the preferred option to connect ArcGIS clients to a multi-user geodatabase.
In summary – two different choices for data access from ArcGIS, appropriate for different applications.
Are attachments in ArcGIS 10 stored in the Geodatabase?
Yes they are. When you right click on a feature class and select “Add Attachments”, two new objects are added to the Geodatabase – a new table to hold the attachments, and a relationship class to manage the potentially one to many links between a feature and its attachments. The attachments themselves, whether they’re images, PDFs or audio files, are stored in a BLOB field in the attachments table for the feature class.
Since relationship classes are used to maintain the linkage, and relationship classes require an ArcEditor or ArcInfo license, an ArcEditor or ArcInfo license also is required to enable attachments or edit feature classes with attachments. With ArcView, you can read and open attachments.
Check out the Desktop help for more information on attachments.
What do I need to develop applications using the ArcGIS API for iOS?
The ArcGIS API for iOS lets you build native apps for Apple’s iPhone and iPad devices. To develop apps in this environment, you’ll need a Intel processor-based Mac running Snow Leopard, Xcode, and the iOS SDK from Apple. That gives you the environment to build an app in Objective-C and test it in the iPhone/iPad simulator that ships with the iOS SDK. The Esri API comes with three Xcode templates for different styles of app, and you can also find some great samples on ArcGIS.com (the Graffiti reporting app I demonstrated on my iPhone at Directions was based on one of these samples)
If you want to take the next step and deploy your app to a real device for testing, or ultimately to the iTunes App Store, then you will also need to join the Apple iOS Developer Program which currently costs $US 99/year.
How did you zoom the screen and draw on it during the presentation?
I get asked this one quite a lot! I was using ZoomIt – one of the free tools available from the Microsoft Windows Sysinternals site. You can customise the keys to be whatever you want, but the default is that Ctrl-1 will zoom the screen. If you then click the mouse, the zoom stops and you can draw on the screen either in freehand mode, or with particular shapes. So for example, when you’re drawing, holding the Ctrl key will draw a rectangle. You can also change the colour of the drawing using the first letter of the colour, i.e., “r” will give you red, “b” will give you blue etc. If you want to draw on the screen at normal size, then Ctrl-2 will just enter drawing mode without zooming.
With the latest version of ZoomIt (4.1), you can now also interact with the screen when you’re zoomed in.