You are on page 1of 1

The ArcInfo 8 Object Model

ArcInfo 8.0.2 Release, February 2000
Copyright © 2000 Environmental Systems Research Institute, Inc. All rights reserved.
IGxObject IGeographicCoordinateSystemDialog

GeographicCoordinateSystemDialog ProjectedCoordinateSystemDialog

ISpatialReferenceDialog

SpatialReferenceDialog TableDefinitionDialog
IGxNewDatabase

GxObject
IGxDialog

ITemplates

IApplication

Templates GxDialog GxNewDatabase
IGxCachedObjects IGXDatabase IMetadata IGxObjectFilter

Application

IProjectedCoordinateSystemDialog

ITableDefinitionDialog

GxObjectFilter 1..* 1..*
IActiveViewEvents IEditEvents IEditLayers IEditor IEditProperties IEditSketch IExtension ISnapEnvironment ISnapAgent ICommand ISketchTool ITool IStatusBar IDocument ICommandBars

*
IGxSelectionEvents IGxView IToolBarDef

GXDatabase
GxFilterAnnotationFeatureClasses GxFilterBasicTypes GxFilterCadDrawingDatasets GxFilterCoverageAnnotationClasses GxFilterDatasets GxFilterDatasetsAndLayers GxFilterFeatureClasses GxFilterFeatureDatasets GxFeatureDatasetsAndFeatureClasses GxFilterFiles GxFilterGeodatasets GxFilterLayers GxFilterMaps GxFilterPointFeatureClasses GxFilterPolygonFeatureClasses GxFilterPolylineFeatureClasses GxFilterRasterDatasets GxFilterSpatialReference GxFilterTables GxFilterTablesAndFeatureClasses GxFilterTINDatasets GxFilterWorkspaces

GxView

IGxApplication IGxCatalogEvents IGxCatalogEventsDisp

GxApplication Application

SketchTool

IEditTask

EditTask

SnapAgent

ICommand ISnappingWindow

IGxFile IMetadata

Snapping Command

StatusBar

Document

CommandBars

ICommandBar

1..*

CommandBar

GxFile

IGxContentsView

GxContentsApplication View

IGxTreeView

IGxCachedObjects IGxDataset IGxThumbnail IMetadata IObjectClassSchemaEvents

Editor
IFeatureSnapAgent

GxDataset

IObjectInspector

GxTreeView Application
IGxPrjFile

Feature Inspector

ISketchOperation

Sketch Operation

Feature SnapAgent

IFeatureCache

Feature Cache
IAppROT IAppROTEvents

IAcceleratorTable

AcceleratorTable

ICommandItem

*
CommandItem

GxPrjFile
IGXCatalogEvents IGxGeographicView ITransformEvents

IGxCachedObjects IGxFolder IGxCachedObjects IGxDiskConnection

GxGeographicApplication View

IGxCatalogEvents

GxTableView Application
IGxSelection IGxSelectionEvents

IGxCatalog IGxDropTarget

GxFolder

1..*
IExtension

AppROT

GxCatalog
IGXCachedObjects IGxLayer IGxThumbnail

GxDiskConnection
IGxRemoteDatabaseFolder

Extension

IEditSelectionCache

GxLayer GxRemoteDatabaseFolder

EditSelectionCache

IApplication

AppRef

IAccelerator

*
Accelerator UIControl MacroItem
ICommand ICommandSubType IMenuDef IMultiItem ITool IToolbarDef IToolControl

GxMetadata

GxSelection

IGxMap IGxThumbnail IGxFileFilter IGxFileFilterEvents

GxMap

GxFileFilter

IGxSpatialReferencesFolder

GxSpatialReferencesF older

IConflictDisplay IConflictsWindow

Conflicts Window

IDigitizerButtons IDigitizerSetup

Digitizer Extension

ITopoEditor

TopoEditor

IComponentCategoryManager

ComponentCategoryManager
IUIButtonControlEvent s

COM custom commands

UIButtonControl

IUIComboBoxControl IUIComboBoxControlEvents

UIComboBoxControl

IUIEditBoxControl IUIEditBoxControlEvents

UIEditBoxControl

IUIToolControlEvents

UIToolControl

IUID

UID

IClone INumberFormat IFeatureRenderer ILegendInfo IPersist IPersistStream FeatureLayer in Arc Map IDataExclusion IRotationRenderer IProportionalSymbolRenderer IClassBreaksRenderer IClassBreaksUIProperties IDataExclusion IDataSampling ILevelRenderer IRotationRenderer

