You are on page 1of 3

Diagram key

Types of Classes
An abstract class cannot create new objects; it is a specification for
ArcObjects is the development platform for ArcGIS Desktop, a suite of GIS Chapter 3 Chapter 4
ESRI® ArcObjects™ is the development instances of subclasses (through type inheritance.) This ArcGIS Type inheritance
software systems: ArcInfo, ArcEditor, and ArcView. These systems serve GIS A coclass can directly create objects by declaring a new object. object model Framework ArcMap
This diagram illustrates the implicit type inheritance model in the ArcGIS 8.1
platform for the ArcGIS™ family of applications professionals with a spectrum of geographic data management, spatial editing, and
Inbound interface
Outbound interface abstract Instantiation
A class cannot directly create objects, but objects of this class can be
created as a property of another class or instantiated by objects from
diagram uses this
color code to
coclass coclass
component objects. Software interfaces are not duplicated in the child classes.
class another class. denote the The objects to the left show a sample view of type inheritance. The objects below
such as ArcMap™, ArcCatalog™, and cartographic visualization functionality. ® TM coclasses, classes, Framework ArcMap show a flat view of the objects with their full list of interfaces. The two views are

ESRI ArcGIS 8.1 Object Model


Types of Relationships
and abstract class class equivalent, but the type inheritance view gives insight into the structural
ArcScene™. The ArcObjects software The ArcGIS Desktop systems each contain a configuration of applications, such as
Type inheritance Associations represent relationships between classes. They have defined
multiplicities at both ends.
classes in the
ArcObjects
composition of the object model.

subsystems.
components expose the full range of functionality ArcCatalog, ArcMap, ArcToolbox™, and ArcScene, and can host a variety of Interface
Type inheritance defines specialized classes of objects that share
properties and methods with the superclass and have additional
Framework
abstract class
ArcMap
abstract class IRowBuffer
IRowBuffer RowBuffer
Composition properties and methods. Note that interfaces in superclasses are not
available in ArcInfo™, ArcEditor™, and extension products such as Spatial Analyst, Geostatistical Analyst, 3D Analyst™, and coclass duplicated in subclasses. RowBuffer
Instantiation specifies that one object from one class has a method with
ArcView™ to software developers. others. which it creates an object from another class.
Chapter 5 Chapter 6 Chapter 7
IRow
Composition is a relationship in which objects from the "whole" class IRowBuffer Row
class Display Output ArcCatalog IRowEvents
control the lifetime of objects from the "part" class.
This object model diagram shows how ArcMap presents geographic information An N-ary association specifies that more than two classes are
coclass coclass coclass IRow
IRowEvents Row
IValidate
IValidate
Copyright © 2001 ESRI. All right reserved. ESRI, ArcView, and the through views and how ArcCatalog manages geodatabases. These are the Association 1..* Multiplicity
associated. A diamond is placed at the intersection of the association
branches. Display Output ArcCatalog IFeature
ESRI globe logo are trademarks of ESRI, registered in the United
States and certain other countries; registration is pending in the ArcObjects components documented in volume one of Exploring ArcObjects. A multiplicity is a constraint on the number of objects that can be class class class IFeatureBuffer
IFeatureDraw
Special Interfaces associated with another object. Association and composition relationships
European Community. ArcGIS, ArcObjects, ArcCatalog, ArcScene, TM have multiplicities on both sides. This is the notation for multiplicities:
IFeatureEdit Feature
(Optional) represents interfaces that are inherited by some subclasses but not all.
You will find updates to ArcObjects developer resources at IRow

Exploring ArcObjects • Volume 1 • Applications and cartography


ArcInfo, ArcEditor, ArcToolbox, 3D Analyst, and ArcMap are 1 - One and only one (if none shown, "1" is implied) Display IFeature
The subclasses list the optional interfaces they implement. Output ArcCatalog IFeatureBuffer Feature IRowBuffer
trademarks of ESRI and www.esri.com is a service mark of ESRI. 0..1 - Zero or one
abstract class
www.esri.com/arcobjectsonline. (Instance) represents interfaces that are only on specific instances of the class.
(<classname>) indicates the name of the helper class required to support this
M..N - From M to N (positive integers)
* or 0..* - From zero to any positive integer
abstract class abstract class IFeatureDraw
IFeatureEdit
IRowEvents
IValidate
1..* - From one to any positive integer
event interface in Visual Basic.

IEnumGxView IGxViewContainer
GxView-
EnumGxView Container IApplication
The printer abstract class defines the IDockableWindowManager Application
common interfaces for controlling the The GxViewContainer object permits a GxView IExtensionManager See chapter 3,
object to be a container for additional views IMultiThreadedApplication 'Customizing the user
output of data to hardcopy devices
Application IVBAApplication
IWindowPosition
interface'
IExtension Extension
An extension provides a mechanism
for extending an application
A collection of up to three templates can
IClone
IPersistStream Printer PageLayout in
ArcMap IGxSelectionEvents
GxView IExtensionAccelerators
IExtensionConfig
See chapter 3,
'Customizing the user
interface'
ITemplates be loaded in ArcMap, one in ArcCatalog. IPrinter IGxView *
IApplication GxView
IExtension
IExtensionAccelerators
Extension
IDockableWindowManager
IExtensionManager
IMultiThreadedApplication
Application
A dockable window definition is used by the
application to create a dockable window Templates Templates help you define the scope of
customization
Printer GxView is an abstract
class that represents all
GxApplication The metadata editor
IExtensionConfig IVBAApplication
IWindowPosition IDockableWindow
Dockable- IStatusBar The status bar is the horizontal area at
Framework dialog boxes Progress- IColorCorrection IArcPressPrinter
ArcPress-
possible ArcCatalog views GxPreview shows previews
of the selected object
IGxApplication
IGxCatalogAdmin
IGxCatalogEvents
IGxCatalogEventsDisp
GxApplication
IExtension
Extension
Metadata
IMetadataEditor
Metadata-
Editor
objects provide a user
interface for editing
* Window the bottom of ArcMap and ArcCatalog IAcceleratorTable
IProgressDialogFactory IEmfPrinter IArcPressPrinterDriver metadata
StatusBar Accelerator- An accelerator table Dialog- The Progress dialog box factory creates and EmfPrinter IFontMapEnvironment Printer IMetadataExport
Metadata-
that provides information about the IPersist
displays a new progress dialog box IPsDriver IColorCorrection IGxCatalogEvents Gx- IGxPreview The metadata export
current application state
IPersistStream Table contains a list of Factory IPsDriver2
PsPrinter IGxDocumentationView
Document- GxDocumentationView Application
GxPreview Export objects output a dataset's
Application is the core object that represents ArcMap or ArcCatalog accelerator keys and IGxViewPrint GxApplication
and provides access to the current state of the user interface A dockable window can the command
IPsPrinter The ArcPress printer serves as a ationView represents the metadata represents the
IConnectionPointContainer
Metadata-
metadata to a file
IDockableWindowDef ISpotPlateCollection driver for the creation of output IMetadataHelper
Dockable- exist in a floating state view in ArcCatalog running
ISupportErrorInfo identifiers associated through ArcPress
IDocument
IGxDocumentEvents
IMetadataEvents Extension
0..1 WindowDef or attached to the main with them IProgressDialog IGxDocumentEventsDisp
GxDocument ArcCatalog IPersistStream
FGDCEditor DefaultEditor
Progress- executable
ICustomizationFilter IDocument
application window * IProgressDialog2
IProgressor Dialog
A Progress dialog box displays animation and a An EMF printer serves as a driver for The PS printer is used to IArcPressPrinterDriver ArcPress- IGxCatalogEvents
IGxGeographicView
Gx-
The GxGeographic-View
Customization- Document IAccelerator
IStepProgressor
step progressor bar the creation of output through the create output through a IColorCorrection Printer- IGxGeographicView2 Geographic-
Accelerator Enhanced Windows Metafile format PostScript driver lets you preview your data Export- Export- Export-
A customization filter provides
Filter An accelerator key is The ArcPress printer driver
Driver ITransformEvents View GxDocument represents the document IEnumGxObject HTML MPHTML XML
IGxSelection
Document provides access to properties, a keyboard shortcut object in the VBA class ThisDocument Enum-
a mechanism for locking parts
of the customization
functionality in an application Document such as title and type, and contains the
Visual Basic for Applications project ICommandItem
Command to quickly execute a
common command ICoordinateDialog
Coordinate-
IFontMapEnvironment
FontMap-
supports the ArcPress printer by
setting ArcPress parameters contained in each VBA project
IGxSelectionEvents GxSelection
GxObject

Output
The Coordinate dialog box is used for getting IGxCatalogEvents GxTableView is used to
IPersist Command- Dialog Environment Export- Export-
ICommandBars Command user input in the form of x, y coordinates
IGxTableView
GxTableView
Application preview the table associated IMetadataImport
Command- A collection of command bars
IPersistStream Item with the selected object GxSelection keeps track of the items chosen in MP MPSGML Metadata- The metadata
ISupportInfo import objects add
Bars MacroItems are simple procedures the tree and tabbed views of the data IGxObjectArray Import
A command bar associated with a document GxObject-
page xx written in the Visual Basic Editor or replace metadata
definition is used by Array from an input file
A command item is an The font map environment
the command bars IGetStringDialog IGxCatalogEvents Export- Export-
element on a command bar, GetString- supports the PS printer by setting GxTreeView shows a hierarchical
collection to create a A command bar is a toolbar, The Get String dialog is used for getting user IColorCorrection IFontMapCollection IGxTreeView GxObjectArray object
Command- such as a button, tool, or Dialog font information to be used during FontMap- GxTreeView organization of your data holdings MPFAQ MPTXT
COM command bar
BarDef 1..* menubar, menu, or context menu COM input in the form of a string IPsDriver
PsDriver holds a set of GxObjects
menu item the creation of Postscript output
IPsDriver2 Collection
ICommandBar UIControl MacroItem Command
ICommandItem ISpotPlateCollection Objects in the IGxObjectFilter Import- Import-
CommandBar GxObject-

Framework
The font map collection GxContentsView is the GxContentsViewColumn MP MPTXT
The PS driver supports the PS printer IGxCatalogEvents collection represent the
Filter
IGetUserAndPasswordDialog GetUserAnd- houses the set of font maps IGxContentsView GxContents- Explorer-style iconic view
Password- The Get User and Password dialog is used for by setting general PostScript variables, used by the PS printer or IGxContentsViewColumns View available in ArcCatalog columns in the tabbed display
IMenuDef getting username and password information including color information PS exporter objects IPersistStream area of the view (when
IRootLevelMenu
Dialog Import- Import-
MenuDef ICommand * Contents is the active tab)
IShortcutMenu
ICommandSubtype * IFontMap GxFilterAnnotationFeatureClasses MPSGML XML
IUIButtonControlEvents
UIButton- (optional)
Button ISpotPlate *
COM- Document- IFontMap2 FontMap GxFilterBasicTypes
CommandBar CommandBar Control SpotPlate IGxContentsViewColumn
GxContents- The GxObjectFilter objects are used in GxFilterCadDrawingDatasets
IToolbarDef UIButtonControl acts as IListDialog
The spot plate allows for the creation IClone GxFilterCoverageAnnotationClasses
The List dialog box is used to present a list of conjunction with the GxDialog object to
ToolbarDef a button or menu item A button is a simple command that ListDialog options and allows the user to select one of the of separate plates (images) based on
IPersistStream ViewColumn limit the types of data the user can browse GxFilterDatasets
that performs a simple performs a simple task when clicked the specified color IGxObjectFactory GxFilterDatasetsAndLayers
A menu definition is used by options GxObject- when selecting objects to open or save GxFilterFeatureClasses
task when clicked A font map creates associations IGxObjectFactoryMetadata
the command bars collection GxFilterFeatureDatasets
A COM command bar A document command bar is a ICommand between TrueType fonts and Factory GxFeatureDatasetsAndFeatureClasses
to create a menu
can be written in any custom menu or toolbar created ICommandSubtype the mapped font GxObjectFactory objects help ArcCatalog GxFilterFiles
COM-compliant with the Customize dialog box
IUIComboBoxControl
UICombo- (optional)
Tool IClone generate GxObjects based on the object type
A toolbar definition is IUIComboBoxControlEvents IMessageDialog GxFilterGeodatasets
used by the command language and is BoxControl ITool Message- The Message dialog box is used to display a IPaper Paper The paper object defines the
TM GxFilterLayers

ArcCatalog
compiled as an ActiveX Dialog IPersistStream GxFilterMaps
bars collection to create
a toolbar DLL
UIComboBoxControl is a
dropdown list box control
that can be added to a toolbar
A tool acts as a button that allows further
interaction with the application display
message to the user printer and tray designations for
use with the printer object IGxObject-
FactoryEdit GxCoverage- GxMap-
IGxObject-
FactoryEdit GxTextFile-
GxFilterPointFeatureClasses
GxFilterPolygonFeatureClasses
GxFilterPolylineFeatureClasses IDllThreadManager
FindDialog
Factory Factory Factory GxFilterRasterDatasets IFindDialog FindDialog
ICommand GxFilterSpatialReference IGxSelectionEvents FindDialog provides access to
IDllThreadManager A DLL thread manager ICommandSubtype INumberDialog The CGM driver is created by the ArcCatalog’s Search dialog box
DllThread- IUIEditBoxControl ToolControl Number- GxFilterTables ISearchEngineEvents
provides access to an UIEditBox- (optional) The Number dialog box is used for getting user CGM exporter object during the GxFilterTablesAndFeatureClasses
IApplication
AppRef An application reference
object is a reference to the
Manager event that DLL thread
managers listen for
IUIEditBoxControlEvents

UIEditBoxControl is an editable
Control IToolControl

A tool control is dropdown list box control,


Dialog input in the form of a number
The exporter abstract class defines the
output of map data to a CGM file
GxDatabase-
IGxObject-
FactoryPriority GxMetadata-
IGxObject
GxObject GxFilterTINDatasets
GxFilterWorkspaces
currently running application Factory Factory IGxObjectEdit
textbox control that can be added editable textbox control, or other type of common interface for controlling the
IGxObjectUI
GxObject

IAppROT
You can use MouseCursor
to a toolbar control that can be added to a toolbar output of map data to files

IExporter
Exporter IGxObject-
GxObjects represent individual
data items and they are what
GxFile represents any file type that has
been defined in ArcCatalog
GxMetadata represents XML files IFindDialogSettings
IQuery
IXmlQuery
FileSystem-
Query
FileSystemQuery lets you modify an
The application running IUIToolControlEvents IMultiItem The ArcPress export GxFile- GxPrjFile- appear in the tree view and the existing search’s parameters or define
IAppROTEvents
AppROT
IMouseCursor to set the system mouse UITool- IMultiItemEx Exporter ICGMDriver
FactoryPriority
object table is a global list of MouseCursor cursor to be one of the Control (optional)
MultiItem abstract class supports CGM- Factory Factory contents view a new query
all currently running ESRI the output of map data ISupportErrorInfo
standard built-in cursors
UIToolControl acts as a button Driver IGxFile IGxFile
COM-based applications or a custom cursor A MultiItem is a dynamic command to the different file IGxObjectWizard
that allows further interaction IGxObjectContainer IGxFileSetup (optional) IGxObjectInternalName GxObject-
that appears as zero or more adjacent formats of ArcPress GxMetadata
with the application display IGxPasteTarget GxObject- IGxObjectInternalName (optional)
GxFile
IMetadata Wizard ISearchEngine
menu items on a menu depending GxLayer- GxShortcut- Container IGxObjectProperties IMetadataEdit ISearchEngineEvents Search-
IComponentCategoryManager Component- The component category upon the state of the application Factory Factory IMetadata INativeTypeInfo ISearchEngineProperties Engine
IMetadataEdit
Category- manager object registers IUID
A unique identifier object IArcPressExporter
ArcPress- ICGMExporter
CGM- The CGM exporter creates output in the INativeTypeInfo
Manager components with the represents the globally IArcPressExporter-
UID IExtensionManager DescriptionEnum Exporter Exporter Computer Graphics Metafile format
component categories used unique identifier for any IExtensionManagerAdmin Extension- IGxBasicObject
by the ESRI applications COM object ISupportErrorInfo Manager IGxNewDatabase GxNew-
IArcPress- IGxObjectProperties Database
ExporterDriver ArcPress- Catalog- The CatalogSearchEngine lets you search for any