ILegendInfo IPersist IPersistStream ITinRenderer

TinRenderer

1..*

TinLayer in ArcMap

FeatureRenderer

ILegendGroup IPersist IPersistStream

LegendGroup
ILegendClass IPersist IPersistStream

IActiveViewEvents IDataWindow IDocumentEvents

NumberFormat

DataWindow

LegendClass

*

IClone IColorRamp

ColorRamp

*

IClone IColor

Color

IPersistStream IStyleGallery IStyleGalleryStorage

StyleGallery

IStyleGalleryClass

StyleGalleryClass CurrencyFormat
IFractionFormat INumericFormat

ITinSingleSymbolRenderer IPropertySupport ITinIllumination

TinFaceRenderer TinFaceValueRenderer

IPropertySupport ITinSingleSymbolRenderer

TinNodeRenderer TinNodeValueRenderer

ProportionalSymbolRenderer

ILevelRenderer IUniqueValueRenderer IRotationRenderer

UniqueValueRenderer
IIAlgorithmicColorRamp

IRandomColorRamp

RandomColorRamp
IHlsColor

ICmykColor IPostScriptColor

IHsvColor

CmykColor

HsvColor

IActiveViewEvents IDocumentEvents IEditEvents IFeatureLayerSelectionEvents ITableWindow

TableWindow

IActiveViewEvents IDocumentEvents ILensWindow IMapInsetWindow

FractionFormat

NumericFormat

MapInsetWindow

IEnumStyleGalleryItem

EnumStyleGalleryItem

ITinIllumination ITinUniqueValueRenderer

ITinUniqueValueRenderer

ClassBreaksRenderer

IDisplayAdmin ILevelRenderer IRotationRenderer IPropertySupport ISimpleRenderer ITransparencyRenderer

AlgorithmicColorRamp
IMultiPartColorRamp

IGenericWindow

SimpleRenderer
IPresetColorRamp

MultiPartColorRamp

IRgbColor

IGrayColor

GenericWindow

IActiveViewEvents IDocumentEvents IOverviewWindow

OverviewWindow

IExtension

HlsColor

RgbColor

GrayColor

Extension
IApplication IMxApplication

IStyleGalleryItem IPersistStream

IClassBreaksUIProperties IDataSampling ITinColorRampRenderer ITinIllumination IClassBreaksUIProperties IDataSampling ITinColorRampRenderer ITinIllumination

TinSlopeRenderer

IClassBreaksUIProperties IDataSampling ITinColorRampRenderer

TinNodeElevationRenderer TinEdgeRenderer

PresetColorRamp
IAppDisplay IDisplay IScreenDisplay

Application

StyleGalleryItem

IScaleDependentRenderer IBivariateRenderer

TinAspectRenderer TinElevationRenderer

IPropertySupport ITinSingleSymbolRenderer

BiUniqueValueRenderer

ScaleDependentRenderer

Editor in Editor

IClone IDisplayFilter IPersist IPersistStream ITransparencyDisplayFilter

TransparencyDisplayFilter

AppDisplay
IDocument IDocumentEvents IDocumentEventsDisp IMxDocument

IClone IPersistStream ISymbol IMapLevel

Symbol
IGraphicSnapEnvironment IPersist IPersistStream

IGraphicSnap IPageLayoutSnap IPersist

GraphicSnap

MxDocument

AreaPatchStyleGalleryClass BackgroundStyleGalleryClass BorderStyleGalleryClass ColorRampStyleGalleryClass ColorStyleGalleryClass FillSymbolStyleGalleryClass LabelStyleGalleryClass LegendItemStylGalleryClass LinePatchStyleGalleryClass LineSymbolStyleGalleryClass MapGridStyleGalleryClass MarkerSymbolStyleGalleryClass NorthArrowStyleGalleryClass ScalebarStyleGalleryClass ScaleTextStyleGalleryClass TextSymbolStyleGalleryClass

ICustomNumberFormat

CustomNumberFormat ScientificFormat

ILatLonFormat

LatLonFormat

IRateFormat

RateFormat

IPercentageFormat

PercentageFormat

IAngleFormat

AngleFormat

IMapGridBorder IPersistStream

MapGridBorder

ITinUniqueValueRenderer

IClassBreaksUIProperties IDataSampling ITinColorRampRenderer ITinIllumination

TinBreaklineRenderer

GraphicSnapEnvironment

IClone IMapGrid IPersist IPersistStream

MapGrid

IGridLabel IPersistStream

*
GridLabel

IMarkerSymbol

MarkerSymbol

ILineSymbol

IFillSymbol

LineSymbol

FillSymbol

GridSnap GuideSnap MarginSnap RulerSnap

IPersist IPersistStream ISnapGrid

* SnapGrid
IActiveView IActiveViewEvents IConnectionPoint IDisplayAdmin IGraphicsContainer IGraphicsContainerSelect IPageEvents IPageLayout IPersist IPersistStream ISelectionEvents ITransformEvents IActiveView IActiveViewEvents IClipShapeSettings IConnectionPoint IDisplayAdmin IGraphicsContainer IMap IMapBookmarks IMapEvents IPersist IPersistStream ISelectionEvents ITableCollection ITransformEvents IViewManager Printer in Output ISimpleMapGridBorder

SimpleMapGridBorder

IGraticule IMeasuredGrid

Graticule

IFormattedGridLabel

StyleSelector
ICalibratedMapGridBorder

1..*

IFormattedTextSymbol IMask IPropertySupport ISimpleTextSymbol ITextSymbol

ICartographicMarkerSymbol ICharacterMarkerSymbol

CharacterMarkerSymbol SimpleMarkerSymbol ArrowMarkerSymbol

ICartographicLineSymbol ILineProperties

CartographicLineSymbol

IMultiLayerLineSymbol ILayerVisible ILayerColorLock

MultiLayerLineSymbol

IGradientFillSymbol

GradientFillSymbol LineFillSymbol

IFillProperties IPictureFillSymbol

PictureFillSymbol SimpleFillSymbol MultiLayerFillSymbol

PageLayout

IIndexGrid

IndexGrid
IMixedFontGridLabel IFormattedGridLabel

TextSymbol
ISimpleMarkerSymbol ICartographicLineSymbol IHashLineSymbol ILineProperties

ILineFillSymbol

IRasterStretchColorRampRenderer

RasterClassify -ColorRampRenderer

IRasterStretch IRasterStretchColorRampRenderer

RasterStretchColorRampRenderer RasterUniqueValueRenderer
IMarkerTextBackground

HashLineSymbol

ISimpleLineSymbol

ISimpleFillSymbol

SimpleLineSymbol

IPersist IPersistStream ISnapGuides

IMapGridSelector

SnapGuides

MapGridSelector BackgroundSelector BorderSelector LabelStyleSelector LegendItemSelector NorthArrowSelector ScaleBarSelector ScaleTextSelector

IMapGridFactory

MapGridFactory

MixedFontGridLabel

ButtonTabStyle

ContinuousTabStyle

IMeasuredGrid IProjectedGrid

MeasuredGrid
IDMSGridLabel

IRasterRGBRenderer IRasterStretch

RasterRGBRenderer

IRasterUniqueValueRendere r

IClone ITextBackground IPersist IPersistStream

TextBackground

IFillProperties IMarkerFillSymbol ICartographicLineSymbol ILineProperties IMarkerLineSymbol

MarkerFillSymbol

IPersist ITextPath

IArrowMarkerSymbol

TextPath

MarkerLineSymbol

IMultiLayerFillSymbol ILayerColorLock ILayerVisible

IRasterIdentifyObj

RasterIdentifyObj

MarkerTextBackground
IBalloonCallout

ICallout ITextMargins

ICartographicMarkerSymbol IPictureMarkerSymbol

Callout

SimpleTextPath

BezierTextPath

PictureMarkerSymbol MultiLayerMarkerSymbol
ILineMovePointFeedback

IDisplayFeedback

DisplayFeedback

IClone IElement IElementProperties IPersist IPersistStream

IPage IPageEvents IPersist IPersistStream IPropertySupport

Page

GraticuleFactory IndexGridFactory MeasuredGridFactory CustomOverlayGridFactory

ICustomOverlayGrid

DMSGridLabel

RoundedTabStyle

CustomOverlayGrid
IBackgroundTabStyle

BackgroundTabStyle

Element *
FeatureClass in Geodatabase Renderer in Display IGeoDataset ILayer

BalloonCallout
IOverposterTextPath ILineCallout

OverposterTextPath

IMultiLayerMarkerSymbol ILayerVisible ILayerColorLock IMask IRubberBand

Layer

*

IExportDialog

IExporter

ExportDialog

Exporter

LineCallout

RubberBand

BezierMovePointFeedback
ISet

IMoveLineFeedback

MoveLineFeedback

INewMultiPointFeedback

NewMultiPointFeedback

IVertexFeedback

IGraphicElement ITransform2D

VertexFeedback

GraphicElement

IFillShapeElement IPropertySupport