3
IBmpExporter IComPropertySheetEvents
Exporter- IDibExporter The DIB exporter creates output in the IConnectionPoint IGxFile IGxCachedObjects
Search- object that appears in ArcCatalog
IGxFile
Driver IExporter2 DibExporter Device-Independent Bitmap format IConnectionPointContainer IGxCachedObjects
IGxFolder IComPropertySheetEvents Engine
IWorldFile- IGxCatalog IGxObjectSort Search- IGxObjectInternalName IGxLayer
GxLayer GxNewDatabase is the
ArcPress- IGxCatalogEventsDisp GxCatalog IGxObjectProperties
Results SearchResults stores a query IGxObjectProperties
GxFolder IGxObjectInternalName
GxLayer represents
Settings IMetadata shortcut used to create a
ExporterJPEG IGxCatalogEvents
IMetadataEdit IMetadata IGxThumbnail layer files new remote connection
FileSystemXmlSearch
IGxFile IMetadataEdit
IGxObjectFactories ISearchResults FileSystem- Engine lets you
The ArcPress exporter driver uses INativeTypeInfo IFileSystemQuery
The EMF exporter creates output in IMetadataEdit search for file-based
ArcPress to convert a PostScript file IEmfExporter
the Microsoft Enhanced Metafile format
XmlSearch- objects stored on disk
ArcPress- to one of the supported formats EmfExporter GxFolder represents Engine
IGxCachedObjects GxRemote- GxRemoteDatabaseFolder system-level folders for which metadata
ExporterPCX GxCatalog object represents IGxObjectProperties IGxMap
IGxRemoteContainer
Database- represents only the top-level IGxMapPageLayout
has been created
your actual tree of data, as is GxMap GxMap encapsulates
The JPEG exporter creates output shown in the tree view
IGxRemoteDatabaseFolder Folder Remote Connections folder IGxDiskConnection
GxDisk-
IGxObjectInternalName
IGxThumbnail map documents
IJpegExporter in the format set by the Joint
The legend group contains a collection
Jpeg- Connection ISpatialReferenceDialog Spatial- The Spatial Reference dialog box object is a
ArcPress- Photographic Experts Group
of legend class objects IClone Exporter GxSpatialReferencesFolder ISpatialReferenceDialog2 Reference- stand-alone object used to create a new spatial
ExporterPNG
IGxFileFilter IGxCachedObjects GxSpatial-
IColor
IPersist
Color IColorBrowser
Color- IGxFileFilterEvents
GxFileFilter IGxObjectProperties
References- represents only the top level Dialog reference object
IPersistStream IGxSpatialReferencesFolder of the spatial reference When ArcCatalog starts, it
IPersistStream Browser The PS exporter creates Folder
ILegendGroup
IPersist
IPersistStream
Legend-
Group
ILegendClass
IPersist
IPersistStream
Legend-
Class Colors and ramps *
The color browser dialog box allows a color to be
selected by setting individual color properties ArcPress-
IFontMapEnvironment

The Export dialog box displays


IPsExporter PsExporter
output in the PostScript format GxFileFilter object
maintains the file
information accessible
through ArcCatalog
creates GxDiskConnection
objects for each folder
connected at the root
IGxFileSetup
IGxObjectInternalName
IGxPrjFile
GxPrjFile
GxPrjFile represents projection
files with GxSpatialReferences-
Folder objects ITableDefinitionDialog Table- The Table Definition dialog box object is a stand-
FeatureLayer * * ExporterTIFF a dialog for users to enter The PDF driver is created by filter used by IGxCachedObjects
Definition- alone object used to create new tables and
A color ramp is a series IGxDatabase
in ArcMap filename and desired format the PDF exporter object ArcCatalog to feature classes within the specific workspace or
of colors ICmykColor
IMonitorSettings
Monitor- determine which file IGxDatabase2 IGxCachedObjects IGxShortcut Dialog dataset
for outputting map data IPdfExporter during the output of map
IFeatureRenderer IPostScriptColor
CmykColor Settings types to display
IGxObjectInternalName
GxDatabase IGxDataset GxShortcut
Feature- A feature renderer draws features Monitor settings can be used to get white point, red point, IFontMapEnvironment PdfExporter data to a PDF file IGxObjectProperties IGxObjectInternalName
ILegendInfo The legend class contains a symbol IExportDialog IGxObjectWizard GxShortcut represents IGxCachedObjects
to a display from a feature class green point, and blue point values for the monitor IGxObjectProperties
IPersist Renderer and some text in the form of a label IClone A CMYK color is composed of cyan,
IExportDialog2 ExportDialog IMetadata IGxThumbnail GxDataset shortcuts to objects returned IGxDataset
IPersistStream
and description to describe what IColorRamp
ColorRamp magenta, yellow, and black for The PDF exporter creates output in IMetadataEdit IMetadata from a Catalog search IGxFileSetup GxTextFile IProjectedCoordinateSystemDialog Projected-
IPersist
optimum print reproduction the Portable Document format GxDatabase holds a INativeTypeInfo IMetadataEdit IObjectClassSchemaEvents The Projected Coordinate System dialog box is a
that symbol represents Coordinate-
Feature renderers IPersistStream

GrayColor
ICieLabConversion
CieLab-
Conversion
IExporter2
ITiffExporter
IWorldFileSettings
TiffExporter
workspace within
ArcCatalog IGxDatabaseExtensions
INativeTypeInfo
IObjectClassSchemaEvents GxDataset holds a
dataset object
IFileName
IName Shortcut-
IGxObjectInternalName
GxTextFile represents text
files within ArcCatalog
SystemDialog
stand-alone object used to create a new
projected coordinate system object
IGrayColor A CIELabConversion is used to convert colors from GxDatabase- IPersistStream Name

6
IBivariateRenderer different color models to the CIELab color model Extensions within ArcCatalog IShortcutName
BiUnique- IBarrierProperties2 A gray color is defined as
GxDatabaseExtensions is a collection
Value- Proportional- object for the set of IGeographicCoordinateSystemDialog Geographic-

7
IDataExclusion IIAlgorithmicColorRamp a percentage of black IPDFDriver
A biunique value renderer combines Renderer IDataNormalization Symbol- A proportional symbol renderer draws a Algorithmic- GxDatabaseExtension objects ShortcutName is a name object IGxDialog Coordinate- The Geographic Coordinate System dialog box is
IRotationRenderer symbol of varying size for each feature. ColorRamp An algorithmic color IHlsColor PDFDriver IGxObjectFilter- GxDialog represents a browser a stand-alone object used to create a new
the symbols of a unique value IProportional-
Renderer ramp is a sequential HlsColor IColorPalette GxDatabaseExtension is an abstract class describing a GxShortcut Collection
GxDialog SystemDialog
The size is in proportion to a field value ICustomColorPalette that allows you to open and geographic coordinate system object
renderer and a class breaks renderer SymbolRenderer series of colors ColorPalette IGxDatabaseExtension whose purpose is to provide a starting IGxSelectionEvents
An HLS color is defined with hue, IGxDatabaseExtensionCompare GxDatabase- point for those developers who want to save GIS datasets.
IBarrierProperties2
lighting, and saturation components A ColorPalette displays the colors that are Extension create extensions to a GxDatabase
IMultiPartColorRamp
IBasicOverposterEvents IScaleDependent- Scale- A scale-dependent renderer is MultiPart- A multipart color
held in the current Styles on a popup menu
IChartRenderer Renderer IHsvColor
IDataExclusion Chart- Dependent- made of multiple renderers, each ColorRamp ramp is a collection
A chart renderer IDataNormalization Renderer Renderer operating within a scale range
HsvColor IColorSelector
of other color ramps An HSV Color is defined with hue, Color-
draws pie, bar, and IIdentify
stacked bar chart
IPieChartRenderer saturation, and value components Selector
IRendererFields A ColorSelector allows you to edit a
symbols based on
attributes of each
feature
IDisplayAdmin
ILevelRenderer
ILookupSymbol
IPropertySupport
Simple- A simple renderer draws
IPresetColorRamp
PresetColor-
Ramp
A preset color ramp
is a series of 13
IRgbColor
RgbColor
color according to the RGB, CMYK,
or HSV color model DataWindow
IBarrierProperties2 Renderer each feature using the specific colors
IRotationRenderer
IClassBreaksRenderer
IClassBreaksUIProperties
IDataExclusion
Class-
ISimpleRenderer
ITransparencyRenderer
same symbol An RGB color is composed of
red, green, and blue for optimum IDataWindow
IClone
IDataGraph
Application The selection environment controls
Style gallery IMapGridFactory
MapGrid-
Factory
A map grid factory
can be used to quickly
A class breaks renderer IDataNormalization Breaks- - IRandomColorRamp
Random- A random color ramp is a
series of randomized
screen display. DataWindow IDataGraphAxis
IDataGraphTicks IApplication
the application's selection behavior IPersist
IPersistStream
Selection-
IPersistStream
IStyleGallery
StyleGallery
IStyleGalleryClass
StyleGallery-
A map grid is a grid of reference
create a map grid with
default properties
can be used to draw IDataSampling Renderer ColorRamp Data windows are additional displays
IDataGraphAreaProperties IApplicationWindows ISelectionEnvironment IStyleGalleryStorage
* Class
ILevelRenderer colors within certain limits
graduated color ILevelRenderer Unique- The unique value associated with the application IDataGraphBarProperties IExtensionManager ISelectionEnvironmentLayer Environment A style gallery is a collection of
points or lines on the layout that
ILookupSymbol
ILookupSymbol renderer defines the IDataGraphColorProperties
DataGraph IDockableWindow- ISelectionEnvironmentStorage help you visually identify the
(choropleth) and IRotationRenderer Value- ISelectionEnvironmentThreshold styles. Each ArcMap document
IRotationRenderer IDataGraphHighLowCloseProperties Manager location of features on the map
symbol a feature is to CustomOverlayGridFactory

Display
graduated symbol maps has a style gallery associated with
ITransparencyRenderer Renderer be drawn with based
IDataGraphOverlayProperties IEnumPrinterNames Application
IUniqueValueRenderer IDataGraphPieProperties IMultiThreaded- IdentifyDialog is the dialog box for IIdentifyDialog
it. Using this style gallery, you can IClone GraticuleFactory
IDataExclusion on an attribute value IActiveViewEvents IDataGraphProperties Application IEnumStyleGalleryItem access the styles referenced by AreaPatchStyleGalleryClass IndexGridFactory
IDotDensityRenderer DotDensity- A map insert window IComPropertySheetEvents IPersistStream IMxApplication quickly querying data attributes IIdentifyDialog2
IdentifyDialog EnumStyle- IGraphicsComposite
IMapGrid MapGrid
A dot-density renderer draws
IDotDensityUIRenderer Renderer factory creates map IDataGraphWindow DataGraph- IObjectFactory IIdentifyDialogProps
GalleryItem that document BackgroundStyleGalleryClass IPersist
MeasuredGridFactory
varying densities of dots within
IRendererFields ICalcRendererValues Calc- inset windows IDocumentEvents Window IVBAApplication
IWindowPosition
BorderStyleGalleryClass IPersistStream
CalcRendererValues is a utility object used IPersist
polygon features Renderer-
Values
to perform simple statistical calculations on IPersistStream
Data graph windows display graphs
Data graphs represent ArcMap IExtension
*
ArcMap supports extensions that are An enumeration of style gallery
ColorRampStyleGalleryClass
ColorStyleGalleryClass MapGrid
IClone
IDisplayFilter
IPersist
Transparency-
DisplayFilter
a feature layer for use by renderers
Symbols
IClone Symbols are used for drawing
IDataWindow-
Factory MapInset-
Window- IActiveViewEvents
and ArcCatalog graphs The application object represents
the running ArcMap application
Extension automatically created when the application
starts. The ArcMap editing tools are an example IClone
Style-
items FillSymbolStyleGalleryClass
LabelStyleGalleryClass ICustomOverlayGrid
Custom- IGraphicsComposite
MapGrid-
A map grid border is
IPersistStream IPersist Factory IDocumentEvents
MapInset- of an extension IStyleGalleryItem LegendItemStylGalleryClass IMapGridBorder the set of lines that
ITransparencyDisplayFilter IPersistStream
Symbol features and elements on a map and ILensWindow Mapinset windows display a IPersist GalleryItem LinePatchStyleGalleryClass A custom overlay grid divides the OverlayGrid IPersistStream Border outline the map grid
ISymbol have attributes such as color and size IMapInsetWindow Window magnified view of the focus map
IAppDisplay IPersistStream Style items provide access to the map using lines from the data
IMapSurroundEvents IDisplay
AppDisplay IChangeLayout LineSymbolStyleGalleryClass
IPersistStream IDraw IActiveViewEvents individual map elements and source you specify
IScreenDisplay
IContentsViewEdit
IComPropertySheetEvents symbols that make up a style
MapGridStyleGalleryClass
IScreenDisplay2
IDataGraphs
IContentsView
TOCView MarkerSymbolStyleGalleryClass
IDataWindowFactory Overview- IDocument
NorthArrowStyleGalleryClass
IGraticule
IMeasuredGrid
IDocumentDirty

Marker symbols
IMapLevel
Line symbols IFillSymbol
Fill symbols I3DChartSymbol
3D chart symbols Text symbols
Window-
Factory
IActiveViewEvents
IDocumentEvents
IMapSurroundEvents
Overview-
Window Overview windows display the full
The application display helps
manage all of the displays
IDocumentDatasets
IDocumentDefault-
Symbols MxDocument
Style selectors provide you with the
means to interactively choose or
Using the style gallery coclasses, you
can create various types of style items
ScalebarStyleGalleryClass
ScaleTextStyleGalleryClass
A graticule divides the map into a
grid of meridians and parallels
Graticule
ISimpleMapGridBorder
SimpleMap-
A simple map grid
border is composed of
simple lines
IMarkerSymbol Marker- ILineSymbol
IMapLevel IChartSymbol IFormattedTextSymbol
IOverviewWindow
extent view of the focus map
present in the application IDocumentEvents edit a style item ShadowStyleGalleryClass GridBorder
IMapLevel
LineSymbol FillSymbol IMarker- 3DChart- IMapLevel
IPersistStream A table view IDocumentEventsDisp IDocumentEvents
IPropertySupport Symbol IPropertySupport IPropertySupport
BackgroundSupport Symbol IMask An text symbol defines a Font and many displays a table IDocumentInfo TOCCatalog TextSymbolStyleGalleryClass IIndexGrid
ISymbolRotation TextSymbol formatting properties of a piece of text. An overview window factory IMxDocument IComPropertySheetEvents
IMarkerSymbol IPropertySupport
creates overview windows The table of contents View IndexGrid
ISymbolArray ISimpleTextSymbol ITableWindow Table- IPersist
catalog view represents
IStyleSelector StyleSelector ICalibratedMapGridBorder Calibrated-
ISymbolRotation ITableWindow2 IPropertySupport An index grid divides the map into a
ITextSymbol Window IReportUnitFormat the Source tab in the grid for indexing
MapGrid-
A 3D chart symbol is a symbol Table windows display a table
IClone ArcMap table of contents Border
ITableControl IComPropertySheetEvents Style-
ICartographicMarkerSymbol ICartographicLineSymbol IDotDensityFillSymbol used by a chart renderer ITableControlInfo MxDocument controls the current active
Character- Cartographic- IDotDensityMasking DotDensity- A dot-density fill symbol is a data- ITableControlWidth
IStyleDialog
Manager- IMeasuredGrid
Measured- A calibrated map grid
ICharacterMarkerSymbol ILineProperties
FillSymbol TableView view that specifies whether the user is
The table of contents display IProjectedGrid
IMarkerMask MarkerSymbol LineSymbol ISymbolArray driven symbol commonly used with ITableOutput
interacting with the entire map layout or Dialog Grid border is composed
IBarChartSymbol ITableView view represents the Display tab TOCDisplay- IMapGridSelector
A cartographic line symbol has flexible the dot-density renderer. BarChart- a specific data frame in the layout MapGrid- Gives you access to the ArcMap of a graduated band
A character marker symbol is a ITableView2 in the ArcMap table of contents A measured grid divides the map into a
properties to create dot-dash patterns, Symbol IClone ITableViewTableFields View BackgroundSelector Selector Style Manager dialog box
single glyph from a TrueType font Text- grid of units in any coordinate system
decorations such as arrowheads, and ITextBackground
The bar chart symbol BorderSelector
line join and cap styles IGradientFillSymbol A gradient fill symbol is a draws a bar chart
IPersist Background The page layout is ArcMap's version of a hardcopy output IGridLabel
IMarkerMask
GradientFill- IPersistStream StyleGallery LabelStyleSelector A grid label governs the way a map
ISimpleMarkerSymbol Simple- series of colors page. A typical page layout may have a map and graphic IPersist IStyleDialog Style- IGridLabelExport
GridLabel
IHashLineSymbol Symbol LegendItemSelector IPersist grid is labeled along the borders
MarkerSymbol HashLine- A marker text background is a marker symbol elements representing a title, north arrow and legend IPersistStream
SnapGrid * References- IPersistStream
IPieChartSymbol ISnapGrid NorthArrowSelector
A simple marker symbol is a
A hash-line symbol is a series of lines
Symbol PieChart- drawn as a background to a piece of text IPersist IActiveView
ScaleBarSelector Gives you access to the ArcMap Dialog
ITextPath
square, circle, diamond, cross, or x Symbol TextPath A text path defines a The snap grid is a grid of PageLayout IActiveViewEvents The style gallery is a list of predefined Style References dialog box
running at an angle to the original line line along which a IBasicMap
items (styles) used to create maps
ScaleTextSelector
IMarkerTextBackground reference points on the IConnectionPointContainer
MarkerText- piece of text is placed ShadowSelector
IArrowMarkerSymbol ILineFillSymbol The pie chart symbol IGraphicSnap layout used to aid IDisplayAdmin
IMarkerMask Arrow- IMarkerLineSymbol LineFill- draws a pie chart Background IPageLayoutSnap
GraphicSnap element placement. The IDisplayEvents IDMSGridLabel IIndexGridTabStyle
MarkerSymbol MarkerLine- Symbol A line fill symbol is a regular ICallout IPersist
snap grid works in IGraphicsContainer The Map object is a container for vector, DMS- IndexGrid- An index grid tab style
IQueryGeometry IActiveView
series of lines at any angle Callout
An arrow marker symbol is a
triangular arrowhead
A marker line symbol is a series of marker
symbols following the path of a line
Symbol IStackedChartSymbol Stacked-
Chart-
Symbol
A callout draws a background A Bezier text path is used to
IActiveViewEvents
IConnectionPointContainer
IDisplayAdmin
IPersist
IPersistStream
IRulerSettings
Ruler-
Settings
conjunction with a grid
snap agent
IGraphicsContainerSelect
IMap
IMapBarriers
IMapBookmarks Map
raster, and graphic data. Maps reside on
the page layout and contain the geographic
data typically seen on a map
NumberFormat IClone Number format objects
A DMS grid label displays the map grid
using degrees, minutes, and seconds
GridLabel TabStyle governs the way an
index grid is labeled
behind a piece of text, with a BezierText- draw text along a curve, from IGraphicsContainer IMapEvents INumberFormat Number- convert values to text
IFillProperties leader line to an anchor point Path IGraphicsContainerSelect IMapGeographicTransformations Format IFormattedGridLabel
ICartographicMarkerSymbol IMultiLayerLineSymbol its start to endpoints
IMarkerMask Picture- ILayerVisible MultiLayer- IMarkerFillSymbol MarkerFill- A marker fill symbol is a grid of The stacked chart IGraphicSnapEnvironment PageLayout IPersist IMapEvents
strings and vice versa Formatted-
IPageEvents
IPictureMarkerSymbol MarkerSymbol ILayerColorLock LineSymbol Symbol marker symbols symbol draws a IPageLayout
Ruler settings represents IPersistStream
MapEvents Numeric format objects A formatted grid label uses a number format GridLabel IBackgroundTabStyle A background tab style
stacked bar chart IBalloonCallout GridSnap the layout rulers IRelationshipClassCollection
convert to and from to label the map grid Background- labels the index grid
A picture marker symbol is a bitmap ITextMargins Balloon- GuideSnap
IPersist
IPersist
ISelectionEvents
A multilayer line symbol is a
Callout IOverposterTextPath An overposter text path IPersistStream
IPersistStream Page IStandaloneTableCollection angle, latitude-longitude, TabStyle using square, round, or
image or enhanced metafile stack of other line symbols IChartSymbolEditor Chart- A balloon callout
Overposter- is used internally by the MarginSnap ISelectionEvents
ISnapGuides
SnapGuides ITableCollection percentages, and rate IMixedFontGridLabel rounded-square boxes
ITransformEvents ITransformEvents
ISimpleLineSymbol Symbol- draws a balloon TextPath ArcObjects label engine RulerSnap IViewManager IViewManager This object provides access to the values. IFormattedGridLabel MixedFont-
IMultiLayerMarkerSymbol SimpleLine- IMultiLayerFillSymbol
MultiLayer- A multilayer fill Snap guides are horizontal A currency format Currency- INumericFormat GridLabel
ILayerVisible MultiLayer- Symbol ILayerColorLock
symbol is a stack of Editor behind a piece of text IMapEvents outbound interface object converts Format Numeric- A mixed-font grid label displays the label in two
ILayerVisible FillSymbol and vertical lines added to The Page object Format ButtonTabStyle
ILayerColorLock
IMarkerBackgroundSupport
MarkerSymbol A simple line symbol is a solid line or one other fill symbols ILineCallout
IMarkerBackground
LineCallout
A simple text
Graphic snap agents
* the layout that aid element represents the page currency values fonts and also uses a number format
ContinuousTabStyle
A multilayer marker symbol is an ordered
IMask with predefined series of dots and dashes

IPictureLineSymbol
The chart symbol editor can be
used to allow users to edit the A line callout draws a line from
ITextMargins
SimpleText-
Path
path is used to
draw text that
follows a straight
move elements by
attempting to snap them
Page layout placement. The snap guides
work in conjunction with a
guide snap agent
of paper the layout
resides on Element
ICustomNumberFormat A button tab style labels using rectangular buttons that line the grid
RoundedTabStyle
collection, or stack, of other marker symbols PictureLine- IFillProperties
A picture fill
an anchor point to a piece of
to various objects such as IClone MapSurround SpatialBookmark CustomNum-
properties of a chart symbol or curved line. A continuous tab style labels using a continuous band around the grid
A picture line symbol draws a Symbol IPictureFillSymbol PictureFill- symbol is a grid
text, and draws a rectangular ISimpleLineCallout the snap grid IConnectionPointContainer Layer A custom number format berFormat A rounded tab style labels using rounded rectangles that line the grid
line by filling it with a tiled image Symbol of pictures
background behind the text
SimpleLine- IFrameProperties
converts a wide range of
IPercentageFormat
Percentage-
IClone
Line- Callout IPage Page
ILineDecoration
IClone
IGraphicSnap- Graphic- IPageEvents numeric formats Format
IPersist Decoration IElement
Environment
Snap- IPersist The page represents IAngleFormat
IPersistStream IPersist IPersistStream

A line decoration maintains a set of line decoration


IClone
IPersist
IPersistStream
Template
A template defines the series
of dots, dashes, and gaps ISimpleFillSymbol
SimpleFill-
A simple line callout draws a custom line
shape as a leader line to a TextSymbol
IElementProperties
IPersist
IPersistStream
Element IPersistStream Environment IPropertySupport the piece of paper
the layout resides on
Elements are a broad group of items
that can be placed on the page layout
or on a map. For example, a map title
A layer is a specific class of data
added to a Map. Layer types include
features (coverages, shapefiles,
A map surround is a specific
group of elements that is
associated with a map. Map
A spatial bookmark is a
specific map extent that
has been saved along
IFractionFormat

A fraction format object


Fraction-
Format
AngleFormat
IBoundsProperties
MapSurround
elements, which are symbols drawn along a line * ITemplate along a cartographic line ITextSymbolEditor Text- The text symbol editor is a dialog
IRateFormat
Symbol Symbol- The graphic snap environment controls which
is a text element placed on the page geodatabases), rasters, images, TINs, surrounds include North arrows, with a name identifying it converts fractional values RateFormat IClone
SimpleLine- A simple fill symbol is a box used for editing the properties layout CAD, IMS, and annotation scale bars, and legends IConnectionPointContainer Map surrounds are associated with a data
IClone
solid or hatched fill Editor of an existing text symbol graphic snap agents are active, the order in
ILatLonFormat
ILatLonFormat2 LatLon- IMapSurround MapSurround frame and provide a cartographic context for
ILineDecorationElement Decoration- IClone
which they are called, and the snap tolerance IScientificNumberFormat IMapSurroundEvents
IPersist
Element
IFontSize
FontSize Scientific- Format A legend is a list of IPersist the geographic data and extent.

ArcMap
IPersistStream IPersist IPersistStream
ISimpleLineDecorationElement ISymbolSelector The Symbol Selector dialog ISymbolEditor IPersistStream TM A scientific format object Format symbol appearing on
Symbol- box presents all symbols in
Symbol- The Symbol Editor dialog
converts numbers with a map
A simple line decoration element draws marker decorations Selector Editor box is used to edit the
referenced style files The font size object is used by exponent values
on the top of a line symbol, such as arrowheads

ILineDecorationEditor Line-
definition of any symbol
ArcMap to determine the
default size for new text
ITextBackgroundEditor Text-
Background-
The text background editor is a dialog
box used for editing the properties of IClone
Element Layer IActiveViewEvents
IGraphicsComposite
IMapInset

Decoration- IClassFactory The symbology environment IGeometryDraw Editor text backgrounds like a callout
IElement
Map elements represent all the IGeoDataset ILegend Legend MapInset A map inset is a magnified view of a map
ISymbologyEnvironment Symbology- ISupportErrorInfo Geometry- The geometry draw can be IElementProperties ILayer IPropertySupport
Editor Environment
controls certain details of used to draw any geometry IPersist Element graphics that can appear on a map FeatureClass in Geodatabase Layer A layer is used to display
The line decoration editor edits the
symbology display Draw IDisplayFeedback IPersistStream
IPersist IReadingDirection
properties of a line decoration to a display Display- Renderer in Display IPersistStream geographic information on a map A CAD feature layer displays a CAD
IPropertySupport
Feedback feature class from a drawing
Graphic elements are simple graphics
that can appear in a data view
ITransform2D
* *
A legend format

Display Display feedback IAttributeTable


IClass
A group layer is a group An Internet map server layer displays data
IClone
ILegendFormat
ILegendLayout
IPersist
Legend-
Format
manages a legend's
default properties
MapTitle A map title is a text element describing a
map
of layers that appear and

Display objects are used to draw graphics


IConnectionPointContainer
IDisplay
IDisplayEvents
IDraw
Display
IClone
Frame decoration ILineMovePointFeedback BezierMove-
Point-
INewBezierCurveFeedback NewBezier-
Curve-
IGraphicElement
Graphic-
Element
IBoundsProperties
IFrameDraw
IFrameElement
Frame-
Element A frame element forms a border
IConnectionPointContainer
IDataLayer
IDataLayer2
act like a single layer in
the table of contents
from an image service on the Internet
IAttributeTable
ICadDrawingLayers
ICadTransformations
ICadLayer
ICad3DRenderMode
ICadDrawingLayers
IConnectionPointContainer
IDataLayer
IDataLayer2
IPersistStream

IClone
*
INorthArrow
on a variety of output devices Frame- Creates a feedback IFrameProperties IDataset
ICompositeLayer IClass ICadTransformations IDisplayAdmin Raster- ILegendItem The North arrow object is a base
IFrameDecoration
IGraphicsComposite
Frame decorations are adornments to on the display for Feedback Creates a feedback on the display Feedback around other elements or objects IDisplayAdmin ICompositeLayer ICompositeLayer2 IConnectionPointContainer IConnectionPointContainer IIdentify CatalogLayer ILegendItem2 LegendItem NorthArrow
Decoration frame elements, such as backgrounds, for adding a new Bezier curve A group element is a set of IDisplayFilterManager IConnectionPointContainer IDataLayer IDataLayer ILayerEffects
class for all north arrow types
IPersist moving a point on a IDataLayer IPersist
IConnectionPointContainer IPersistStream shadows, and neatlines grouped elements IDisplayRelationshipClass IDisplayAdmin IDataLayer2 IDataLayer2 IDataLayer2 CadLayer ILayerEvents Documented in IPersistStream
Bézier curve IDisplayTable IGroupLayer IDataset IDisplayAdmin ILayerDrawingProperties Legend items are the
IDelayEvents Display- IFeatureLayer IIdentify
IDisplayAdmin chapter 13,
IDisplayTransformation Trans- ICalloutFeedback INewCircleFeedback IGraphicElement IFeatureLayer2 GroupLayer IDisplayFilterManager IMSMap- IDisplayAdmin IIdentify ILayerExtensions "Integrating raster individual parts of a legend
A simple display object abstracts all IRasterOutputSettings Callout- NewCircle- IBoundsProperties Frame- A frame element is a neatline IFeatureLayerDefinition
IIdentify2
ILayer2
IIdentify
Layer IDisplayFilterManager ILayerEffects ILayerInfo data"
formation IDisplayRelationshipClass ILayerExtensions ILayerPosition
other devices that can be rendered to Simple- ITransformation Feedback Feedback IFrameElement Group- Element IFeatureLayerSelectionEvents ILayerEvents
IIdentify2
IDisplayTable ILayerInfo ILegendInfo
IGraphics-
using a Windows Device Context Display ITransformEvents
Creates a feedback on Creates a feedback on the display IFrameDraw
Element IFeatureSelection ILayerInfo
IIMSMapLayer
IFeatureLayer ILayerPosition IRasterCatalogLayer IHorizontalBar- Horizontal- Composite Marker- Marker North arrows use a
IFrameProperties ILayerDrawingProperties IMarkerNorthArrow
such as printers and metafiles
IBackground
Symbol-
IBorder
Symbol-
IShadow
Symbol- the display for a callout for adding a new circle
IGroupElement
IFind ILayerPosition ILayerEffects IFeatureLayer2 LegendItem
BarLegend- IPropertySupport
NorthArrow character marker symbol
ISymbolBackground ISymbolBorder ISymbolShadow IGeoFeatureLayer IMapLevel IFeatureLayerDefinition IVerticalLegendItem
A map frame manipulates the ILayerInfo ITransformEvents
Background Border Shadow IHotlinkContainer
ILayerPosition IFeatureSelection A CAD layer displays a Item
IScreenDisplay INewDimensionFeedback New- A marker IActiveViewEvents frame containing the map IHotlinkMacro Feature- IFind CAD drawing
Screen- ISet IConnectionPointContainer IHyperlinkContainer An overview displays the full
ITransformEvents A display transformation manages the map to Group- Dimension- element is a IBoundsProperties IDisplayAdmin IIdentify
Layer A feature layer displays
IGeoFeatureLayer
IAttributeTable IOverview map extent of a dataframe,
Display point graphic Marker- IDisplayEvents Graphics layers manage the IHotlinkContainer CadFeature- IHorizontalLegendItem
device transformation for each type of display
Creates a feedback on the Feedback Creates a feedback on the display Feedback IMarkerElement IIdentify2 data from a feature class graphics associated with a map
IHotlinkMacro
Layer
IClass
Horizontal- Overview together with a box graphic
A screen display object abstracts a normal application Element IGraphicsComposite MapFrame ILayer2 IHyperlinkContainer IConnectionPointContainer
window and implements scrolling and backing store The symbol background draws a The symbol border draws an The symbol shadow draws a display for a group of for adding new dimension shapes IGraphicsContainerProperty ILayerDrawingProperties on a map
IIdentify IDataLayer LegendItem showing the current map
background fill for a frame element outline for a frame element shadow around a frame element feedback objects IMapFrame A map surround frame ILayerEffects IIdentify2 IDataLayer2 extent
A line element is a line graphic IMapFrameEvents IAttributeTable
manipulates the frames of ILayerEvents IBarrierProperties IDimensionLayer ILayer2 IDataset
INewEnvelopeFeedback New- IMapGrids
map elements such as ILayerExtensions IBarrierProperties2 IClass ILayerDrawingProperties IDisplayAdmin
ILineMovePointFeedback LineMove- INewEnvelopeFeedback2
Envelope- ITransformEvents
North arrows and legends ILayerFields IConnectionPoint- IConnectionPointContainer ILayerEffects IDisplayRelationshipClass IHorizontalLegendItem
Nested-
IScaleText
IBoundsProperties ILayerInfo IDisplayTable INestedLegendItem IPropertySupport A scale text map
Point- Feedback IElementEditVertices
Container IDataLayer ILayerExtensions
IGeoReference LegendItem ScaleText