FillShapeElement

IFrameElement IPropertySuppor t ITransform2D

FrameElement
IClass IDataLayer IDisplayAdmin IDisplayFilterManager IFeatureLayer IFeatureLayerDefinition IFeatureSelection IGeoDataset IGeoFeatureLayer IHotlinkContainer IHyperlinkContainer IIdentify ILayerDrawingProperties ILayerEffects ILayerEvents ILayerFields ILayerInfo ILegendInfo IPropertySupport ITable IHyperlink IPersistStream IGraphicsContaine r IGraphicsLayer ISelectionEvents

ISpatialBookmark IPersist IPersistStream

*
SpatialBookmark

GroupFeedback LineMovePointFeedback

IMovePointFeedback

MovePointFeedback MovePolygonFeedback

INewPolygonFeedback

IClassify

NewPolygonFeedback PolygonMovePointFeedback ReshapeFeedback ResizeEnvelopeFeedback StretchLineFeedback

GraphicsLayer

IFrameElement IGroupElement

GroupElement

ICircleElement

CircleElement RectangleElement EllipseElement

Classify
IDibExporter IPsExporter

IMapFrameEvents IMapSurroundFrame ITransformEvents

RubberEnvelope

MapSurroundFrame OleFrame

RubberPoint

ILineMovePointFeedback

IMovePolygonFeedback

IPolygonMovePointFeedback

DibExporter
IArcPressExporter IArcPressExporterDescriptionEnum

PsExporter RubberLine
IClassifyMinMax

IMarkerElement IPropertySupport

MarkerElement

IRectangleElement

IOleFrame IGraphicElement

FeatureLayer

IDataLayer IDisplayAdmin IDisplayFilterManager ILayerEffects ILayerFields ILayerInfo ILegendInfo IPersistStream ITinLayer

TinLayer

ICompositeLayer IDisplayAdmin IGroupLayer IIdentify ILayerInfo IPersist IPersistStream

IAOIBookmark

GroupLayer

AOIBookmark

IFeatureBookmark

FeatureBookmark

IPushPin

PushPin

ArcPressExporter
IEmfExporter IPdfExporter

EmfExporter ArcPressExporterBIL ArcPressExporterBIP ArcPressExporterJPEG ArcPressExporterPNG

PdfExporter

NaturalBreaks

EqualInterval

RubberPolygon SelectionTracker

IMoveEnvelopeFeedback

Quantile
ISelectionTracker

MoveEnvelopeFeedback

INewBezierCurveFeedback

NewBezierCurveFeedback NewEnvelopeFeedback

IReshapeFeedback

IEllipseElement IElementEditVertices ILineElement IPropertySupport

IGraphicElement

FrameElement

LineElement
IElementEditVertices IPolygonElement

IDeviationInterval IJpegExporter

ArcPressExporterBSQ ArcPressExporterPCX ArcPressExporterTIFF

Output
IPrinter

IJpegExporter

IPDFDriver

PDFDriver

IClassifyMinMax IIntervalRange

DefinedInterval

StandardDeviation EnvelopeTracker PointTracker

IMoveGeometryFeedback

MoveGeometryFeedback

INewEnvelopeFeedback

IResizeEnvelopeFeedback

PolygonElement PictureElement

IMoveImageFeedback

MoveImageFeedback

INewLineFeedback

NewLineFeedback

IStretchLineFeedback

IElementEditCallout IElementEditVertices IPropertySupport ITextElement

TextElement

IOlePictureElement IPictureElement

IActiveViewEvents IConnectionPoint IDisplayEvents IMapFrame IMapFrameEvents IMapGrids IPersistStream ITransformEvents

MapFrame

Hyperlink

IBarrierProperties IDataLayer IFDOGraphicsLayer IFeatureLayer IFeatureSelection ILayerEvents ILayerInfo IOverflowGraphicsContainer IPersistStream

FDOGraphicsLayer

IBarrierProperties ICoverageAnnotationLayer IDataLayer IFeatureLayer ILayerFields ILayerInfo IPersist IPersistStream IDataLayer IIdentify ILayerEffects ILayerInfo ILegendInfo IPersistStream IRasterLayer

CoverageAnnotationLayer
IActiveViewEvents ILegend

IClone IMapSurround IMapSurroundEvents IPersist IPersistStream

MapSurround

INorthArrow

IScaleLine

Legend

NorthArrow

ScaleLine

* *

Printer

IClone IPaper IPersistStream

Paper

IConnectionPoint IDisplay IDisplayEvents

LineTracker Display