IClassify
Classify IRubberBand
Rubber band Creates a feedback on the
display for moving a point on a
line
Feedback
Creates a feedback on the display for
adding a new envelope ILineElement
LineElement
IGraphicsComposite
IMapFrameEvents
Map-
ILayerPosition
ILegendInfo

IObjectClassSchemaEvents
IMapLevel
IGraphicsContainer
IGraphics-
ContainerSelect
Graphics-
Layer
IDataLayer2
IDataset
IDisplayAdmin
ILayerFields
ILayerInfo
ILayerPosition
IIdentify
ILayerDrawingProperties
ILayerEffects
RasterLayer
Documented in
ITransformEvents surround is a text
element that
describes the map's
IMapSurroundEvents Surround- An OLE frame is an OLE
IGraphicsLayer IDisplayFilterManager ILegendInfo
ILayerEvents chapter 13,
Classify RubberBand INewLineFeedback
NewLine- A text element is a text graphic IMapSurroundFrame Frame
IPropertySupport IOverflow- IDisplayRelationshipClass IMapLevel
"Integrating raster IVerticalLegendItem
Legend class format objects control
scale
IDataNormalization ITransformEvents object graphic IRelationshipClassCollection GraphicsContainer IDisplayTable IObjectClassSchemaEvents ILayerExtensions
data" Vertical-
IHistogram Table- IModifyDimensionFeedback Modify- Feedback IBoundsProperties IRelationshipClassCollectionEdit ISelectionEvents IFeatureLayer IPropertySupport ILayerFields
LegendItem each legend item's presentation
ITable IRelationshipClassCollection ILayerInfo
IStatisticsResults Histogram Dimension- Creates a feedback on the display IElementEditCallout
ITableFields
IFeatureLayer2
IRelationshipClassCollectionEdit ILayerPosition
ITableHistogram A data graph element IElementEditVertices IFeatureLayerDefinition
Creates a feedback on the display Feedback for adding a new line IGroup- TextElement IOleFrame
ITableSelection IFeatureLayerSelectionEvents ITable ILegendInfo IGraphicsComposite A scale bar
manipulates the frame A table frame IFeatureSelection ITableFields IObjectClass IPropertySupport
for modifying a dimension shape SymbolElement IElementShutdown
OleFrame ILegendClassFormat graphically
A rubber circle object allows A rubber point object allows the user
INewMultiPointFeedback New- containing a graph ITextElement GraphicElement manipulates the IFind ITableSelection IRasterLayer
IRelationshipClassCollection IPersist LegendClass- IScalebar Scalebar
to input and move points on the ITransformEvents IHotlinkContainer IClone
Format IScaleMarks shows a
IClassifyMinMax
Defined- The table histogram is a data the user to input circles on Rubber- MultiPoint- frame containing IHyperlink IRelationshipClassCollectionEdit IPersistStream
RubberPoint IHotlinkMacro IPatch
Patch ITransformEvents map's scale
IIntervalRange
Interval
The defined interval classification produces classes
that are divided by regular fixed numeric increments
structure used to set data to a the display Circle display IMoveEnvelopeFeedback Move-
Creates a feedback on the display Feedback A picture element the table IPersist
IPersistStream
Hyperlink * IHyperlinkContainer Dimension-
Layer
ITable
ITableFields
IPersist
data classification Envelope- for adding a new multipoint represents Windows raster IActiveViewEvents
IIdentify IAttributeTable ITableSelection
IPersistStream
Feedback IDataGraphElement DataGraph- IAttributeTable IIdentify2 IBarrierProperties
A rubber envelope object Creates a feedback on the display or vector graphic objects IClass ILayer2
A rubber polygon object allows the
for moving an envelope
IGraphicsContainerProperty Element ITableFrame
IDataLayer ILayerDrawingProperties
IBarrierProperties2
allows the user to input and ICadDrawingLayers
Rubber- Rubber- user to input and move polygons on INewPolygonFeedback TableFrame A hyperlink displays IDataLayer2 ILayerEffects ICadTransformations
IClassifyMinMax
Equal- The equal interval classification is similar to defined interval,
move envelopes on the display
Envelope Polygon the display NewPolygon- IBoundsProperties IDataset ILayerEvents ICoverageAnnotationLayer Cad- IConnectionPointContainer
IScaleLine ISingleFillScaleBar
SingleFill-
IDoubleFillScaleBar
DoubleFill-
Feedback IFrameDraw
Picture-
linked data, such as text IDisplayAdmin ILayerExtensions ICoverageAnnotationLayer2 IDataLayer ScaleLine ScaleBar ScaleBar
Interval except that the first interval starts at the lowest value IMoveGeometryFeedback Move- Creates a feedback on the display IFrameElement IBoundsProperties files or Web pages, IDisplayFilterManager ILayerFields Annotation- IDataLayer2 A TIN layer ILinePatch
Geometry- IFrameProperties Element IFillShapeElement FillShape- A fill shape element is a ILayerInfo
IDataLayer
Layer
A rubber rectangular object for adding a new polygon IOlePictureElement Element graphic of a closed area
when you click it IDisplayRelationshipClass
ILayerPosition
IDataLayer2 IDisplayAdmin displays 3D LinePatch
IDisplayTable IFeatureLayer IDisplayFilterManager surface data
A rubber line object allows the Rubber- allows the user to input and move Creates a feedback on the display for Feedback IPictureElement IFDOAttributeConversion IMapLevel IFind IIdentify
user to input and move RubberLine Rectangular polygons, which are constrained moving a geometry by reference IPolygonMovePointFeedback Polygon- IFDOGraphicsLayer IObjectClassSchemaEvents ILayerFields ILayerDrawingProperties
Natural- The natural breaks classification produces classes which polylines on the display -Polygon to be rectangular, on the display IFeatureLayer IPropertySupport ILayerInfo ILayerEffects TinLayer Single-
Breaks highlight natural groupings by minimizing variance within MovePoint- IFeatureLayer2 IRelationshipClass- ITableFields ILayerEvents Stepped- AlternatingScaleBar
Feedback ICompositeGraphicsLayer Composite- IFeatureLayerDefinition Collection ILayerExtensions IAreaPatch Division- DoubleAlternatingScaleBar
a class and maximizing variance between classes IMoveImageFeedback Creates a feedback on the display IFeatureSelection IRelationshipClass- ILayerFields AreaPatch ScaleLine ScaleBar
IMoveImageFeedback2 MoveImage- for moving a point in a polygon
ICompositeLayer Graphics- CollectionEdit HollowScaleBar
Feedback BmpPicture- EmfPicture- ICircleElement IEllipseElement IGeoDatasetSchemaEdit
Layer
IFind ILayerInfo

IDeviationInterval
Standard- The standard deviation classification creates classes Selection tracker
ISelectionTracker
Creates a feedback on the display for
moving an image of symbolized elements IReshapeFeedback
Reshape-
Element Element Circle-
Element
Ellipse-
Element
MultiPatch-
Element
IGraphicsLayerScale IHotlinkContainer
IHotlinkMacro
IHyperlinkContainer
FDO-
Graphics-
ITable
ITableFields
ITableSelection
A CadAnnotationLayer
IAttributeTable
IBarrierProperties
IBarrierProperties2
ILayerPosition
ILegendInfo
ITableFields
ITinLayer
Deviation that represent dispersion about the mean value Selection- Selection trackers manage the or features IIdentify Layer is used to control the ICoverageAnnotationLayer
Patches are individual color Scale line scale bars are repre- Single-fill scale bars are Double-fill scale bars are symbolized
Tracker Creates a feedback on the display for Feedback IIdentify2 ICoverageAnnotationLayer2 Coverage-
handles of selected elements ILayer2 symbology of the IDataLayer boxes in a legend sented with a single line symbol symbolized using one fill symbol using two fill symbols
IMoveLineFeedback reshape A composite graphics layer ILayerEffects A dimension layer displays annotation features IDataLayer2
Annotation-
MoveLine- manages other graphics layer, but is ILayerEvents descriptive text and supporting IFeatureLayer Layer
A BMP picture element An EMF picture from a CAD layer
Creates a feedback on the display for Feedback is a Windows bitmap element is a also a graphics layer itself ILayerExtensions graphics (such as leader lines) that IFind
Quantile The quantile classification creates as close as moving a line IRectangleElement IElementEditVertices ILayerFields ILayerFields IBarrierCollection IClone Point-
possible to equal numbers of values in each class IResizeEnvelopeFeedback Resize- Windows Enhanced Rectangle- IPolygonElement Polygon- ILayerInfo are associated with map features ILayerInfo IAnnotationExpressionEngine Annotation- Barrier- IPersist
IResizeEnvelopeFeedback2
Envelope- Metafile picture Element Element ILayerPosition ITableFields ICodedValveAttributes Collection IPersistStream Placement-
ICalloutTracker IMapLevel
A coverage annotation
IPersist
Expression- A barrier collection holds a IPointPlacementPriorities Priorities
Callout- Envelope- Point- Polygon- Creates a feedback on the display for Feedback IObjectClassEvents layer displays annotation IPersistStream Engine set of geometries used as
LineTracker

5
IMovePointFeedback IObjectClassSchemaEvents from a coverage
Tracker Tracker Tracker Tracker MovePoint- resizing an envelope ISpatialBookmark An FDO graphics layer is a layer based barriers in label placement
Spatial-
Feedback IPersist
IPropertySupport
IRelationshipClassCollection on an annotation feature class in a
Labeling Point placement priorities specify

4
ITrackCancel Creates a feedback on the display for moving a IPersistStream Bookmark conflict resolution weights for labels
Cancel- point IStretchLineFeedback IRelationshipClassCollectionEdit geodatabase
placed relative to point features
Tracker StretchLine- ITable An annotation Java Script engine
ITableFields IAnnotateLayerProperties An annotation VB Script
Feedback Annotation- Annotation- specifies a label expression based LineLabel-

A cancel tracker provides a mechanism


IAnchorPoint
AnchorPoint
IRotateTracker
Rotate-
Tracker
IScaleTracker
Scale-
Tracker IMovePolygonFeedback Move-
Creates a feedback on the display for
stretching all the vertices on a polyline SpatialBookmark ITableSelection

IAnnotateLayerPropertiesCollection Annotate-
IAnnotateLayerTransformationProperties
IAnnotateProperties
IClone
LabelEngine-
Layer-
engine specifies a label
expression based on VB Script VBScript-
Engine
JScript-
Engine
on Java Script
IClone
ILineLabelPlacementPriorities
IPersist
IPersistStream
Placement-
Priorities
Polygon- IPersist ILabelEngineLayerProperties Properties
for the user to stop a process
Feedback IAOIBookmark IFeatureBookmark IPersistStream Layer- IPersistStream IBasicOverposterLayerProperties
BasicOver-
Creates a feedback on the display for moving a IVertexFeedback AOI- Feature- Properties- IBasicOverposterLayerProperties2
polygon Vertex- Bookmark Bookmark IClone posterLayer-
A feature bookmark stores information Collection Label engine layer properties specify
An anchor point is useful for A rotate tracker manages the user A scale tracker controls the user interface Creates a feedback on the display for Feedback An area of interest is a map extent Annotate layer properties holds a set of IClone Line label position specifies the desired Basic overposter layer properties IOverposterLayerProperties
Properties Line label placement priorities specify
rotating elements and features interface for rotating features or elements for scaling features or elements you would create when zooming in about a particular feature so that it can labeling properties for a feature layer ILineLabelPosition LineLabel- label position and placement option for specify label placement and
IPersist
conflict resolution weights for labels
editing vertices of a geometry by reference labeling properties for a feature layer IPersistStream
or panning the display be quickly found again IPersist Position labels placed relative to line features conflict resolution properties placed relative to line features
IPersistStream
Diagram key
Types of Classes

ArcObjects is the development platform for ArcGIS Desktop, a suite of GIS An abstract class cannot create new objects; it is a specification for Chapter 8 Chapter 9 Chapter 10
ESRI® ArcObjects™ is the development software systems: ArcInfo, ArcEditor, and ArcView. These systems serve GIS
instances of subclasses (through type inheritance.)
A coclass can directly create objects by declaring a new object. Geodatabase Geometry Spatial Type inheritance
reference
coclass coclass This diagram illustrates the implicit type inheritance model in the ArcGIS 8.1
platform for the ArcGIS™ family of applications professionals with a spectrum of geographic data management, spatial editing, and Inbound interface
Outbound interface abstract Instantiation
A class cannot directly create objects, but objects of this class can be
created as a property of another class or instantiated by objects from
coclass
component objects. Software interfaces are not duplicated in the child classes.
class another class. The objects to the left show a sample view of type inheritance. The objects below
such as ArcMap™, ArcCatalog™, and cartographic visualization functionality. ® TM Geodatabase Geometry Spatial
reference show a flat view of the objects with their full list of interfaces. The two views are

ESRI ArcGIS 8.1 Object Model


Types of Relationships
class class class equivalent, but the type inheritance view gives insight into the structural
ArcScene™. The ArcObjects software The ArcGIS Desktop systems each contain a configuration of applications, such as
Type inheritance Associations represent relationships between classes. They have defined
multiplicities at both ends.
composition of the object model.

Geodatabase Geometry Spatial


components expose the full range of functionality ArcCatalog, ArcMap, ArcToolbox™, and ArcScene, and can host a variety of Interface
Type inheritance defines specialized classes of objects that share
properties and methods with the superclass and have additional abstract class abstract class
reference
abstract class IRowBuffer
IRowBuffer RowBuffer
Composition properties and methods. Note that interfaces in superclasses are not
available in ArcInfo™, ArcEditor™, and extension products such as Spatial Analyst, Geostatistical Analyst, 3D Analyst™, and coclass duplicated in subclasses. RowBuffer
Instantiation specifies that one object from one class has a method with
ArcView™ to software developers. others. which it creates an object from another class. Chapter 11 Chapter 12 Chapter 13 IRow
Composition is a relationship in which objects from the "whole" class IRowBuffer Row
class Editor Network IRowEvents
This object model diagram shows the ArcGIS subsystems and their components that control the lifetime of objects from the "part" class.
coclass coclass
Raster coclass IRow
IRowEvents Row
IValidate
An N-ary association specifies that more than two classes are
Copyright © 2001 ESRI. All right reserved. ESRI, ArcView, and the coordinate all geographic data management. These are the ArcObjects components Association 1..* Multiplicity
associated. A diamond is placed at the intersection of the association
branches.
IValidate
IFeature
ESRI globe logo are trademarks of ESRI, registered in the United Editor Network
States and certain other countries; registration is pending in the documented in volume two of Exploring ArcObjects. A multiplicity is a constraint on the number of objects that can be class class
Raster class IFeatureBuffer
IFeatureDraw
Special Interfaces associated with another object. Association and composition relationships
European Community. ArcGIS, ArcObjects, ArcCatalog, ArcScene, TM have multiplicities on both sides. This is the notation for multiplicities:
IFeatureEdit Feature
(Optional) represents interfaces that are inherited by some subclasses but not all.
You will find updates to ArcObjects developer resources at IRow

Exploring ArcObjects • Volume 2 • Geographic data management