PolygonTracker

BmpPictureElement

EmfPictureElement

IFieldInfo IPersist IPersistStream

ICompositeLayer ICompositeGraphicsLayer IGeoDatasetSchemaEdit IGraphicsContainerSelect

CompositeGraphicsLayer

RasterLayer

IMapInset

MapInset

IClone ILegendFormat IPersist IPersistStream

LegendFormat
IMarkerNorthArrow

IPictureNorthArrow

FieldInfo

PictureNorthArrow

SingleDivisionScaleLine SteppedScaleLine
IScaleText IPropertySupport ITransformEvents

IClone ILegendItem IPersist IPersistStream

*
LegendItem

MarkerNorthArrow
IScalebar IScaleMarks ITransformEvents

ScaleText

PageLayout in ArcMap

Scalebar

SimpleDisplay
IEmfPrinter

IConnectionPoint IDisplayTransformation ITransformation ITransformationEvents

DisplayTransformation

IAnchorPoint

IColorSelector

AnchorPoint

ColorSelector DefaultLegendSymbolEditor

IIlluminationProps

IlluminationProps

IScaleTracker

ScaleTracker SimpleLineDecorationElement SymbolBackground

ISymbolSelector

SymbolSelector

ArcPressPrinter

IAnnotateLayerPropertie s IPersistStream

PsPrinter
IPsPrinter IFontMapCollection

AnnotateLayerProperties AnnotateMap

IBasicOverposterLayerProperties IOverposterLayerProperties IClone

AppDisplay in ArcMap

ICieLabConversion

FontMapCollection
IFontMap

IScreenDisplay ITransformEvents

ScreenDisplay
IColorBrowser

CieLabConversion

ILegendSymbolEditor

IClone ILineDecoration IPersist IPersistStream ILineDecorationEditor

LineDecoration LineDecorationEditor MonitorSettings

IClone ILineDecorationElement IPersist IPersistStream ISimpleLineDecorationElement ISymbolBackground IBackground

IClone IPersistStream ITemplate

BasicOverposterLayerProperties BasicPlacedObject LabelEnvironment

Template

IAnnotateMap

IPlacedObject

IArcPressExporterDriver

ArcPressExporterDriver

EmfPrinter
IPsDriver IFontMapEnvironment

FontMap
IColorPalette

ColorBrowser

IClone IFontSize IPersist IPersistStream IGeometryDraw

FontSize

ITextBackgroundEdito r

TextBackgroundEditor TextSymbolEditor

IAnnotateLayerProperties IAnnotateLayerTransformationPropertie s IAnnotateProperties IClone ILabelEngineLayerProperties IPersistStream IClone ILabelStyle IPersist IPersistStream ILineLabelPlacementPriorities

LabelEngineLayerProperties

ILineLabelPosition

LineLabelPosition

IPointPlacementPriorities

PointPlacementPriorities

IContentsView IActiveViewEvents

TOCCatalog View

IVerticalLegendItem IHorizontalLegendItem

HorizontalLegendItem

VerticalLegendItem
IDoubleFillScaleBar ISingleFillScaleBar

ILocatorRectangle

LocatorRectangle

LabelStyle
INumberDialog

ISelectionEnvironment IPersist IPersistStream

SelectionEnvironment

IContentsView IActiveViewEvents

IOverview

TOCDisplay View

Overview
IPatch IPersist IPersistStream

ILegendClassFormat IPersist IPersistStream

LegendClassFormat

SingleFillScaleBar

DoubleFillScaleBar

IBasicOverposterEvents IOverposter

BasicOverposter

ILabelEnvironment

FontMapEnvironment

PsDriver *
ISpotPlate

ColorPalette

GeometryDraw

IMonitorSettings

ISymbolEditor

ITextSymbolEditor

SpotPlate

SymbolEditor

LineLabelPlacementPriorities

NumberDialog

Patch SingleDivisionScaleBar SteppedScaleBar
ILinePatch

AlternatingScaleBar DoubleAlternatingScaleBar HollowScaleBar

IAreaPatch

AreaPatch

LinePatch

IWorkspaceFactory

RasterWorkspaceFactory
IDataset IPersistStream IRasterWorkspace IWorkspace

IName

Name

ISpatialReference

SpatialReference

RasterWorkspace
IDataset IGeoDataset IGeoDatasetSchemaEdit IRasterBandCollection IRasterDataset IRasterPyramid IDatasetName IName IPersistStream IRasterDatasetName

RasterDatasetName
IWorkspaceFactory

Raster Dataset

IGeographicCoordinateSystem IGeographicCoordinateSystemEdit

GeographicCoordinateSystem

IProjectedCoordinateSystem IProjectedCoordinateSystemEdit

Projected Coordinate System

IUnknownCoordinateSystem

UnknownCoordinateSystem

IDatum IDatumEdit

Datum

IAngularUnit IAngularUnitEdit IUnit

AngularUnit

IProjection

Projection

IPixelBlock

PixelBlock
IRasterStatistics

IDataset IGeoDataset IRasterBand IRasterDataset IRasterProps IRasterPyramid IRasterTable ITable

ICodedValueDomain

RasterBand

IDatasetName IName IPersistStream IRasterBandName

RasterBandName

AccessWorkspaceFactory

ShapefileWorkspaceFactory TinWorkspaceFactory

VersionedWorkspace in Versioning

CodedValueDomain RangeDomain

IRelationshipClassName

TableName

Relationship ClassName
INetworkWorkspace

INetElementDescription INetElementDescriptionEdit

NetElementDescription
ITraceFlowSolver

IRangeDomain

IGeometricNetworkName IFeatureClassName

IParameter ISpheroid ISpheroidEdit IPrimeMeridian IPrimeMeridianEdit

Spheroid
IClassFactory ISpatialReferenceFactory

PrimeMeridian
ILinearUnit ILinearUnitEdit IUnit

Parameter

ITransformation

Transformation
IRasterCursor

RasterStatistics

IRasterColormap

RasterColormap

ArcInfoWorkspaceFactory SdeWorkspaceFactory

FeatureClassName

GeometricNetworkName
ITinName

NetworkWorkspace

TraceFlowSolver

IJunctionFlagDisplay 0..*

1..* IDataset IDatasetEdit ISchemaLock

TinName

ISpatialReferenceInfo

SpatialReferenceInfo ESRISpatialReferenceInfo

Spatial ReferenceEnvironment

LinearUnit

IGeoTransformation

RasterCursor

Dataset
IPropertySet

GeoTransformation

PropertySet

IClassExtension 0..1

ClassExtension
INetworkLoader INetworkLoaderProps

INetAttributes INetAttributesEdit INetElements INetSchema INetSchemaEdit INetTopology INetTopologyEdit INetwork INetworkUpdate

INetElementClass

NetElementClass

Network

IForwardStar

ForwardStar

INetworkAnalysisExt IActiveViewEvents IEditEvents IExtension IMapEvents INetworkAnalysisExtFlags INetworkAnalysisExtBarriers INetworkAnalysisExtResults INetworkAnalysisExtWeightFilter INetworkAnalysisExtWeights

JunctionFlagDisplay
IEdgeFlagDisplay 0..*

NetworkAnalysisExt
INetElementBarriers

EdgeFlagDisplay

NetElementBarriers

IRasterHistogram IMolodenskyTransformation

IESRISpatialReferenceInfo

AbridgedMolodenskyTransformation

IPositionVectorTransformation

RasterHistogram
IQueryDef

INetWeight INetWeightEdit IObjectClassExtension IObjectInspector (optional) IObjectClassDescription (optional) IObjectClassValidation (optional) IRelatedObjectClassEvents (optional) ISelectionSet

ITraceTasks IUtilityNetworkAnalysisExt

NetWeight

UtilityNetworkAnalysisExt
0..1

ISelectionSetBarriers

SelectionSetBarriers

PositionVectorTransformation

ObjectClassExtension

NetworkLoader
INetFlag

QueryDef
ICoordinateFrameTransformation

CoordinateFrameTransformation

IMolodenskyTransformation

MolodenskyTransformation
IVersion IVersionEdit IVersionedWorkspace

IGeocentricTranslation

GeocentricTranslation

VersionedWorkspace

Versioning
IEnumConflictClass

IGeodataSchemaEdit IGeoDataset

GeoDataset

IRowBuffer

RowBuffer

SelectionSet

IClass ITable

NetFlag
IUtilityNetwork

ITraceTask ITraceTaskResults

TraceTask

Table
IFeatureClassExtension IFeatureClassCreation (optional) IFeatureClassDescription (optional) IFeatureClassDraw (optional)

EnumConflictClass

FeatureClassExtension

UtilityNetwork
IJunctionFlag IEdgeFlag ITracePathTaskResults

IEnumVersionInfo

EnumVersionInfo

IConflictClass ITable IVersionedTable

Table

IFeatureDataset INetworkCollection IFeatureClassContainer IRelationshipClassContainer ITinDataset