ArcInfo, ArcEditor, ArcToolbox, 3D Analyst, and ArcMap are 1 - One and only one (if none shown, "1" is implied) IFeature
The subclasses list the optional interfaces they implement. Editor Network Raster IFeatureBuffer Feature IRowBuffer
trademarks of ESRI and www.esri.com is a service mark of ESRI. 0..1 - Zero or one
abstract class abstract class abstract class IRowEvents
www.esri.com/arcobjectsonline. (Instance) represents interfaces that are only on specific instances of the class.
(<classname>) indicates the name of the helper class required to support this
M..N - From M to N (positive integers)
* or 0..* - From zero to any positive integer
IFeatureDraw
IFeatureEdit IValidate
1..* - From one to any positive integer
event interface in Visual Basic.

IGeoDataset
IDatabaseCompact (optional) IRasterCatalogTable Raster-
IWorkspaceFactory
IDatabaseConnectionInfo (optional) CatalogTable
IWorkspaceHelper IConnectionPointLayer
IWorkspaceFactory2 Workspace- Workspace- IDataset
IDataLayer
A name object identifies and locates a database or map object IDatasetContainer
Factory
A workspace factory is a dispenser
of workspaces and allows a client
A workspace helper holds a
back-reference from a workspace
extension to a workspace
Helper
A workspace extension
extends the functionality
IName
IPersist
IPersistStream
Name
and supports methods to instantiate the actual object IFeatureWorkspace
IFeatureWorkspaceAnno (optional)
IFeatureWorkspaceManage
IFeatureWorkspaceSchemaEdit
The ArcInfoWorkspaceFactory is the
entry point to access the geodatabase
for ArcInfo coverages and tables IName A raster workspace factory can
RasterLayer
IAttributeTable
A raster catalog layer is a
special type of layer used to
display raster catalogs
IDataLayer2
IDisplayAdmin
IGeoDataset
IIdentify
to connect to a workspace IClass
Raster-
of a workspace The dataset name objects identify and IGeodatabaseRelease (optional) IWorkspaceFactory ArcInfo- Name create raster workspaces IConnectionPointContainer
ILayer
IWorkspaceExtension ISpatialCacheManager IWorkspaceFactory2 ILayerDrawingProperties Catalog-
IWorkspaceExtensionControl Workspace- locate datasets within a workspace
ISQLSyntax
Workspace- IDataLayer
ILayerEffects A raster catalog table is a
ArcInfo- OLEDB- Extension Workspace Factory IDataLayer2
ILayerEvents Layer special type of table used to
Workspace- Workspace-
ITransactions (optional)
ISupportErrorInfo Raster- IGxObjectFilter GxFilter- IDataset
ILayerExtensions
A workspace is a ITransactionsOptions (optional) IDisplayAdmin A raster layer display multiple raster
Factory Factory IWorkspace
IWorkspaceFactory
Workspace- Raster- IDisplayRelationshipClass combines raster data
ILayerInfo
datasets as a single entity
container of spatial and 0..1 IArcInfoWorkspace is used IWorkspaceFactory2 GxFilterRasterDatasets filters all non-
IDatasetName
IWorkspaceConfiguration (optional) IDataset Factory Datasets IDisplayTable and instructions to
ILayerPosition
ILegendInfo
nonspatial datasets such IWorkspaceDomains (optional) IDatasetAnalyze (optional) to create new coverages or IWorkspaceName raster datasets out from the GxBrowser IGeoDataset
A workspace name specifies IMetadata Dataset- IWorkspaceDomains2 (optional) Workspace- visualize, or render, IPersistStream
Cad-
Workspace-
Factory
Shapefile-
Workspace-
Factory
as feature classes, raster
datasets, and tables Workspace and name IWorkspaceName
IWorkspaceName2 Workspace-
Name
a workspace object and can
be used to instantiate it
IMetadataEdit
INativeTypeInfo
ISQLPrivilege
Name IWorkspaceEdit
IWorkspaceEvents
IWorkspaceExtensionManager (optional)
IDatasetEdit
IDatasetEditInfo
ISchemaLock (optional)
IVersionedObject
Dataset INFO tables
IArcInfoWorkspace
IDatabaseCompact (optional)
Name
IDataset
IRasterWorkspace Raster- A raster workspace can open
IGeoReference
IIdentify

ILayerDrawingProperties
ILayer
this data IRasterCatalogLayer
IClone
IColorSymbol
IWorkspaceProperties (optional) IVersionedObject2 IDatabaseConnectionInfo (optional) IRasterWorkspace2
Workspace ILayerEffects RasterLayer * IFillSymbol
IDatabaseCompact (optional) IWorkspaceSpatialReferenceInfo IDataset ISupportErrorInfo and create raster datasets ILayerEvents IIdentifyObj A raster identify object IMapLevel ColorSymbol
IDatasetContainer
IDatabaseConnectionInfo (optional)
IFeatureWorkspace
IWorkspace ILayerExtensions IRasterIdentifyObj Raster- allows identification of
IPersistStream
IMS- IDataset
IDatasetFileNameStat IModelInfo IFeatureWorkspaceAnno (optional)
ILayerFields
IdentifyObj
IPropertySupport
Workspace- IDatasetContainer ILayerInfo individual raster pixels in ISymbol
CadDrawing- IRasterDatasetName Raster- IObjectClassName IFeatureWorkspaceManage
Factory IFeatureWorkspace
* Name DatasetName ISupportErrorInfo
TableName IVersion IEnumConflictClass
A conflict class enumerator
IFeatureWorkspaceSchemaEdit
IDatasetName
Dataset-
IDataset
IDatasetAnalyze
ILayerPosition a dataset
IFeatureWorkspaceAnno (optional) Versioned- Enum-

IRemoteDatabase- Sde-
IFeatureWorkspaceManage
IFeatureWorkspaceSchemaEdit
IGeodatabaseRelease (optional)
IDomain
ISchemaLock
Domain
ITableName IVersionEdit
IVersionedWorkspace Workspace ConflictClass
returns all classes containing
conflicts after performing a
reconcile
IGeodatabaseRelease (optional)
ISpatialCacheManager
ISQLSyntax
Workspace
IMetadata
IMetadataEdit Name IDatasetFileStat
IGeoDataset
IGeoDatasetSchemaEdit
RasterDataset A raster is a dynamic, in-
memory representation of
ILegendInfo
IObjectClass
IPersistStream
IRasterLayer
*
A raster renderer is an abstract class A color symbol
ISpatialCacheManager IFeatureDatasetName IRelationshipClassName ITransactions (optional) A raster dataset represents an IMetadata pixels that derives from a IRelationshipClassCollection that provides the basic tools for raster object specifies a
WorkspaceFactory Workspace- A domain is used to specify the Feature- Relationship- Raster-
ISetDefaultConnectionInfo
ISetDefaultConnectionInfo2 Factory
ISQLSyntax
ITransactions (optional)
ITransactionsOptions (optional)
IWorkspace
Workspace permissible values that a field in an
object class may take
DatasetName ClassName Object-
ClassName
A versioned workspace supports
multiuser editing and multiple Versioning ITransactionsOptions (optional)
IWorkspace
IWorkspaceConfiguration (optional)
IWorkspaceDomains (optional)
existing dataset stored on disk
or in a database in a particular
raster format
IMetadataEdit
INativeTypeInfo
IRasterBandCollection
IRasterDataset
Dataset raster data source on disk IRelationshipClassCollectionEdit
ITable
ITableFields
ITableSelection
*
1..*
rendering operations color to be displayed
by a raster renderer

ILocalDatabaseCompact Access-
Workspace-
IWorkspaceConfiguration (optional)
IWorkspaceDomains (optional)
IWorkspaceDomains2 (optional) IClone
Coded-
IGeometricNetworkName Geometric-
representations of features classes and
tables in a relational database system IClass
IConflictClass
ITable Table
IWorkspaceDomains2 (optional)
IWorkspaceEdit
IWorkspaceEvents
ICoverageName
IDatasetNameFileStat
IFeatureDatasetName
Coverage-
Name
IRasterPyramid
ISupportErrorInfo
ITemporaryDataset
IGeoDataset
IRaster
IRasterAnalysisProps Raster
IDisplayAdmin
IIdentify
ILegendInfo
IPersistStream
Raster-
Renderer
RasterRenderer
ICodedValueDomain Network- TinName IWorkspaceExtensionManager (optional) INativeTypeInfo Raster

Raster
IWorkspaceEdit IWorldFileExport IRasterDisplayProps
Factory IWorkspaceEvents IPersist ValueDomain IFeature-
IEnumVersionInfo
Enum-
ITableCapabilities
IWorkspaceProperties (optional)
IRasterBandCollection A stretch renderer stretches the values
IWorkspaceExtensionManager (optional)
Name ClassName Feature- IVersionedTable
IWorkspaceSpatialReferenceInfo IDatasetName
IRasterDefaultProps IRasterRenderer
from the dataset along a color ramp
A version information enumerator VersionInfo IRasterProps
IWorkspaceProperties (optional) A coded-value domain is used ClassName IDatasetNameFileStat
IWorkspaceSpatialReferenceInfo to specify a set of permissible
values that a field may take
contains available versions for
obtaining properties ArcInfo coverage A CoverageName identifies and
locates a dataset object and
supports methods to instantiate
IMetadata
IMetadataEdit
IName
Raster-
Dataset-
Name
ISupportErrorInfo

IClone IDifferenceCursor INativeTypeInfo


IRangeDomain Range- Difference- the actual named object IPersistStream RasterStretch-
IRasterClassifyColorRampRenderer RasterClassify- IRasterStretch
IPersist Domain Cursor IRasterDatasetName IEnumDataset IRasterClassifyUIProperties IRasterStretchColorRampRenderer
ColorRamp-
IVersionInfo
Coverage- IEnumRasterBand ColorRamp- IRasterRendererClassInfo
ICoverageFeatureClassName RasterBands IRasterDataExclusion
Renderer Renderer
A range domain is used to specify VersionInfo * IDatasetNameFileStat
Feature- A raster dataset name IRasterRendererClassInfo
the legal minimum and maximum IDataset IFeatureClassName
IWorkspaceProperty
Workspace- values that a field may have ITableSort A table sort controls the order Version information contains read-only IDatasetAnalyze (optional) INativeTypeInfo ClassName maintains name and other The raster bands object allows a The pixel block is a generic
A difference cursor Dataset information for a raster A classify renderer divides the data
Property TableSort in which rows are returned information to describe version properties IDatasetEdit developer to easily enumerate container for a pixel array
values for a dataset into classes and
IRasterUniqueValueRenderer RasterUnique-
A workspace property from a table or feature class IVersionManager returns all the differences ICoverage provides IDatasetEditInfo dataset through a set of raster bands IRasterRendererClassInfo
IVersionManagerEvents Version- between two versions ISchemaLock (optional)
that can be read from any
assigns each class to a specific color Value-
provides information information about raster or raster band
about a workspace A property set is a generic class Manager based on a difference type ArcInfo coverages and
A CoverageFeatureClassName identifies and locates Renderer
a feature class in a coverage and is used for A unique value renderer displays each unique
1..* 0..* that is used to hold a set of IConflictDisplay The conflicts processing operations IClass IRasterRGBRenderer
Conflicts- obtaining some basic properties of the feature class IDataset IPixelBlock IRasterStretch RasterRGB- value in the dataset using a different color
IDataset IClone properties for anything IConflictsWindow window provides A raster band represents
IGeoDataset Renderer
IConfigurationKeyword
Configuration- IDatasetAnalyze (optional) IPersist IConflictsWindow2 Window access to the editor The version manager provides a ICoverage a single band of a raster IMetadata PixelBlock
IDatasetEdit Dataset IPersistStream PropertySet IExtension
conflicts window dataset on disk IMetadataEdit IRasterGeometryProc Raster-

Geodatabase
ICoverage2 An RGB renderer compositely draws three
Keyword IDatasetEditInfo IPropertySet user interface to create and manage
IFeatureDataset Feature- INativeTypeInfo Geometry-
A configuration keyword specifies a set of ISchemaLock (optional) IPropertySet2 version properties bands of a raster dataset, one to each of the
INetworkCollection Dataset IObjectClass
Proc
storage parameters in an ArcSDE database
*
Dataset IFeatureClassContainer
IRelationshipClassContainer The ArcInfoItems object is used to
manage the item set, or collection
IRasterBand
IRasterDataset
IRasterProps
RasterBand
RasterBand
red, green, and blue channels of the display A raster geometry proc can be used to perform
geometric operations, such as flip, mirror, rotate,
and polynomial warping, on a raster
IConfigurationParameter of items in an INFO table IRasterPyramid IRasterCursor
Configuration- IArcInfoTable A raster band name IRasterTable
RasterCursor IRasterEncoder
IClass IRasterTransaction ISupportErrorInfo IRasterPicture
A configuration parameter specifies a Parameter Table maintains name and IRawPixels SidEncoder IRasterSdeConnection
The IArcInfoTable interface is used ITable
other information for ISupportErrorInfo
A raster cursor is a mechanism for iterating IRasterSdeServerOperation Raster- RasterPicture
physical storage parameter for data to access and manage the items in ITableCapabilities through all of the pixel blocks in a raster
created in an ArcSDE database
IQueryDef An enumeration of IArcInfoItems a raster band ITable The Sid encoder compresses a IRasterSdeStorage SdeLoader
an INFO table ISupportErrorInfo
QueryDef IEnumIDs IDs represents a set IArcInfoItemsEdit
ArcInfoItems raster dataset into MrSID format
A query definition represents EnumIDs of object identifiers A table is a collection of rows with
IGeodataSchemaEdit
IGeoDataset a database query on one or attributes stored in columns IDatasetName IRasterColormap
GeoDataset more tables or feature classes
ICoverageFeatureClass IMetadata Raster- A raster colormap
ICoverageFeatureClass2 A raster picture is a lightweight
IFeatureClass Feature- 1..*
IMetadataEdit RasterBand- Colormap provides access to A raster defaults environment allows the A raster SDE loader
object that can be used to view some
A geodataset is a type of dataset The ICoverageFeatureClass IFeatureClassLoad
IName
Name user to customize raster default behavior creates and loads raster
Class INativeTypeInfo the colormap of a raster formats in a simple manner
that stores geographic data
Query, ISelectionSet
ISelectionSet2
SelectionSet
IClass
ITable
ITableCapabilities
Table
interface provides information
on an individual feature class of
an ArcInfo coverage
IFeatureClassWrite
IGeoDataset
INetworkClass
IArcInfoItem
IArcInfoItemEdit
ArcInfoItem
IPersistStream
IRasterBandName
raster band
IFormatData
data into an SDE database

Raster-
IDatasetContainer
IFeatureDataset
INetworkCollection
Feature- cursor, A relationship class represents
relationships through
IClone
IFields
IFields2 Fields
IClone
IIndexes
IIndexesEdit
Indexes The ArcInfoItem object represents a
IDatasetName
IName
IPersistStream SDERaster-
IRasterHistogram
Raster-
Histogram A raster histogram
IRasterDefaultsEnv
IRasterDefaultsEnv2
Raster-
DefaultsEnv
IFormatList
IFormatTest
FormatList
IPnt
IRasterRendererMaker
Renderer-
MakerDefault
Dataset
INetworkCollection2
IFeatureClassContainer
IRelationshipClassContainer
selection A selection set references a set
of rows by a selection criteria IDataset
embedded foreign keys
IFieldsEdit
IPersist
IPersist field of the INFO table, and is used to
create and manage individual fields
ISDERasterTableName
ISQLPrivilege
TableName provides access to the
histogram of a raster band
IRasterFormatInfo
DblPnt

Relationship A format list can


IRowBuffer IRelationshipClass 1..* 1..*
IRasterStatistics
Raster- identify all supported The raster renderer maker
A feature dataset stores INativeTypeInfo Raster- RowBuffer IRelationshipClass2 Class IClone IClone An SDE raster table name Raster- FormatInfo default object determines
IRelClassSchemaEdit IField IIndex A raster statistics object provides Raster format information provides raster formats and
vector data in feature classes IRasterDataset
Dataset A query filter restricts the set of
IFieldEdit Field IIndexEdit
Index maintains name and other Statistics information about a raster format provide information A double point is a support the renderer used to
IRasterBandCollection rows retrieved from a table access to pixel statistics from a
IRasterPyramid
See chapter 13, A row buffer is used for IModelInfo information for an SDE raster about them object that represents a point display a raster by default
'Integrating raster 1..* raster band specific to the user interface
data loading with cursors IPersist