FeatureDataset

IRow IRowEvents IValidate

JunctionFlag Row
ICursor IStreetNetwork

EdgeFlag FindAncestorsTask FindConnectedTask FindLoopsTask TraceDownstreamTask TraceUpstreamTask

TracePathTask

Cursor
IQueryFilter

QueryFilter
IClassSchemaEdit IModelInfo SpatialFilter IObjectClass ISubtypes IValidation

IRelationshipClass 2 *

Relationship Class

IFields IFieldsEdit

Fields

IIndexes

StreetNetwork

Indexes

TinDataset
IRelationship IGeometryCollection IClassFactory IConstructAngle IConstructDomainExtent IGeometryEnvironment IGeometryFactory ISupportErrorInfo IClone IGeometry IProximityOperator ISupportErrorInfo ITransform2D

GeometryCollection
IConstructGeometryCollection IEnumGeometry IGeometryCollection IRelationalOperator ISpatialIndex ITopologicalOperator

IVersionInfo

IDifferenceCursor

VersionInfo GeometryBag

GeometryEnvironment

DifferenceCursor

IRasterDataset

Geometry

RasterDataset

IObject IRowSubtypes IRelatedObjectEvents

Relationship Object
IFeatureCursor

ISpatialFilter

ObjectClass AttributedRelationshipClass
IField IFieldEdit IModelInfo

1..*

1..* IIndex IIndexEdit 1..*

FeatureCursor

Field

Index

ITransformation

Transformation

ICurve

Curve

IAffineTransformation2D ITransformation

AffineTransformation2D

IArea IEnvelope IHitTest IMAware IPersistStream IRelationalOperator IZAware

Envelope

IConstructPoint IHitTest IMAware IPersistStream IPoint IPointIDAware IRelationalOperator ITopologicalOperator IZAware

IWorkspaceFactory IConstructMultipoint IGeometryCollection IHitTest IMAware IMCollection IMultipoint IPersistStream IPointCollection IPointIDAware IRelationalOperator ISpatialIndex ITopologicalEditor IZAware IZCollection

ArcInfoWorkspaceFactory
IArcInfoWorkspace IDataset IFeatureWorkspace IWorkspace *

IDataset IGraph IFeatureClassContainer IWorkspaceName

Graph

IFeature IFeatureBuffer IFeatureDraw IFeatureEdit IFeatureEvents

AttributedRelationship Feature
IFeatureClass IGeoDataset INetworkClass

0..1

FeatureClass
1..* 1..* IRule *

IGeometryDef IGeometryDefEdit

GeometryDef

Rule

Point

WorkspaceName
IGeometricNetwork

IWorkspace DatasetName

Multipoint

Coverage
IDatasetName IDataset IDatasetEdit

GeometricNetwork

INetworkFeature INetworkFeatureEvents

NetworkFeature

IAttributeRule

AttributeRule

IRelationshipRule

RelationshipRule

IConnectivityRule

ConnectivityRule

Dataset

About this diagram
IJunctionFeature

ISegment ISegmentM ISegmentZ ISegmentID

Segment

*

IConstructPath IPath IPointCollection ISegmentCollection

Path
*

IGeometryCollection IHitTest IPersistStream IPointCollection IPolycurve ISegmentCollection IZ

JunctionFeature
IFeatureElement

IEdgeFeature

IEdgeConnectivityRule

EdgeFeature FeatureElement
ISimpleEdgeFeature ISimpleNetworkFeature

Polycurve

ICoverage

FeatureDataset
IArcInfoTable

IWorkspaceName IFeatureDatasetName IMetadata

CoverageName CoverageFeatureClassName
ISimpleJunctionFeature ISimpleNetworkFeature

EdgeConnectivityRule

IJunctionConnectivityRule

JunctionConnectivityRule

How to read this diagram
Interface Aggregation Types of Classes AbstractClas s Instantiation An abstract class cannot be used to create new objects but is a specification for instances of subclasses (through type inheritance.) A createable class can directly create objects by declaring a new object. An instantiable class cannot directly create objects, but objects of this class can be created as a property of another class or instantiated by objects from another class. Types of Relationships Associations represent relationships between classes. They have defined multiplicities at both ends. Type inheritance defines specialized classes of objects which share properties and methods with the superclass and have additional properties and methods. Instantiation specifies that one object from one class has a method with which it creates an object from another class. Aggregation is an asymmetric association in which an object from one class is considered to be a 'whole' and objects from the other class are considered 'parts'. Composition is a stronger form of aggregation in which objects from the 'whole' class control the lifetime of objects from the 'part' class. An N-ary association specifies that more than two classes are associated. A diamond is placed at the intersection of the association branches. This diagram has several examples of an instantiation of an object from two other objects. A Multiplicity is a constraint on the number of objects that can be associated with another object. Association, aggregration and composition relationships have multiplicities on both sides. This is the notation for multiplicities: 1 One and only one (if none shown, '1' is implied) 0..1 Zero or one M..N From M to N (positive integers) * or 0..* From zero to any positive integer 1..* From one to any positive integer

Type Inheritance
This diagram illustrates the implicit type inheritance model in the ArcInfo 8 component objects. Software interfaces are not duplicated in the child classes. IRowBuffer

The ArcInfo object model is pictured here. These are the software COM components on which ArcCatalog and ArcMap are built. Collectively, they are called ArcObjects. These components are available for programming through VBA or your standard Windows development platform.

ICircularArc IConstructCircularArc

CircularArc

IEllipticArc IConstructEllipticArc

EllipticArc

IArea IRing

Ring
* IConstructCurve IMAware IMCollection IMSegmentation IPointIDAware IPolyline IRelationalOperator ISpatialIndex ITopologicalOperator IZAware IZCollection IArea IConstructCurve IMAware IMCollection IPointIDAware IPolygon IRelationalOperator ISpatialIndex ITopologicalOperator IZAware IZCollection

Table

ICoverageFeatureClassName IFeatureClassName IMetadata

SimpleJunctionFeature

IComplexJunctionFeature IComplexNetworkFeature IFeatureConnect IFeatureSnap

ComplexJunctionFeature

SimpleEdgeFeature

IComplexEdgeFeature IComplexNetworkFeature

ComplexEdgeFeature

IFeatureProgress

FeatureProgress

IObjectLoaderUI IObjectLoaderUIProperties

IConstructLine ILine

Line

IBezierCurve IConstructBezierCurve

BezierCurve

Polyline

Polygon

ICoverageFeatureClas s

FeatureClass

IArcInfoItems IArcInfoItemsEdit

ArcInfoItems

IFeatureDataConverter IFeatureProgress

FeatureDataConverter
IEnumInvalidObject

Data converter
IObjectLoader IFeatureProgress

ObjectLoaderUI

IFieldChecker

FieldChecker

This diagram is not just for programmers. Understanding this object model will give many users the conceptual insight to make better maps and geographic databases. Interface

ArcCatalog

Editor

ArcMap

ObjectLoader

IEnumFieldError

EnumFieldError

Diagram Key
Type inheritance Createable Class Interface Composition Association wormhole to object in other library

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 equivalent, but the type inheritance view gives insight into the structural composition of the object model. IRowBuffer

RowBuffer

RowBuffer

Instantiable Class 1..* Multiplicity

IRow IRowEvents IValidate

Row

IRow IRowBuffer IRowEvents IValidate IFeature IFeatureBuffer IFeatureDraw IFeatureEdit IRow IRowBuffer IRowEvents IValidate

Row

Spatial Reference

Output

Display

1..* IArcInfoItem IArcInfoItemEdit

ArcInfoItem

EnumInvalidObject

IInvalidObjectInfo

InvalidObjectInfo

IFieldError

IFieldError

Geometry

Geodatabase

Network

IFeature IFeatureBuffer IFeatureDraw IFeatureEdit

Feature

Feature

Data Access

IClone IGeoDataset IRaster IRasterBandCollection IRasterProps

Raster

Raster

IEnumDataset IEnumRasterBand

IDatabaseCompact IDataset IFeatureWorkspace IFeatureWorkspaceAnno ISpatialCacheManager ITransactions IWorkspace IWorkspaceDomains IWorkspaceEdit

IWorkspaceName

Workspace
IDomain

WorkspaceName

IDatasetName ISQLPrivilege

DatasetName

*

Domain
IFeatureDatasetName

RasterBands

WorkspaceFactory

FeatureDatasetName

IRasterDatasetName

RasterDatasetName

INetWeightAssociation INetWeightAssociationEdit

NetWeightAssociation
INetSolver INetSolverWeights

NetSolver

IFlagDisplay IFeatureDraw

FlagDisplay

Cartography

ILegendInfo IPersist IPersistStream IRasterRenderer

RasterRenderer

RasterLayer in ArcMap

IPersist IPersistStream IRulerSettings

RulerSettings

Map

CalibratedMapGridBorder

FormattedGridLabel

IIndexGridTabStyle

IndexGridTabStyle

Applications