13
ITemporaryDataset data' IObjectLoaderUI
IObjectLoaderUIProperties Object-
IClone 0..1 LoaderUI

Row, IRelatedObjectEvents
IRow
IPersistStream
IQueryFilter
IQueryFilter2
QueryFilter
Table, Attributed-
An attributed relationship
class is a table that stores
relationships. Many-to-
IClone
IGeometryDef
IGeometryDefEdit
Geometry-
Def

object,
IRowChanges
IRowCompare
IRowEdit
IRowEvents
Row object class, Relationship-
Class
many relationships can be
stored in this class
IPersist
The object loader user interface is the
same as that of the ArcMap object loader
A graph is a set of
topologically related
feature
IrowSubtypes
ISupportErrorInfo
IValidate
ISpatialFilter
SpatialFilter feature class Each table has a set of fields that describe the
data format of attributes. If a field represents a
A class helper is an intermediate object
IClassHelper
ClassHelper
IFieldChecker
feature classes An object class stores used to avoid circular references between Field-
geometry, GeometryDef specifies its particulars.
A row is a record in a table. All rows nongeographic entities
An index can be optionally specified on a field
an object class and a class extension Checker
A field checker will find potential
IDataset in a table have the same set of fields
IGraph problems in field names
IFeatureClassContainer
Graph IObject IClassSchemaEdit
A spatial filter is a query filter that 0..1
IRowSubtypes IClassSchemaEdit2
Object includes spatial and attribute constraints IEnumFieldError
A geometric network is a type of
graph that is uniquely associated
with a logical network that An object is a row in a ICursor
IModelInfo
IObjectClass
IObjectClassInfo
IObjectClassInfo2
ObjectClass
IRule

*
Rule Rules are associated with feature
classes or object classes and are
IClassExtension
Class-
Extension
Class extension A field error enumerator stores the
problems found by a field checker
Enum-
FieldError
IDatabaseCompact (optional)
IDatasetEdit represents network topology geodatabase table Cursor A cursor can iterate over ISubtypes used to validate features or objects A class extension is a way IDatabaseConnectionInfo (optional)
IGeoDataset
IGeometricNetwork
IGeometricNetworkConnectivity Geometric-
a set of rows in a table
or insert new rows
IValidation
IValidation2 Rule 0..1
for a programmer to add
class-wide customization, IFieldError
IDataset
IDatasetContainer
IFeatureWorkspace
IGeometricNetworkErrorDetection
Network IFeature
IConfirmSendRelatedObjectEvents (optional)
such as a custom form for FieldError IFeatureWorkspaceAnno (optional)
IFeatureWorkspaceManage
IMetadata IFeatureBuffer data inspection
IConnectivityRule IRelationshipRule IObjectClassExtension A field error provides information IFeatureWorkspaceSchemaEdit IExtension
IMetadataEdit IFeatureChanges Connectivity- Relationship- IExtensionAccelerators
INativeTypeInfo IFeatureDraw Feature IObjectInspector (optional)
ObjectClass- about a field problem IGeodatabaseRelease (optional) Workspace Extension
ISchemaLock A feature is a geographic IFeatureEdit
Rule Rule IObjectClassDescription (optional) ISpatialCacheManager IExtensionConfig IFlagDisplay A flag display maintains
object with a geometric shape IFeatureEvents
IFeatureCursor
Feature- IObjectClassEvents (optional) Extension ISQLSyntax IFeatureDraw
FlagDisplay the starting point for
A feature cursor IObjectClassValidation (optional) ITransactions (optional) See chapter 8,
IFeatureSimplify
Cursor references a set IRelatedObjectClassEvents (optional) ITransactionsOptions (optional) 'Accessing the traces and path findings
IRelatedObjectClassEvents2 (optional) IWorkspace Geodatabase' 0..*
Geometric network of features A feature class is a type of
object class that stores
geographic features IAttributeRule
Attribute- A relationship
An object loader appends
data to existing feature
IWorkspaceConfiguration (optional)
IWorkspaceDomains (optional)
IWorkspaceDomains2 (optional)
IDataset
IDatasetAnalyze (optional)
IDatasetEdit
Dataset
See chapter 8,
'Accessing the
rule constrains classes or tables IWorkspaceEdit IDatasetEditInfo
A feature data converter lets you Geodatabase'
IAnnotationFeature Rule the cardinality of IFeatureClassExtension IWorkspaceEvents ISchemaLock (optional)
IJunctionFlagDisplay
Annotation- IEdgeConnectivityRule Edge- IFeatureClassCreation (optional) Feature- convert data between geodatabases, IWorkspaceExtensionManager (optional) Junction- A junction flag display
IFeatureClass a relationship shapefiles, and coverages
Connectivity- IWorkspaceProperties (optional)

INetworkFeature
IDimensionFeature
Dimension-
Feature
Feature IFeatureClassLoad (optional)
IFeatureClassWrite
IGeoDataset
Feature-
Class Rule
IFeatureClassDescription (optional)
IFeatureClassDraw (optional)
IFeatureClassEdit (optional)
INetworkClassDescription (optional)
Class-
Extension
An annotation feature
IFeatureProgress
IObjectLoader Object-
IWorkspaceSpatialReferenceInfo
NetworkAnalystExt IExtension
FlagDisplay begins a trace or path
finding at a junction

INetworkFeatureEvents Network- Network features participate in a


An annotation feature INetworkClass class extension manages ISupportErrorInfo Loader INetworkAnalysisExt
geometric network. Each feature is An attribute rule is 0..1 IFeatureDataConverter A network analysis IEdgeFlagDisplay
Feature A dimension feature persists persists and draws the drawing of IFeatureDataConverter2 FeatureData- A network element class INetworkAnalysisExtBarriers
EdgeFlag-
associated with one or many the application of an
annotation features
INetworkWorkspace
Network- INetElementClass provides access to the INetworkAnalysisExtFlags Network- extension manages ISupportErrorInfo
elements in a logical network and draws dimensions in a annotation in a geodatabase
attribute domain to
IFeatureProgress Converter INetworkWorkspace2 NetElement- INetworkAnalysisExtResultColor Display
IJunctionConnectivityRule Junction- ISupportErrorInfo Workspace IDs of the object classes INetworkAnalysisExtResults AnalysisExt the parameters
geodatabase
IJunctionConnectivityRule2 an attribute Class found within the
Connectivity-
Rule
IDimensionClassExtension Dimension-
Class-
IAnnoClass
IAnnoClassAdmin
IAnnoClassAdmin2
Annotation-
FeatureClass-
Data converter IEnumInvalidObject
EnumInvalid-
A network workspace lets
you open and create a logical
network
participating in the
network
INetworkAnalysisExtWeightFilter
INetworkAnalysisExtWeights
ISupportErrorInfo
Utility Network
Analysis toolbar
An edge flag display begins a trace
or path finding along an edge
Feature elements encapsulate the
geometry of connection points on
complex junction features
IEdgeFeature

Edge features
EdgeFeature IClone
Dimension-
Extension Extension An object class description
helps automate the creation
An invalid object enumerator
Object INetAttributes
INetAttributesEdit
INetElements
Network
IJunctionFeature
Junction-
Feature
represent the lines in
a geometric network.
IDimensionShape
IPersist
IPersistStream
ITransform2D
Shape A dimension shape
stores the geometry
IRelationship
*
Relationship Connectivity rules constrain which
network features can be connected A dimension class extension
manages the drawing of
IObjectClassDescription
ObjectClass-
of new object classes
represents a set of objects that
failed a data conversion process The Network object is the logical
INetSchema
INetSchemaEdit
INetTopology
Network IForwardStar
ForwardStar
A forward star returns all
the adjacent elements given
a junction and edge element.
ITraceTasks
IUtilityNetworkAnalysisExt UtilityNetwork-
AnalysisExt
INetElementBarriers
INetElementBarriers2 NetElement-
Barriers
Network element
barriers create barriers
of individual elements
Junction features represent the for a dimension dimension features IDimensionStyles
Dimension- Description network associated with a INetTopologyEdit
nodes in a geometric network
Relationship A relationship defines a IPersistStream geometric network. It represents INetwork
It is used extensively when
IFeatureElement Feature- Styles A feature class description IInvalidObjectInfo INetworkUpdate writing solvers A utility network analysis extension
general association between InvalidObject- the linear connectivity among a set
IFeatureElementEdit Element IComplexEdgeFeature
Complex- IDimensionGraphic two objects or features helps automate the creation
Info of network features
IVersionedObject2 provides trace and path finding
IComplexNetworkFeature Dimension- of new feature classes capabilities to a Utility Network ISelectionSetBarriers
EdgeFeature Graphic The dimension styles object 1..* IFeatureClassDescription Analyst toolbar Selection- Selection set barriers
ISimpleJunctionFeature Simple- ISimpleEdgeFeature manages a collection of FeatureClass- Invalid object information explains create barriers from
ISimpleNetworkFeature ISimpleNetworkFeature Simple- dimension style objects why data could not be loaded SetBarriers selected sets of features
Junction- Description IEnumNetEID

Network
EdgeFeature IEnumNetEIDBuilder EnumNet-
A simple junction Feature Attributed- 0..* IUtilityNetwork IStreetNetwork EIDArray
feature has one A complex junction A dimension graphic Relationship IClone A network class description Utility- Street-
junction element in
the logical network IComplexJunctionFeature
IComplexNetworkFeature
Complex-
feature has one to
many junction and A simple edge feature has one
A complex edge
feature has one to
many edge
draws dimensions
Simple- 0..*
IDimensionStyle
IDimensionStyleDisplay
IDimensionStyleText
Dimension-
Style INetworkClassDescription Network-
helps automate the creation
of new network feature
Network Network
ITraceTask
0..* TraceTask
IFeatureConnect Junction- edge elements in edge element in the logical elements in the Relationship IPersistStream Class- classes ITraceTaskResults
IFeatureSnap Feature the logical network network INetSolver TraceTask A trace task executes a defined
logical network Description INetSolverWeights
An attributed relationship stores A simple relationship represents NetSolver trace or path-finding routine
attributes on a relationship and also
represents many-to-many relationships
one-to-one or one-to-many
relationships without attributes
A dimension style defines
properties for controlling the
symbology of dimensions IDataset
A utility network is a network where
flow is directed. You can establish
flow direction on this type of network
A street network is a
network where flow
is undirected
A network solver defines the trace
environment before executing one
NetSolver
IDatasetAnalyze (optional) of the trace methods from the trace
IDatasetEdit Dataset flow solver
A route measure event geoprocessor IDatasetEditInfo ITracePathTaskResults Find- ITracePathTaskResults FindPath- The find path upstream task
ISchemaLock (optional) INetworkLoader Accumulation- Upstream-
facilitates event overlay, dissolve, and ISupportErrorInfo finds the optimal path based on
concatenation
INetworkLoader2 Network- A network loader creates a ITraceFlowSolver TraceFlow- The find accumulation task Task Task elements flowing upstream
INetworkLoaderProgress
IDataset IClass ILocator INetworkLoaderProps
Loader geometric network along with ITraceFlowSolver2 Solver finds the accumulated cost of
Relationship- its logical network
IMetadata
IMetadataEdit
GxObject,
Name,
ISynchronizationHelper FGDC- The FGDC synchronization helper
helps translate dataset properties into
IRelationshipClass
IRelationshipClass2 Class On-the-fly table joins IDataset
ITable
Table IRouteMeasure-
EventGeoprocessor
ISupportErrorInfo
Route-
Measure-
IClass
ITable
ITableCapabilities
Table
ILocatorFullName
Locator ISupportErrorInfo
A trace flow solver performs tracing
operations on a logical network
an upstream trace
Find- Trace- The trace downstream task
finds all elements that can be
Synchroni- metadata properties
ISelectionSet A locator knows how to transform
The find ancestors task finds the Ancestors- Downstream-
Dataset, TIN, zationHelper ISelectionSet2
SelectionSet Geoprocessor a spatial description into a shape A network weight is used to reached in a downstream
Task Task
Geometric-
Network, Memory- Dynamic IRouteLocator Route-
INetWeight
INetWeightEdit
NetWeight limit tracing in a network and
denote the cost of tracing NetFlag
common ancestors in an upstream
trace from two or more flags
flow from the current flags

other objects Relationship- through a network element

Metadata Class segmentation IClassSchemaEdit


IClassSchemaEdit2
IModelInfo
IObjectClass
A route locator knows how to
transform a route location into a shape
Measure-
Locator
INetFlag
NetFlag A network flag is a location
on a network. It is used as
The find connected task finds
all elements that can be
Find-
Connected-
ITracePathTaskResults
TracePath-
Task
The trace path task
finds the optimal path
IPersistStreamInit IObjectClassInfo ObjectClass input for a network solver reached from the current flags
Task between flag displays
IFeatureClass (optional) INetWeightAssociation A network weight association
IPropertySet Xml- IDataset A memory relationship class is IObjectClass
IObjectClassInfo2
INetWeightAssociationEdit NetWeight-
ISupportErrorInfo
PropertySet IDatasetAnalyze (optional) RelQuery- ISubtypes
Route- Association
defines how an object class
IXmlPropertySet IDatasetEdit Dataset a type of simple relationship QueryFilter IRelQueryTable
Table IValidation participates in a weight The trace upstream task
IXmlPropertySet2 IDatasetEditInfo class where the origin and IQueryFilter IRelQueryTableInfo
IValidation2 Measure- Find- Trace-
IQueryFilter2 IRelQueryTableManage The find disconnected task finds finds all elements that can
ISchemaLock (optional) destination classes can be from IVirtualTable Locator IEdgeFlag Disconnected- Upstream-
A route measure locator is a all elements that cannot be be reached in an upstream
An XML property set stores the IXmlPropertySetEdit Xml- IName different workspaces
specific kind of route locator IJunctionFlag JunctionFlag EdgeFlag reached from the current flags
Task Task flow from the current flags
metadata for a dataset PropertySet- Name IFeatureClass
A RelQueryTable is a that requires a route identifier
Edit IClass table with rows and
IFeatureClassLoad (optional) Feature- and one or two measure values INetElementDescription
A network element
XML property set edit is an alternative IMemoryRelationship- IFeatureClassWrite
ITable
Table Memory-
ISpatialFilter
columns derived from Route event properties Class INetElementDescriptionEdit NetElement- description is a container to The find loops task finds
to using an XML property set for ITableCapabilities
ClassFactory
SpatialFilter describe the characteristics
IGeoDataset
Description hold information about a elements that can be reached
FindLoops-
INetworkClass
changing metadata Relationship- a joined pair of tables
of an event table network element to be used in Task
A junction flag is a An edge flag is a network flag that occurs from more than one direction
IDatasetName ClassFactory calls in INetTopologyEdit network flag that somewhere along an edge. The position is
DatasetName occurs at a junction measured as a percent along the edge
IEventSourceErrors *
IClone IRouteEventSource RouteEvent-
IClassSchemaEdit
ICursor IPersistStream RouteEvent- Source *
IClassSchemaEdit2 A memory relationship class *
IModelInfo Cursor IRelQueryTableFactory
RelQuery-
IRouteEvent- Properties
factory manages the memory

8 12
Properties
IObjectClass
IObjectClassInfo ObjectClass IFeatureClassName
relationship classes that exist TableFactory ISupportErrorInfo

IObjectClassInfo2 IPersistStream XYEvent- in the application


A route event source
ISubtypes ISupportErrorInfo SourceName IRouteLocation Route-
IValidation serves an event table as a ISupportErrorInfo
IValidation2
IXYEventSourceName
A RelQueryTableFactory Measure-
dynamic feature class
IFeatureCursor (optional) manages the RelQueryTables
IName
IRouteMeasure- Route- A route location describes either a precise Location
RelQuery- that exist in the application Name PointProperties
MeasurePoint- location along a route or a portion of a
An XYEventSourceName Cursor
IFeatureClass represents an XYEventSource. An
Properties route between a from- and to-measure
IFeatureClassLoad (optional) Feature- XYEventSource can be created
IFeatureClassWrite Class A RelQueryCursor is a cursor that
An XYEventProperties provides
IGeoDataset
from an XYEventSourceName IRouteMeasureLine- Route- IRouteMeasurePointLocation Route-
references the rows in a RelQueryTable
information about an INetworkClass IDatasetName Properties
MeasureLine- IName Measure-
XYEventSource IFeature (optional) DatasetName PointLocation

IXYEventProperties
XY events IXYEventSource
IFeatureBuffer (optional)
IFeatureDraw (optional)
IObject
RelQueryRow
Properties Name

XYEvent- XYEvent- IRow IRouteMeasureLineLocation Route-


Properties Source An XYEventSource is a point feature class IRowBuffer A RelQueryRow is a record A locator name refers to a locator Measure-
*

Editing in
with features dynamically generated from in a RelQueryTable LineLocation
coordinates in a table
IRelQueryTableName IRelationshipClassName ILocatorName
RelQuery- Relationship- IDatasetName
TableName ClassName LocatorName DatasetName
A RelQueryTable name is an object that
IClone XYEvent2- represents a RelQueryTable. A RelQueryTable
IPersistStream
ISupportErrorInfo
Fields- An XYEvent2FieldsProperties specifies the fields needed to generate geometry for can be created from a RelQueryTable name
A route measure locator name
IXYEvent2FieldsProperties Properties refers to a route measure locator
an XYEventSource where at least two fields are required A route event
IMemoryRelationshipClassName Memory- source name object
Route- TM

ArcMap
IRouteLocatorName IFeatureClassName
Relationship- refers to a route
IPersistStream
Measure- IPersistStream RouteEvent- event source
A memory relationship class name is an object that represents ISupportErrorInfo
ClassName LocatorName IRouteEventSourceName SourceName Snap agents aid in
a memory relationship class. A memory relationship class can ISupportErrorInfo positioning geometries
be created from a memory relationship class name

IClone
Transformation Edit tasks perform a
specific operation
by snapping them to
other geometries
IPersistStream using the edit sketch 1..*
IAffineTransformation2D Transformation
A geometry environment is a IAffineTransformation2D2 AffineTrans- ISupportErrorInfo Transformations are used by 1..*
ISnapAgent
singleton object that stores global IClone ITransformation spatial reference and geometry
ISupportErrorInfo
formation2D transformation objects
IEditTask IActiveViewEvents SnapAgent
variables used by other geometry IClone EditTask IEditEvents
ITransformation
objects. It lets you create IGeometry IEditEvents2
ITransform2D
Geometry IEditLayers

Spatial reference
geometry objects from different IEditor
IConstructAngle ISupportErrorInfo IGeoTransformation
kinds of input IGeometryCollection A geometry collection is a collection A 2D affine transformation Geo- IEditProperties
IConstructDomainExtent A feature is associated with one of Geometry-
IEncode3DProperties these types of geometry: points, Collection
of part geometries used to construct defines a two-dimensional affine The geotransformation class Transformation The Editor gives ArcMap IEditSketch
IEditSketch2
Editor IFeatureSnapAgent
Geometry- a single high-level geometry feature editing capabilities
IExtrude
IGeometryEnvironment
IGeometryEnvironment2
IGeometryFactory
Environment
multipoints, polylines, or polygons. transformation matrix and is used
to create an arbitrary two-
dimensional transformation
IConstructMultiPatch
IGeometryCollection
3D geometry IClone
specifies the methods used by
all geographic transformations
IExtension
IExtensionAccelerators
IExtensionManager
FeatureSnap Feature snap agents are
a class of snap agents
IClone IHitTest IPersist that help position
IGeometryFactory2 * IPersist The spatial reference is the base for three types of coordinate IPersistStream
IGeometry A point is a zero-dimensional IMAware Grid transformations perform features and the edit
ISupportErrorInfo
ITransform2D
ISupportErrorInfo
Geometry
geometry. Points are defined with IMCollection
IMultiPatch
IClone
IGeometry A triangle fan is a surface
IPersistStream
IESRISpatialReference Spatial-
systems: projected, geogaphic, and unknown
IMolodenskyTransformation Abridged- IGridTransformation
Grid-
accurate coordinate conversions ISnapEnvironment
Editor sketch by snapping

* Geometry x,y coordinate pairs with optional


altitudes, measures, and point IDs.
IPersist
IPersistStream
IPointCollection
MultiPatch
IGeometry2
IGeometryCollection
IMAware
IPointCollection TriangleFan
patch consisting of
triangle surfaces between
two consecutive points
The geographic coordinate
system defines a coordinate
system that describes the
ISpatialReference
ISpatialReference2
ISpatialReferenceInfo
ISupportedErrorInfo
Reference
The unknown coordinate system is used when the
coordinate system is not known or unavailable
The abridged Molodensky transformation uses
three parameters (dX, dY, dZ) to convert between
Molodensky-
Transformation
Transformation
using a grid, or matrix, of
control points held in a file
them to other features

IPointIDAware IPointIDAware positions of features on the


ITransform3D connected around a single geographic coordinate systems (datums) IExtension IEditSketchExtension
IClone
ISupportErrorInfo
central point earth using latitude and The NADCON 1..* EditSketch-
Extension
IConstructGeometryCollection
IArea IConstructMultiPatch IConstructPoint * Point IZAware
IZCollection
ITransform2D
ITriangleFan longitude values
ICoordinateFrameTransformation Coordinate-
transformation is a grid-based Editor extensions are additional Extension
Edit sketch extensions
IEnumGeometry
IGeometry
IGeometry2
IGeometryBag
Geometry-
Bag
IEnvelope
IEnvelope2
IGeometry2
IHitTest
IGeometryCollection
IHitTest
IMAware
IMCollection MultiPatch
IConstructPoint2
IGeometry2
IHitTest
IMAware IConstructMultipoint
A multipatch is a three-
*
IZAware

IGeographicCoordinateSystem
IGeographicCoordinateSystem2 Geographic-
SpatialReference IUnknownCoordinateSystem Unknown-
The coordinate frame transformation object uses seven
parameters (dX, dY, dZ, rX, rY, rZ, dS) to convert
Frame-
Transformation
NADCON-
Transformation
transformation method that
converts geographic
coordinates between the
objects that aid editing
override the default
edit sketch behavior to
IGeometryCollection Envelope IPersist dimensional collection of provide a custom
IMAware IMultiPatch
IPersistStream
IGeometry2 IClone IGeographicCoordinateSystemEdit Coordinate- Coordinate- between geographic coordinate systems (datums) NAD 1927 and the NAD 1983
IRelationalOperator
IPersist IPersist documented with Point IGeometryCollection surface patches; triangle fans,
IGeometry A triangle strip is a IPRJSpatialReference System datums editing experience for
ISpatialIndex IPersistStream IPersistStream 3D geometry IPoint IHitTest triangle strips, and rings IGeometry2 ISRPersistStream IPRJSpatialReference Projected System IAttributeWindow IDigitizerButtons specific feature classes
ITopologicalOperator IPointCollection objects IPointIDAware surface patch consisting of Attribute-
IProximityOperator
IPointIDAware IProximityOperator
IMAware
IMCollection
IGeometryCollection
triangle surfaces between
IProjectedCoordinateSystem
Coordinate IGeocentricTranslation IDigitizerSetup Digitizer-
IRelationalOperator
IRelationalOperator IMAware Triangle- IProjectedCoordinateSystem2 Geocentric- Window Extension
IZAware ITransform3D
ITopologicalOperator
IMultipoint IPointCollection
Strip three consecutive points IProjectedCoordinateSystemEdit System Translation
A geometry bag is a
IZAware
ITransform3D
IPersist IPointIDAware ISRPersistStream The geocentric translation transformation uses three HARN-
IZCollection IPersistStream
heterogeneous collection of IZAware IPointCollection Multipoint ISupportErrorInfo parameters (dX, dY, dZ) to convert between geographic Transformation IConflictDisplay ITopoEditor
ITransform2D IClone A projected coordinate system
points, multipoints, polylines, IPointCollection2 ITriangleStrip IDatum
coordinate systems (datums) IConflictsWindow Conflicts- TopoEditor
IPointIDAware object includes a geographic The attribute window is
and polygons IProximityOperator
IZAware IDatumEdit IConflictsWindow2 Window The digitizer extension allows
IESRI- coordinate system, a the ArcMap editor's
A multipoint is an unordered collection of points. IRelationalOperator SpatialReference Datum projection, a set of projection IClone
ILongitudeRotationTransformation Longitude- the ArcMap editor to work with
ILongitudeRotationTransformationEdit attribute editing dialog box
ICurve
An envelope is the rectangular Features with multipoint geometries represent a set ISpatialIndex IPersistStream parameters, and a linear unit IESRISpatialReference Rotation- The HARN transformation is a highly accurate
a digitizing board and puck
Curve of points that share a common set of attributes
ITopologicalOperator IArea ISpatial- IPersistStream Projection Transformation grid-based transformation method that
A curve is an abstract segment-based bounding box of a geometry defined ITopologicalOperator2 IRing ReferenceInfo IProjection The longitude rotation transformation converts between two
IZAware Ring converts geographic coordinates between the The conflicts window is
geometry. Curves may be single by maximum and minimum ISupportErrorInfo ISupportErrorInfo prime meridians by applying a shift to the longitude values The topological editor extension
IZCollection NAD1983 datum and the HARN the ArcMap Conflict
coordinate and attribute values enables the ArcMap editor to
segments, single paths, a collection of
paths, single rings, or a collection of rings Curve IClone
A ray is an infinite one-dimensional
*
IAngularUnit
A projection object specifies the mathematical IMolodenskyTransformation
Molodensky-
readjustments (used in the United States) Resolution dialog box perform shared geometry editing

Geometry
line defined by an origin point and a IAngularUnitEdit
IGeometry
Ray A datum represents a IClone transformation to convert between geographic
IRay three-dimensional direction of reference system for latitude- Transformation IEditSelectionCache Edit-
IConstructPath IConstructCurve
infinite extension from the origin
IESRISpatialReference AngularUnit and planar coordinates The Molodensky transformation uses three parameters (dX, dY,
IEditSelectionCache2
IPath IGeometry2 longitude coordinates and is IPersistStream Selection- An edit selection cache stores the
Segments are the parametric IPointCollection
Path *
IGeometryCollection
A 3D vector has a specific ISpatialReferenceInfo
dZ) to convert between geographic coordinate systems (datums)
IClone defined by a spheroid and the Cache selection for fast hit testing
curves between two endpoints. ISegmentCollection IHitTest ISupportErrorInfo direction and magnitude, but ISupportErrorInfo
IMAware Vector3D no fixed location. A 3D vector spheroid's position relative to IUnit ICommand
Segments may be linear lines or
IMSegmentation
IVector
IVector3D the center of the earth IPositionVectorTransformation ISnappingWindow Snapping-
IClone A sphere is a three-dimensional can be used to define
true nonlinear circular arcs, IMCollection IGeometry
PositionVector- Command
elliptic arcs, or Bézier curves IPersist ISphere
Sphere surface that is a specified radius directions and axes IClone
Transformation ISpatialReferenceInfo Spatial- The snapping command is the ArcMap editor's
IPersistStream from a central origin point The angular unit specifies the IESRISpatialReference The position vector (Bursa-Wolf) transformation object uses seven
snapping window where snap agent properties are set
A path is a sequence of IPointCollection measurement units used in a IParameter parameters (dX, dY, dZ, rX, rY, rZ, dS) to convert between Reference- IFeatureCache
Feature- A feature cache stores features in
connected segments. A polycurve is an abstract IParameterEdit Parameter Info IFeatureCache2
ICurve2 IPointIDAware
IPolycurve
Polycurve multipart curve
geographic coordinate system IPersistStream geographic coordinate systems (datums)
ISketchOperation Cache memory for a particular spatial
IProximityOperator Paths make up polylines
IPolycurve2 ISpatialRerefenceInfo ISketchOperation2 Sketch- extent.
ISegment
ISegmentID
Segment IProximityOperator ISupportErrorInfo
Operation
A circular arc is part of a The spatial reference info retrieves
circle. It is commonly used
for road curb lines at
ISegmentM
ISegmentZ Segment IArea
IRing *
IRelationalOperator
ISegmentCollection
ISpatialIndex
IClone The parameter can be used to
IClassFactory
ISpatialReferenceFactory
ISpatialReferenceFactory2
Spatial
Reference-
information about a spatial reference object Sketch operations allow edit sketch
modifications to be undone
street intersections Ring ITopologicalOperator
ISupportErrorInfo Environment IObjectInspector
ITopologicalOperator2 IESRISpatialReference
IPersistStream
define and modify the values for ICommand Feature- The feature inspector is the
IZ ISketchTool control inside the attributes dialog
Spheroid specific properties for a projected SketchTool Inspector
ICircularArc
IConstruct-
CircularArc
IConstructLine
ILine
Line
IEllipticArc
IConstruct-
EllipticArc
IBezierCurve
IConstruct-
BezierCurve
*
IZAware
IZCollection
Polycurve ISpatialReferenceInfo
ISpheroid
ISpheroidEdit
ISupportErrorInfo
coordinate system

The spatial reference environment creates predefined spatial


IESRISpatialReference ESRISpatial-
Reference-
Info The sketch tool is the editor's main
ITool box that enables attribute editing

CircularArc ILine2 EllipticArc BezierCurve A ring is a closed path; the tool for creating an edit sketch
IConstruct- reference objects
begin and endpoints are the EditEvents2 enables Visual Basic
CircularArc2
same. Rings make up polygons IClone IClone The ESRI spatial reference info provides methods to import IEditEvents2 developers the opportunity to
IMSegmentation2 IArea
IPolyline IPolygon The spheroid object models the IESRISpatialReference IESRISpatialReference
IClone and export components to and from spatial reference objects EditEvents2 respond to the events grouped
IPolyline2
Polyline IPolygon2
Polygon approximate shape of the earth's surface IPersistStream Prime- ILinearUnit
ICompositeGeoTransformation Composite- under IEditEvents2 fired by the
A line is a straight segment An elliptic arc is part of an A Bézier curve is a IPrimeMeridian
Meridian ILinearUnitEdit LinearUnit IGeoTransformation Geo- Editor object
IPrimeMeridianEdit IPersistStream
between two points. Lines ellipse. It is used for the parametric curve defined IPersistStream
by a set of third-order
ISpatialReferenceInfo ISpatialReferenceInfo
ISupportErrorInfo
Transformation IGeoTransformationOperationset
ISupportErrorInfo
Geo-
are used for straight geometry of a transitional ISupportErrorInfo ISupportErrorInfo
Transformation-

9 11
polynomials through four IUnit ITransformation
constructions, such as a feature such as a highway ramp
road segment or a parcel control points OperationSet

10
boundary A polyline is an ordered collection of paths that can be A polygon is a collection of rings that are partially A prime meridian object
disjoint or connected. Polylines are used to represent ordered by their containment relationship. Polygons specifies the line of zero The composite geotransformation allows you to set up a
The linear unit specifies the transformation path between two datums by defining
the geometry of all linear features are used to represent the geometry of areal features longitude for the coordinates in The geotransformation operation set stores a set
measurement units used in a two or more geotransformation objects and their
a geographic coordinate system. projected coordinate system. of geographic transformation operators (a
associated direction
geotransformation object and its direction)
Diagram key
Types of Classes
ArcObjects is the development platform for ArcGIS Desktop, a suite of GIS An abstract class cannot create new objects; it is a specification for
ESRI® ArcObjects™ is the development software systems: ArcInfo, ArcEditor, and ArcView. These systems serve GIS
instances of subclasses (through type inheritance.)
A coclass can directly create objects by declaring a new object.
Type inheritance
platform for the ArcGIS™ family of applications professionals with a spectrum of geographic data management, spatial editing, and Inbound interface
Outbound interface abstract Instantiation
A class cannot directly create objects, but objects of this class can be
created as a property of another class or instantiated by objects from
This diagram illustrates the implicit type inheritance model in the ArcGIS 8.1
component objects. Software interfaces are not duplicated in the child classes.
class another class.
such as ArcMap™, ArcCatalog™, and cartographic visualization functionality. ® TM The objects to the left show a sample view of type inheritance. The objects below
show a flat view of the objects with their full list of interfaces. The two views are

ESRI ArcGIS 8.1 Object Model


Types of Relationships Chapter 14 Chapter 15 Chapter 16
equivalent, but the type inheritance view gives insight into the structural
ArcScene™. The ArcObjects software The ArcGIS Desktop systems each contain a configuration of applications, such as
Type inheritance Associations represent relationships between classes. They have defined
multiplicities at both ends. 3D Analyst StreetMap Geocoding
composition of the object model.
coclass coclass coclass
components expose the full range of functionality ArcCatalog, ArcMap, ArcToolbox™, and ArcScene, and can host a variety of Type inheritance defines specialized classes of objects that share
properties and methods with the superclass and have additional
IRowBuffer RowBuffer
Interface IRowBuffer
Composition properties and methods. Note that interfaces in superclasses are not
available in ArcInfo™, ArcEditor™, and extension products such as Spatial Analyst, Geostatistical Analyst, 3D Analyst™, and coclass duplicated in subclasses. 3D Analyst
class
StreetMap
class
Geocoding
class
RowBuffer
Instantiation specifies that one object from one class has a method with
ArcView™ to software developers. others. which it creates an object from another class. IRow
Composition is a relationship in which objects from the "whole" class IRowBuffer Row
class 3D Analyst Geocoding IRowEvents
This object model diagram shows some of the extensions created to the ArcGIS control the lifetime of objects from the "part" class. abstract class abstract class IRow
IRowEvents Row
IValidate
An N-ary association specifies that more than two classes are
Copyright © 2001 ESRI. All right reserved. ESRI, ArcView, and the Desktop systems. These are the ArcObjects components documented in Association 1..* Multiplicity
associated. A diamond is placed at the intersection of the association
branches.
IValidate
ESRI globe logo are trademarks of ESRI, registered in the United States IFeature
and certain other countries; registration is pending in the European supplemental electronic chapters of Exploring ArcObjects. A multiplicity is a constraint on the number of objects that can be
IFeatureBuffer
IFeatureDraw
Community. ArcGIS, ArcObjects, ArcCatalog, ArcScene, ArcInfo, Special Interfaces associated with another object. Association and composition relationships
have multiplicities on both sides. This is the notation for multiplicities:
IFeatureEdit Feature
You will find updates to ArcObjects developer resources at TM (Optional) represents interfaces that are inherited by some subclasses but not all. IRow

Exploring ArcObjects • Supplemental extension chapters


ArcEditor, ArcToolbox, 3D Analyst, Street Map USA, and ArcMap are 1 - One and only one (if none shown, "1" is implied) IFeature
The subclasses list the optional interfaces they implement. IFeatureBuffer Feature IRowBuffer
trademarks of ESRI and www.esri.com is a service mark of ESRI. 0..1 - Zero or one
www.esri.com/arcobjectsonline. (Instance) represents interfaces that are only on specific instances of the class.
(<classname>) indicates the name of the helper class required to support this
M..N - From M to N (positive integers)
* or 0..* - From zero to any positive integer
IFeatureDraw
IFeatureEdit
IRowEvents
IValidate
1..* - From one to any positive integer
event interface in Visual Basic.

ArcCatalog extensions
Geocoding object model A locator is an object that can
create geometric descriptions of
IGxDatabase-
Extension GxDatabase-
IGxObject
IGxObjectUI
IGxObjectEdit
GxObject
See Chapter 7,
'Working with the
An attached locator is a copy of a locations from non-spatial Extension Catalog'
See Chapter 7,
locator used to create a dataset
IName
IPersistStream
Name
See chapter 8,
IClone
descriptions of locations

IRowBuffer
Geodatabase extensions IClassExtension
'Working with the
Catalog'
A GxLocator is a GxObject
that represents a locator
'Accessing the ILocator
Locator Class-
IAttachedLocator Geodatabase' ILocatorDataset RowBuffer Extension
ISupportErrorInfo Attached- ISdeLocator IGxLocator
A locator name
Locator enumerator contains ILocatorUI GxGeocoding- A IGxDatabase-
GxLocator
A locator name object is An address locator is a locator ExtensionCompare
an enumeration of a lightweight object that LocatorUI Service- GxGeocodingServiceExtension IGxObjectProperties
that geocodes addresses extends ArcCatalog to display
locator name objects represents a locator Extension IGxPasteTarget
A locator UI object provides IRow the contents of database locator
IAddressCandidates user interfaces for locators IConfirmSendRelatedObjectEvents (optional)
IRowChanges workspaces
IAddressGeocoding Address- IRowCompare IObjectClassExtension ObjectClass- IGxNewLocator
IEnumLocatorName
LocatorName-
IFileName IAddressInputs
Locator IRowEdit Row
IObjectInspector (optional)
Extension
IGxDatabase- GxNew-
ISupportErrorInfo ILocatorName
LocatorName (Optional)IIntersection- IRowEvents
IObjectClassDescription (optional) IGxObjectFactory GxObject- ExtensionCompare
Locator
Enumerator ISupportErrorInfo Geocoding IAddressUI
Address- IrowSubtypes IObjectClassEvents (optional) See Chapter 8,
'Accessing the Factory IGxObjectProperties
ISupportErrorInfo IObjectClassValidation (optional)
ISupportErrorInfo Geodatabase' See Chapter 7,
ILocatorManager
Locator- 0..* An ESRI address locator is an address LocatorUI IValidate
IRelatedObjectClassEvents (optional)
'Working with the A GxNewLocator is a GxObject
ISupportErrorInfo A address locator UI object IRelatedObjectClassEvents2 (optional)
locator that uses the ESRI geocoding engine Catalog' that can be used to create new
Manager provides user interfaces for
ILocator- locators in ArcCatalog
WorkspaceName Locator- address locators A geocoding index class
IAdvancedGeocoding
ISupportErrorInfo IGeocodingProperties ESRIAddress- Object extension in an object class
Workspace- IPlaceNameAlias
IObject
extension for automatically IGxObjectContainer GxObject-
IRowSubtypes
A locator manager opens Name Locator See Chapter 8,
IGxPasteTarget Container
locator workspaces and returns A locator workspace name object is (Optional)IAdvanced- IRelatedObjectEvents 'Accessing the maintained geocoding indexes GxLocator- The GxLocatorFactory extends
a lightweight object that represents
IntersectionGeocoding Geodatabase' IGeocodingIndexCompute Geocoding- Factory ArcCatalog to display the contents
See Chapter 7,
attached locators from datasets

Geocoding
IRelatedObjectClassEvents 'Working with the
a locator workspace IndexClass- of local locator workspaces Catalog'
Extension
ILocatorAttach
ILocatorWorkspace Locator-
ISupportErrorInfo Workspace IReferenceDataTables ESRIFDO- IFeature IFeatureClassExtension Feature- IGxObjectFilter GxObject- IGxLocatorFolder
ISupportErrorInfo
Address- IFeatureBuffer
Feature IFeatureClassCreation (optional)
Class- Filter IGxCachedObjects GxLocator-
IFeatureChanges IFeatureClassDescription (optional) IGxDatabase-
Locator IEnumReferenceDataTable Reference- IFeatureDraw See Chapter 8,
IFeatureClassDraw (optional) Extension See Chapter 7,
ExtensionCompare
Folder
A locator workspace stores An ESRI FDO address locator is ISupportErrorInfo 'Accessing the 'Working with the
locators and locator styles an ESRI address locator that
DataTable- IFeatureEdit Geodatabase' IFeatureClassEdit (optional) See Chapter 8, Catalog' IGxObjectProperties
IFeatureEvents INetworkClassDescription (optional) 'Accessing the
IDatabase- uses feature-data-object data Enumerator IFeatureSimplify Geodatabase'
LocatorWorkspace Database- sources as reference data IReferenceDataFile StreetMap- Geocoding- A GxLocatorFolder contains
A geocoding index object is a custom
Locator- A database locator workspace ISupportErrorInfo
Address- IndexObject object that comprises automatically
GxObjects that represent
Workspace A reference data table IGxLocatorFilter GxFilter- A GxFilterGeocodingServices is a items in a locator workspace
is a locator workspace that Locator enumerator contains an maintained geocoding indexes Geocoding-
resides in an ArcSDE database A StreetMap address locator is Geocoded GxObjectFilter that you can use to allow
an ESRI address locator that uses enumeration of reference
IGeocodedFeatureClass Geocoded- Services users to browse for geocoding services
data tables used by a locator Feature IRelatedClassEvents
ILocalLocator-
StreetMap data as reference data FeatureClass-
Workspace LocalLocator- A local locator workspace is a
Extension
A locator style is a Workspace locator workspace that resides
on your local file system IReferenceDataTable A geocoded feature is a custom A geocoded feature class extension is a
template that you can use IReferenceDataTableEdit Reference- 1..*
feature that comprises feature class extension for
to create new locators ISupportErrorInfo DataTable
automatically maintained feature automatically maintaining geocoded
classes feature classes
IClone IEnumLocator A reference data table describes a
ILocator ISupportErrorInfo Locator- A locator enumerator
ILocatorStyle
LocatorStyle Enumerator contains an enumeration feature-data-object data source
ISupportErrorInfo 0..* of locators used as reference data by a locator

IPropertySet IAddressInputs IEnumReferenceDataIndex Reference- IEnumReferenceDataField Reference-


Generic- IGeocoding- ESRIAddress- An ESRI address locator style is a ISupportErrorInfo
DataIndex- ISupportErrorInfo
DataFields- The find address object extends the
LocatorStyle Properties LocatorStyle locator style that you can use to Enumerator Enumerator find dialog to allow users to
IPlaceNameAlias A reference data fields enumerator
create new ESRI address locators geocode addresses

A generic locator style is a locator style


A reference data index enumerator
contains an enumeration of
contains an enumeration of
reference data fields ArcMap extensions
IExtension Extension IFinder
that you can use to define properties for See Chapter 3, ILocator- Find-
reference data indexes 'Customizing the User ExtensionEvents Addresses
your own custom locators Interface'
0..* 1..*
IReference-DataIndex IReference-DataField
IReferenceDataTables ESRIFDO- IReferenceDataFile StreetMap- (Optional)IReference- Reference- (Optional)IReference- Reference-
Address- Address- DataIndexEdit DataIndex DataFieldEdit DataField
LocatorStyle LocatorStyle ISupportErrorInfo ISupportErrorInfo ILocatorExtension
Locator-
ILocatorExtensionEvents
IAddressFindData
An ESRI FDO address locator style is a
IPersistStream Extension Address-
A reference data field describes a ISupportErrorInfo
locator style that you can use to create A StreetMap address locator style is a A reference data index field in a reference data table that
FindData
new ESRI FDO address locators locator style that you can use to create describes a geocoding index contains address information
new StreetMap address locators on a reference data table
The locator extension extends ArcMap An address find data object
to manage a set of locators in a represents a candidate for an address
ArcMap document found using the find dialog

15
3D Analyst objects IApplication
Tin and Raster operators IDataset
IDockableWindowManager The application object represents IFunctionalSurface
IExtensionManager Application the running ArcScene application IGeoDataset The triangulated network object
IMultiThreadedApplication See Chapter 3, IMetadata is used for surface modeling and
IObjectFactory 'Customizing the User IMetadataEdit other forms of spatial analysis
ISxApplication Interface' INativeTypeInfo
IVBAApplication ISupportErrorInfo Tin
IWindowPosition ISurface
ITin
TM ITinAdvanced

StreetStreetMap
Map USA
ITinEdit
ITinNodeCollection
SxDocument represents the scene ITinSelection
IBasicDocument ITinSurface
IBasicDocumentDefaultSymbols document that can be persisted to disk
IDocument Sx-
ISxDocument Document Nodes are the most
ISxDocumentEventsDisp

objects IGxObject
IGxObjectEdit
ISxDocumentInfo basic element of a TIN

IWorkspaceFactory Workspace- IGxObjectFactory GxObject- IGxObjectUI


GxObject ITinNode ITinTriangle ITinEdge
IWorkspaceFactory2
Factory IGxObject-
Factory TinNode TinTriangle TinEdge
FactoryMetadata The scene is a container for
See Chapter 8, See Chapter 7, IActiveViewEvents
'Accessing the 'Working with the IBasicMap vector, raster and graphic data
Geodatabase'
A StreetMap workspace Catalog' IPersistStream Scene
Non-graphic layers are used to view data IScene
factory is a dispenser of IGxObjectContainer ISelectionEvents
StreetMap workspaces IGxPasteTarget GxObject- other than primitive graphics. Examples Triangles are formed by connected Edges connect nodes. They
Container include feature, raster, TIN, CAD, and IMS nodes and represent areas can represent linear features
StreetMap- layers A container for
Workspace- GxStreet- recording data and
StreetMap- Factory MapFactory events that occur in a
NativeType scene
IGxCachedObjects IClone
IGxDataset IGeoAnalysisEnvironment Raster- Controls analysis environment
IGxObject ILayer IRasterAnalysisEnvironment properties like extent, cellsize,
A GxStreetMapFactory allows IGxObjectEdit IGeoDataset
IActiveViewEvents
IPersist Analysis
IDisplay3D
ArcCatalog to create GxObjects based IGxObjectInternalName Layer Scene- IPersistStream
mask, and output workspace
IGxObjectFilter GxObject- on StreetMap Feature classes IGxObjectProperties
GxDataset ISceneGraph
ISceneGraphEvents Graph
See Chapter 7, Graphics layers are used to Provides support for IDW,
IGxObjectUI ISceneGraphEventsDisp
Filter IGxObjectContainer
'Working with the render graphic primitives ISceneRendererEvents kriging, spline interpolation
See Chapter 7, Catalog'
'Working with the IGxThumbnail
Catalog'
IExtension Extension IMetadata 1..*
See Chapter 3, IMetadataEdit IActiveViewEvents
'Customizing the User INativeTypeInfo IGraphics- IInterpolationOp Raster-
Interface' IObjectClassSchemaEvents Container3D SceneViewers are the display IRasterAnalysis-
IGraphicsLayer windows for a scene Environment
Interpolation
IGraphicsSelection Scene- ISupportErrorInfo Op
GxFilterStreetMap- ILayer Graphics-
ILayerEffects Layer3D Viewer
FeatureClasses IExtensionConfig ILayerEvents
StreetMap- GxStreet- ILayerExtensions 3DProperties is a layer extension that IRasterAnalysis-
Environment
Extension MapDataset IPersistStream controls how a layer gets viewed in 3D. IRasterMakerOp Raster-
IScene-
RendererEvents
Different 3DProperties classes are ISupportErrorInfo MakerOp
implemented for different layer types
Creates numerically
A GxFilterStreetMapFeatureClass is a The StreetMap extension extends an A GxStreetMapDataset is a ICamera constant or random rasters
GxObjectFilter that allows a GxDialog to application to provide access to StreetMap GxObject based on a Camera
browse StreetMap feature classes data sources as feature classes I3DProperties IMathSupportOp
StreetMap feature class IDataLayerExtension Basic3D- IRasterAnalysis- RasterMath-
IPersist Properties The camera controls the Environment SupportOp
IPersistStream

16
perspective of a 3D view Provides basic aritmetic operators
such as addition, subtraction, and
TM floating point truncation IRasterAnalysis-

3D Analyst
Environment
IReclassOp Raster- Reclassifies rasters using
IFeature3DProperties
ICursor Feature3D- Raster3D- Tin3D- ISupportErrorInfo ReclassOp tables to define categories
IFeatureCursor Properties Properties Properties The 3D Analyst extension
object. It is used for licensing
IMessageDispatcher and to obtain global raster IRasterAnalysis-
Message- settings Environment
Dispatcher IDddEnvironment ISupportErrorInfo Raster-
IExtension Ddd- ISurfaceOp SurfaceOp
The MessageDispatcher controls IExtensionConfig Environment

14
navigation ability and cancel tracking
while in custom code loops Performs surface analysis such as
contouring or slope derivation

You might also like