ArcInfo 8 Object Model

1
Data Access Cartography Applications The ArcInfo 8 Object Model ArcInfo 8.0.2 Release, February 2000 Copyright © 2000 Environmental Systems Research Institute, Inc. All rights reserved. Types of Classes 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 About this diagram How to read this diagram 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. 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. Diagram Key Createable Class AbstractClas s Instantiable Class Type inheritance Instantiation Association Aggregation Composition 1..* Multiplicity wormhole to object in other library Interface Interface Interface ArcMap ArcCatalog Editor Display Network Output Geometry Spatial Reference Geodatabase Row Feature RowBuffer IRow IRowEvents IValidate IFeature IFeatureBuffer IFeatureDraw IFeatureEdit IRowBuffer 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. Row Feature IRow IRowBuffer IRowEvents IValidate IFeature IFeatureBuffer IFeatureDraw IFeatureEdit IRow IRowBuffer IRowEvents IValidate RowBuffer IRowBuffer 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. Spatial- Reference Datum Prime- Meridian Projection Spheroid AngularUnit IDatum IDatumEdit ISpatialReference Projected Coordinate System IProjectedCoordinateSystem IProjectedCoordinateSystemEdit Unknown- Coordinate- System IUnknownCoordinateSystem IAngularUnit IAngularUnitEdit IUnit Geographic- Coordinate- System IGeographicCoordinateSystem IGeographicCoordinateSystemEdit ISpheroid ISpheroidEdit IPrimeMeridian IPrimeMeridianEdit IProjection Spatial Reference- Environment IClassFactory ISpatialReferenceFactory Spatial- Reference- Info ISpatialReferenceInfo LinearUnit ILinearUnit ILinearUnitEdit IUnit Parameter IParameter ESRISpatial- Reference- Info IESRISpatialReferenceInfo Transfor- mation Coordinate- Frame- Transformation ICoordinateFrameTransformation GeoTransfor- mation Abridged- Molodensky- Transformation IMolodenskyTransformation ITransformation IGeoTransformation PositionVector- Transformation IPositionVectorTransformation Molodensky- Transformation IMolodenskyTransformation Geocentric- Translation IGeocentricTranslation IAppDisplay IDisplay IScreenDisplay AppDisplay IApplication IMxApplication Application IDocument IDocumentEvents IDocumentEventsDisp IMxDocument MxDocument IExtension Extension IPersist IPersistStream ISnapGuides SnapGuides Ruler- Settings IPersist IPersistStream IRulerSettings SnapGrid IPersist IPersistStream ISnapGrid IClone IMapGrid IPersist IPersistStream MapGrid IGraticule IMeasuredGrid Graticule IIndexGrid IndexGrid IMeasuredGrid IProjectedGrid Measured- Grid * IGridLabel IPersistStream GridLabel ButtonTab- Style Continuous- TabStyle Rounded- TabStyle IDMSGridLabel DMS- GridLabel IMixedFontGridLabel IFormattedGridLabel MixedFont- GridLabel IFormattedGridLabel Formatted- GridLabel IBackgroundTabStyle Background- TabStyle Currency- Format Scientific- Format INumericFormat Numeric- Format IRateFormat RateFormat IAngleFormat AngleFormat ICustomNumberFormat Custom- Number- Format IndexGrid- TabStyle IIndexGridTabStyle ILatLonFormat LatLon- Format IPercentageFormat Percentage- Format IFractionFormat Fraction- Format ICustomOverlayGrid Custom- OverlayGrid ISimpleMapGridBorder SimpleMap- GridBorder IMapGridBorder IPersistStream MapGrid- Border ICalibratedMapGridBorder Calibrated- MapGrid- Border IMapGridFactory MapGrid- Factory GraticuleFactory IndexGridFactory MeasuredGridFactory CustomOverlayGridFactory IClone INumberFormat Number- Format Editor in Editor Printer in Output Page IPage IPageEvents IPersist IPersistStream IPropertySupport IAnnotateMap Annotate- Map IBasicOverposterEvents IOverposter Basic- Overposter IPlacedObject Basic- Placed- Object IBasicOverposterLayerProperties IOverposterLayerProperties IClone Basic- Overposter- Layer- Properties IAnnotateLayerProperties IAnnotateLayerTransformationPropertie s IAnnotateProperties IClone ILabelEngineLayerProperties IPersistStream LabelEngine- Layer- Properties ILabelEnvironment Label- Environment ILocatorRectangle Locator- Rectangle INumberDialog Number- Dialog ISelectionEnvironment IPersist IPersistStream Selection- Environment IContentsView IActiveViewEvents TOCCatalog View IContentsView IActiveViewEvents TOCDisplay View MapGrid- Selector BackgroundSelector BorderSelector LabelStyleSelector LegendItemSelector NorthArrowSelector ScaleBarSelector ScaleTextSelector IMapGridSelector StyleSelector ILineLabelPosition LineLabel- Position * IMarkerElement IPropertySupport Marker- Element IGraphicElement ITransform2D Graphic- Element IFrameElement IGroupElement Group- Element IElementEditVertices ILineElement IPropertySupport LineElement IElementEditCallout IElementEditVertices IPropertySupport ITextElement TextElement ICircleElement Circle- Element IRectangleElement Rectangle- Element IEllipseElement Ellipse- Element IElementEditVertices IPolygonElement Polygon- Element IFillShapeElement IPropertySupport FillShape- Element IClone IElement IElementProperties IPersist IPersistStream Element IFrameElement IPropertySuppor t ITransform2D Frame- Element IGraphicElement Frame- Element IOleFrame IGraphicElement OleFrame IMapFrameEvents IMapSurroundFrame ITransformEvents Map- Surround- Frame IActiveViewEvents IConnectionPoint IDisplayEvents IMapFrame IMapFrameEvents IMapGrids IPersistStream ITransformEvents MapFrame BmpPicture- Element EmfPicture- Element IOlePictureElement IPictureElement Picture- Element FeatureClass in Geodatabase Renderer in Display IHyperlink IPersistStream Hyperlink * * * Coverage- Annotation- Layer IBarrierProperties ICoverageAnnotationLayer IDataLayer IFeatureLayer ILayerFields ILayerInfo IPersist IPersistStream IFieldInfo IPersist IPersistStream FieldInfo IGraphicsContaine r IGraphicsLayer ISelectionEvents Graphics- Layer IDataLayer IDisplayAdmin IDisplayFilterManager ILayerEffects ILayerFields ILayerInfo ILegendInfo IPersistStream ITinLayer TinLayer IGeoDataset ILayer Layer ICompositeLayer IDisplayAdmin IGroupLayer IIdentify ILayerInfo IPersist IPersistStream GroupLayer IBarrierProperties IDataLayer IFDOGraphicsLayer IFeatureLayer IFeatureSelection ILayerEvents ILayerInfo IOverflowGraphicsContainer IPersistStream FDO- Graphics- Layer ICompositeLayer ICompositeGraphicsLayer IGeoDatasetSchemaEdit IGraphicsContainerSelect Composite- Graphics- Layer IClass IDataLayer IDisplayAdmin IDisplayFilterManager IFeatureLayer IFeatureLayerDefinition IFeatureSelection IGeoDataset IGeoFeatureLayer IHotlinkContainer IHyperlinkContainer IIdentify ILayerDrawingProperties ILayerEffects ILayerEvents ILayerFields ILayerInfo ILegendInfo IPropertySupport ITable Feature- Layer IDataLayer IIdentify ILayerEffects ILayerInfo ILegendInfo IPersistStream IRasterLayer RasterLayer IEnumStyleGalleryItem EnumStyle- GalleryItem IStyleGalleryItem IPersistStream Style- GalleryItem IStyleGalleryClass StyleGallery- Class AreaPatchStyleGalleryClass BackgroundStyleGalleryClass BorderStyleGalleryClass ColorRampStyleGalleryClass ColorStyleGalleryClass FillSymbolStyleGalleryClass LabelStyleGalleryClass LegendItemStylGalleryClass LinePatchStyleGalleryClass LineSymbolStyleGalleryClass MapGridStyleGalleryClass MarkerSymbolStyleGalleryClass NorthArrowStyleGalleryClass ScalebarStyleGalleryClass ScaleTextStyleGalleryClass TextSymbolStyleGalleryClass IPersistStream IStyleGallery IStyleGalleryStorage StyleGallery * ISpatialBookmark IPersist IPersistStream Spatial- Bookmark IPushPin PushPin IAOIBookmark AOI- Bookmark IFeatureBookmark Feature- Bookmark IClone IMapSurround IMapSurroundEvents IPersist IPersistStream MapSurround IActiveViewEvents ILegend Legend IClone ILegendFormat IPersist IPersistStream Legend- Format IPictureNorthArrow Picture- NorthArrow * IClone ILegendItem IPersist IPersistStream LegendItem IVerticalLegendItem Vertical- LegendItem IHorizontalLegendItem Horizontal- LegendItem IMarkerNorthArrow Marker- NorthArrow INorthArrow NorthArrow ISingleFillScaleBar SingleFill- ScaleBar SingleDivisionScaleBar SteppedScaleBar IDoubleFillScaleBar DoubleFill- ScaleBar AlternatingScaleBar DoubleAlternatingScaleBar HollowScaleBar IScaleLine ScaleLine SingleDivisionScaleLine SteppedScaleLine IOverview Overview IMapInset MapInset IScaleText IPropertySupport ITransformEvents ScaleText ILegendClassFormat IPersist IPersistStream Legend- Class- Format IScalebar IScaleMarks ITransformEvents Scalebar IPatch IPersist IPersistStream Patch IAreaPatch AreaPatch ILinePatch LinePatch IActiveViewEvents IDataWindow IDocumentEvents DataWindow IActiveViewEvents IDocumentEvents IOverviewWindow Overview- Window IActiveViewEvents IDocumentEvents ILensWindow IMapInsetWindow MapInset- Window IActiveViewEvents IDocumentEvents IEditEvents IFeatureLayerSelectionEvents ITableWindow Table- Window IGenericWindow Generic- Window IActiveView IActiveViewEvents IConnectionPoint IDisplayAdmin IGraphicsContainer IGraphicsContainerSelect IPageEvents IPageLayout IPersist IPersistStream ISelectionEvents ITransformEvents PageLayout IGraphicSnap IPageLayoutSnap IPersist GraphicSnap IGraphicSnapEnvironment IPersist IPersistStream Graphic- Snap- Environment GridSnap GuideSnap MarginSnap RulerSnap * IActiveView IActiveViewEvents IClipShapeSettings IConnectionPoint IDisplayAdmin IGraphicsContainer IMap IMapBookmarks IMapEvents IPersist IPersistStream ISelectionEvents ITableCollection ITransformEvents IViewManager Map IAnnotateLayerPropertie s IPersistStream Annotate- Layer- Properties IClone ILabelStyle IPersist IPersistStream LabelStyle ILineLabelPlacementPriorities LineLabel- Placement- Priorities IPointPlacementPriorities Point- Placement- Priorities * AppDisplay in ArcMap Simple- Display Display IConnectionPoint IDisplay IDisplayEvents Display- Trans- formation IConnectionPoint IDisplayTransformation ITransformation ITransformationEvents Screen- Display IScreenDisplay ITransformEvents FeatureLayer in Arc Map Proportional- Symbol- Renderer IDataExclusion IRotationRenderer IProportionalSymbolRenderer Scale- Dependent- Renderer IScaleDependentRenderer Class- Breaks- Renderer IClassBreaksRenderer IClassBreaksUIProperties IDataExclusion IDataSampling ILevelRenderer IRotationRenderer Symbol IClone IPersistStream ISymbol IMapLevel Legend- Group ILegendGroup IPersist IPersistStream Feature- Renderer IFeatureRenderer ILegendInfo IPersist IPersistStream Marker- Symbol IMarkerSymbol Picture- Marker- Symbol ICartographicMarkerSymbol IPictureMarkerSymbol Arrow- Marker- Symbol IArrowMarkerSymbol Simple- Marker- Symbol ISimpleMarkerSymbol Character- Marker- Symbol ICartographicMarkerSymbol ICharacterMarkerSymbol MultiLayer- Marker- Symbol IMultiLayerMarkerSymbol ILayerVisible ILayerColorLock IMask ColorRamp IClone IColorRamp MultiPart- ColorRamp IMultiPartColorRamp Random- ColorRamp IRandomColorRamp PresetColor- Ramp IPresetColorRamp Algorithmic- ColorRamp IIAlgorithmicColorRamp * Color IClone IColor GrayColor IGrayColor CmykColor ICmykColor IPostScriptColor RgbColor IRgbColor HlsColor IHlsColor HsvColor IHsvColor LineSymbol ILineSymbol HashLine- Symbol ICartographicLineSymbol IHashLineSymbol ILineProperties Cartographic- LineSymbol ICartographicLineSymbol ILineProperties MultiLayer- LineSymbol IMultiLayerLineSymbol ILayerVisible ILayerColorLock SimpleLine- Symbol ISimpleLineSymbol MarkerLine- Symbol ICartographicLineSymbol ILineProperties IMarkerLineSymbol Rubber- Envelope RubberPoint RubberLine Rubber- Polygon RubberBand IRubberBand Envelope- Tracker LineTracker Point- Tracker Polygon- Tracker Selection- Tracker ISelectionTracker Unique- Value- Renderer ILevelRenderer IUniqueValueRenderer IRotationRenderer BiUnique- Value- Renderer IBivariateRenderer Display- Feedback IDisplayFeedback Group- Feedback ISet NewLine- Feedback INewLineFeedback StretchLine- Feedback IStretchLineFeedback Resize- Envelope- Feedback IResizeEnvelopeFeedback New- MultiPoint- Feedback INewMultiPointFeedback New- Envelope- Feedback INewEnvelopeFeedback BezierMove- Point- Feedback ILineMovePointFeedback LineMove- Point- Feedback ILineMovePointFeedback Move- Envelope- Feedback IMoveEnvelopeFeedback Move- Geometry- Feedback IMoveGeometryFeedback MoveLine- Feedback IMoveLineFeedback Move- Polygon- Feedback IMovePolygonFeedback NewBezier- Curve- Feedback INewBezierCurveFeedback MoveImage- Feedback IMoveImageFeedback New- Polygon- Feedback INewPolygonFeedback Polygon- MovePoint- Feedback IPolygonMovePointFeedback Reshape- Feedback IReshapeFeedback Vertex- Feedback IVertexFeedback MovePoint- Feedback IMovePointFeedback Natural- Breaks Quantile Defined- Interval IClassifyMinMax IIntervalRange Classify IClassify Equal- Interval IClassifyMinMax Standard- Deviation IDeviationInterval Legend- Class ILegendClass IPersist IPersistStream 1..* Tin- Elevation- Renderer IClassBreaksUIProperties IDataSampling ITinColorRampRenderer ITinIllumination TinAspect- Renderer IClassBreaksUIProperties IDataSampling ITinColorRampRenderer ITinIllumination TinSlope- Renderer IClassBreaksUIProperties IDataSampling ITinColorRampRenderer ITinIllumination TinFace- Value- Renderer ITinIllumination ITinUniqueValueRenderer TinFace- Renderer ITinSingleSymbolRenderer IPropertySupport ITinIllumination TinNode- Renderer IPropertySupport ITinSingleSymbolRenderer TinNode- Value- Renderer ITinUniqueValueRenderer TinNode- Elevation- Renderer IClassBreaksUIProperties IDataSampling ITinColorRampRenderer TinEdge- Renderer IPropertySupport ITinSingleSymbolRenderer Tin- Breakline- Renderer ITinUniqueValueRenderer TinRenderer ILegendInfo IPersist IPersistStream ITinRenderer TinLayer in ArcMap BezierText- Path SimpleText- Path Balloon- Callout IBalloonCallout LineCallout ILineCallout TextPath IPersist ITextPath Text- Background IClone ITextBackground IPersist IPersistStream Callout ICallout ITextMargins MarkerText- Background IMarkerTextBackground Overposter- TextPath IOverposterTextPath TextSymbol IFormattedTextSymbol IMask IPropertySupport ISimpleTextSymbol ITextSymbol Simple- Renderer IDisplayAdmin ILevelRenderer IRotationRenderer IPropertySupport ISimpleRenderer ITransparencyRenderer Transparency- DisplayFilter IClone IDisplayFilter IPersist IPersistStream ITransparencyDisplayFilter FillSymbol IFillSymbol GradientFill- Symbol IGradientFillSymbol LineFill- Symbol ILineFillSymbol MarkerFill- Symbol IFillProperties IMarkerFillSymbol MultiLayer- FillSymbol IMultiLayerFillSymbol ILayerColorLock ILayerVisible PictureFill- Symbol IFillProperties IPictureFillSymbol SimpleFill- Symbol ISimpleFillSymbol Template IClone IPersistStream ITemplate Symbol- Selector ISymbolSelector Symbol- Editor ISymbolEditor Monitor- Settings IMonitorSettings CieLab- Conversion ICieLabConversion Color- Palette IColorPalette AnchorPoint IAnchorPoint Symbol- Background ISymbolBackground IBackground Line- Decoration IClone ILineDecoration IPersist IPersistStream Scale- Tracker IScaleTracker FontSize IClone IFontSize IPersist IPersistStream Color- Browser IColorBrowser Color- Selector IColorSelector Default- Legend- SymbolEditor ILegendSymbolEditor Geometry- Draw IGeometryDraw Illumination- Props IIlluminationProps Line- Decoration- Editor ILineDecorationEditor SimpleLine- Decoration- Element IClone ILineDecorationElement IPersist IPersistStream ISimpleLineDecorationElement Text- Background- Editor ITextBackgroundEdito r Text- Symbol- Editor ITextSymbolEditor 1..* Raster- Renderer ILegendInfo IPersist IPersistStream IRasterRenderer RasterLayer in ArcMap Raster- IdentifyObj IRasterIdentifyObj RasterUnique- Value- Renderer IRasterUniqueValueRendere r RasterStretch- ColorRamp- Renderer IRasterStretch IRasterStretchColorRampRenderer RasterRGB- Renderer IRasterRGBRenderer IRasterStretch RasterClassify -ColorRamp- Renderer IRasterStretchColorRampRenderer * GxTreeView IGxTreeView Gx- Geographic- View IGXCatalogEvents IGxGeographicView ITransformEvents Application GxContents- View IGxContentsView GxSelection IGxSelection IGxSelectionEvents GxFileFilter IGxFileFilter IGxFileFilterEvents GxMap IGxMap IGxThumbnail GxPrjFile IGxPrjFile GxDisk- Connection IGxCachedObjects IGxDiskConnection GxRemote- Database- Folder IGxRemoteDatabaseFolder GxFolder IGxCachedObjects IGxFolder GX- Database IGxCachedObjects IGXDatabase IMetadata GxFile IGxFile IMetadata GxObject IGxObject GxMetadata GxFilterAnnotationFeatureClasses GxFilterBasicTypes GxFilterCadDrawingDatasets GxFilterCoverageAnnotationClasses GxFilterDatasets GxFilterDatasetsAndLayers GxFilterFeatureClasses GxFilterFeatureDatasets GxFeatureDatasetsAndFeatureClasses GxFilterFiles GxFilterGeodatasets GxFilterLayers GxFilterMaps GxFilterPointFeatureClasses GxFilterPolygonFeatureClasses GxFilterPolylineFeatureClasses GxFilterRasterDatasets GxFilterSpatialReference GxFilterTables GxFilterTablesAndFeatureClasses GxFilterTINDatasets GxFilterWorkspaces GxObject- Filter IGxObjectFilter IGxDialog GxDialog GxLayer IGXCachedObjects IGxLayer IGxThumbnail GxCatalog IGxCatalog IGxDropTarget GxSpatial- ReferencesF older IGxSpatialReferencesFolder IGxSelectionEvents IGxView IToolBarDef GxView Gx- Application IGxApplication IGxCatalogEvents IGxCatalogEventsDisp Application GxTableView IGxCatalogEvents GxNew- Database IGxNewDatabase GxDataset IGxCachedObjects IGxDataset IGxThumbnail IMetadata IObjectClassSchemaEvents Geographic- Coordinate- SystemDialog IGeographicCoordinateSystemDialog Projected- Coordinate- SystemDialog IProjectedCoordinateSystemDialog Spatial- Reference- Dialog ISpatialReferenceDialog Table- Definition- Dialog ITableDefinitionDialog IConflictDisplay IConflictsWindow Conflicts Window IDigitizerButtons IDigitizerSetup Digitizer Extension TopoEditor ITopoEditor IFeatureSnapAgent Feature SnapAgent ICommand ISnappingWindow Snapping Command IFeatureCache Feature Cache IObjectInspector Feature Inspector ICommand ISketchTool ITool SketchTool ISketchOperation Sketch Operation IActiveViewEvents IEditEvents IEditLayers IEditor IEditProperties IEditSketch IExtension ISnapEnvironment Editor IExtension Extension ISnapAgent SnapAgent IEditTask EditTask 1..* 1..* 1..* IEditSelectionCache Edit- Selection- Cache IAcceleratorTable Accelerator- Table * IAccelerator Accelerator * ICommandItem Command- Item IAppROT IAppROTEvents AppROT IApplication AppRef IDocument Document ICommandBars Command- Bars 1..* ICommandBar Command- Bar IApplication Application IStatusBar StatusBar ICommand ICommandSubType IMenuDef IMultiItem ITool IToolbarDef IToolControl COM custom commands MacroItem ITemplates Templates IUID UID IComponentCategoryManager Component- Category- Manager UIControl IUIToolControlEvents UITool- Control IUIEditBoxControl IUIEditBoxControlEvents UIEditBox- Control IUIComboBoxControl IUIComboBoxControlEvents UICombo- BoxControl IUIButtonControlEvent s UIButton- Control QueryDef Geometry- Def Index QueryFilter SpatialFilter Row Feature RowBuffer 1..* 0..1 1..* Junction- Feature IJunctionFeature INetworkFeature INetworkFeatureEvents IGeometryDef IGeometryDefEdit IRow IRowEvents IValidate IFeature IFeatureBuffer IFeatureDraw IFeatureEdit IFeatureEvents IQueryFilter ISpatialFilter IQueryDef IRowBuffer IIndex IIndexEdit 1..* 1..* 1..* 1..* Object Feature- Element IFeatureElement Attributed- Relationship- Class Attributed- Relationship Network- Feature IObject IRowSubtypes IRelatedObjectEvents IClassExtension Class- Extension PropertySet IPropertySet EdgeFeature IEdgeFeature Complex- Edge- Feature IComplexEdgeFeature IComplexNetworkFeature Simple- Edge- Feature ISimpleEdgeFeature ISimpleNetworkFeature Relationship Class IRelationshipClass Fields IFields IFieldsEdit Indexes IIndexes Field IField IFieldEdit IModelInfo Feature- Class IFeatureClass IGeoDataset INetworkClass Feature- Cursor IFeatureCursor Cursor ICursor Relationship IRelationship Complex- Junction- Feature IComplexJunctionFeature IComplexNetworkFeature IFeatureConnect IFeatureSnap Simple- Junction- Feature ISimpleJunctionFeature ISimpleNetworkFeature Feature- Dataset- Name IFeatureDatasetName Dataset- Name Name IDatasetName ISQLPrivilege IName Geometric- Network- Name IGeometricNetworkName Raster- Dataset- Name IRasterDatasetName Relationship ClassName IRelationshipClassName TableName Feature- ClassName IFeatureClassName Workspace- Name IWorkspaceName TinName ITinName Raster- Dataset IRasterDataset TinDataset ITinDataset 0..1 Feature- Class- Extension IFeatureClassExtension IFeatureClassCreation (optional) IFeatureClassDescription (optional) IFeatureClassDraw (optional) IObjectClassExtension IObjectInspector (optional) IObjectClassDescription (optional) IObjectClassValidation (optional) IRelatedObjectClassEvents (optional) ObjectClass- Extension 2 * Table IClass ITable Selection- Set ISelectionSet IFeatureDataset INetworkCollection IFeatureClassContainer IRelationshipClassContainer Feature- Dataset ObjectClass IClassSchemaEdit IModelInfo IObjectClass ISubtypes IValidation GeoDataset IGeodataSchemaEdit IGeoDataset Dataset IDataset IDatasetEdit ISchemaLock Graph IDataset IGraph IFeatureClassContainer Geometric- Network IGeometricNetwork Workspace IDatabaseCompact IDataset IFeatureWorkspace IFeatureWorkspaceAnno ISpatialCacheManager ITransactions IWorkspace IWorkspaceDomains IWorkspaceEdit Domain IDomain Coded- Value- Domain ICodedValueDomain Range- Domain IRangeDomain * VersionedWorkspace in Versioning Sde- Workspace- Factory Access- Workspace- Factory Workspace- Factory IWorkspaceFactory Tin- Workspace- Factory ArcInfo- Workspace- Factory Shapefile- Workspace- Factory Versioning Versioned- Workspace IVersion IVersionEdit IVersionedWorkspace Enum- VersionInfo IEnumVersionInfo Enum- Conflict- Class IEnumConflictClass Table IConflictClass ITable IVersionedTable Difference- Cursor IDifferenceCursor VersionInfo IVersionInfo RasterBand Raster Raster IClone IGeoDataset IRaster IRasterBandCollection IRasterProps Raster- Workspace IDataset IPersistStream IRasterWorkspace IWorkspace Raster- Bands IEnumDataset IEnumRasterBand Raster- Histogram IRasterHistogram Raster- Statistics IRasterStatistics Raster- Workspace- Factory IWorkspaceFactory Raster- Cursor IRasterCursor PixelBlock IPixelBlock Raster- Dataset- Name IDatasetName IName IPersistStream IRasterDatasetName RasterBand- Name IDatasetName IName IPersistStream IRasterBandName Raster- Colormap IRasterColormap Raster Dataset IDataset IGeoDataset IGeoDatasetSchemaEdit IRasterBandCollection IRasterDataset IRasterPyramid IDataset IGeoDataset IRasterBand IRasterDataset IRasterProps IRasterPyramid IRasterTable ITable Coverage IWorkspace IArcInfoWorkspace IDataset IFeatureWorkspace IWorkspace IWorkspaceName Workspace- Name Dataset IDataset IDatasetEdit IArcInfoItems IArcInfoItemsEdit ArcInfoItems IArcInfoItem IArcInfoItemEdit ArcInfoItem 1..* * Dataset- Name IDatasetName IWorkspaceFactory ArcInfo- Workspace- Factory IWorkspaceName IFeatureDatasetName IMetadata Coverage- Name ICoverageFeatureClassName IFeatureClassName IMetadata Coverage- Feature- ClassName Feature- Dataset ICoverage Feature- Class ICoverageFeatureClas s Table IArcInfoTable Data converter IFieldError IFieldError Enum- FieldError IEnumFieldError Field- Checker IFieldChecker Feature- Progress IFeatureProgress Object- Loader IObjectLoader IFeatureProgress Object- LoaderUI IObjectLoaderUI IObjectLoaderUIProperties Feature- Data- Converter IFeatureDataConverter IFeatureProgress EnumInvalid- Object IEnumInvalidObject InvalidObject- Info IInvalidObjectInfo Junction- Connectivity- Rule Edge- Connectivity- Rule Attribute- Rule Relationship- Rule Connectivity- Rule Rule IJunctionConnectivityRule IEdgeConnectivityRule IConnectivityRule IAttributeRule IRelationshipRule IRule * Segment ISegment ISegmentM ISegmentZ ISegmentID Trans- formation ITransformation Ring IArea IRing Curve ICurve Polyline Polygon IArea IConstructCurve IMAware IMCollection IPointIDAware IPolygon IRelationalOperator ISpatialIndex ITopologicalOperator IZAware IZCollection EllipticArc IEllipticArc IConstructEllipticArc Geometry IClone IGeometry IProximityOperator ISupportErrorInfo ITransform2D * IConstructCurve IMAware IMCollection IMSegmentation IPointIDAware IPolyline IRelationalOperator ISpatialIndex ITopologicalOperator IZAware IZCollection Line IConstructLine ILine BezierCurve IBezierCurve IConstructBezierCurve Path IConstructPath IPath IPointCollection ISegmentCollection * Geometry- Collection IGeometryCollection Polycurve IGeometryCollection IHitTest IPersistStream IPointCollection IPolycurve ISegmentCollection IZ CircularArc ICircularArc IConstructCircularArc Multipoint IConstructMultipoint IGeometryCollection IHitTest IMAware IMCollection IMultipoint IPersistStream IPointCollection IPointIDAware IRelationalOperator ISpatialIndex ITopologicalEditor IZAware IZCollection Point IConstructPoint IHitTest IMAware IPersistStream IPoint IPointIDAware IRelationalOperator ITopologicalOperator IZAware Envelope IArea IEnvelope IHitTest IMAware IPersistStream IRelationalOperator IZAware Geometry- Bag IConstructGeometryCollection IEnumGeometry IGeometryCollection IRelationalOperator ISpatialIndex ITopologicalOperator Geometry- Environment IClassFactory IConstructAngle IConstructDomainExtent IGeometryEnvironment IGeometryFactory ISupportErrorInfo AffineTrans- formation2D IAffineTransformation2D ITransformation NetElement- Description INetElementDescription INetElementDescriptionEdit ForwardStar IForwardStar EdgeFlag IEdgeFlag NetFlag INetFlag JunctionFlag IJunctionFlag Street- Network IStreetNetwork Utility- Network IUtilityNetwork TraceFlow- Solver ITraceFlowSolver NetSolver INetSolver INetSolverWeights Network- Workspace INetworkWorkspace NetElement- Class INetElementClass Network INetAttributes INetAttributesEdit INetElements INetSchema INetSchemaEdit INetTopology INetTopologyEdit INetwork INetworkUpdate INetWeight INetWeightEdit NetWeight Network- Loader INetworkLoader INetworkLoaderProps Network- AnalysisExt INetworkAnalysisExt IActiveViewEvents IEditEvents IExtension IMapEvents INetworkAnalysisExtFlags INetworkAnalysisExtBarriers INetworkAnalysisExtResults INetworkAnalysisExtWeightFilter INetworkAnalysisExtWeights NetWeight- Association INetWeightAssociation INetWeightAssociationEdit Utility- Network- AnalysisExt ITraceTasks IUtilityNetworkAnalysisExt TraceTask ITraceTask ITraceTaskResults FindAncestorsTask FindConnectedTask FindLoopsTask TraceDownstreamTask TraceUpstreamTask TracePath- Task ITracePathTaskResults 0..1 FlagDisplay IFlagDisplay IFeatureDraw EdgeFlag- Display IEdgeFlagDisplay Junction- FlagDisplay IJunctionFlagDisplay NetElement- Barriers INetElementBarriers Selection- SetBarriers ISelectionSetBarriers 0..* 0..* Output * PageLayout in ArcMap Paper IClone IPaper IPersistStream ArcPress- Exporter IArcPressExporter IArcPressExporterDescriptionEnum ArcPress- Exporter- BSQ ArcPress- Exporter- PNG ArcPress- Exporter- JPEG ArcPress- Exporter- PCX ArcPress- Exporter- TIFF ArcPress- ExporterBIP ArcPress- ExporterBIL ArcPress- Exporter- Driver IArcPressExporterDriver EmfPrinter PsPrinter IPsPrinter ExportDialog IExportDialog ArcPress- Printer IJpegExporter IDibExporter IEmfExporter IPdfExporter IPsExporter Exporter IExporter IPDFDriver Printer IPrinter SpotPlate ISpotPlate IJpeg- Exporter DibExporter EmfExporter PdfExporter PsExporter PDFDriver IFontMap FontMap- Environment IFontMapEnvironment IPsDriver PsDriver FontMap- Collection IFontMapCollection FontMap IEmfPrinter

Transcript of ArcInfo 8 Object Model

Dat

a A

cces

sC

arto

gra

ph

yA

pp

licat

ion

s

The ArcInfo 8 Object Model ArcInfo 8.0.2 Release, February 2000

Copyright © 2000 Environmental Systems Research Institute, Inc. All rights reserved.

Types of Classes

An abstract class cannot be used to create new objectsbut is a specification for instances of subclasses (throughtype inheritance.)

A createable class can directly create objects bydeclaring a new object.

An instantiable class cannot directly create objects, butobjects of this class can be created as a property ofanother class or instantiated by objects from anotherclass.

Types of Relationships

Associations represent relationships between classes.They have defined multiplicities at both ends.

Type inheritance defines specialized classes of objectswhich share properties and methods with the superclassand have additional properties and methods.

Instantiation specifies that one object from one class hasa method with which it creates an object from anotherclass.

Aggregation is an asymmetric association in which anobject from one class is considered to be a 'whole' andobjects from the other class are considered 'parts'.

Composition is a stronger form of aggregation in whichobjects from the 'whole' class control the lifetime ofobjects from the 'part' class.

An N-ary association specifies that more than twoclasses are associated. A diamond is placed at theintersection of the association branches. This diagramhas several examples of an instantiation of an objectfrom two other objects.

A Multiplicity is a constraint on the number of objectsthat can be associated with another object. Association,aggregration and composition relationships havemultiplicities on both sides. This is the notation formultiplicities: 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

About this diagram How to read this diagramThe ArcInfo object model is pictured here. These are thesoftware COM components on which ArcCatalog andArcMap are built. Collectively, they are called ArcObjects.

These components are available for programming throughVBA or your standard Windows development platform.

This diagram is not just for programmers. Understanding thisobject model will give many users the conceptual insight tomake better maps and geographic databases.

DiagramKey

CreateableClass

AbstractClass

InstantiableClass

Typeinheritance

Instantiation

Association

Aggregation

Composition

1..*Multiplicity

wormhole toobject in other

library

Interface

Interface Interface

ArcMapArcCatalog Editor

Display

Network

Output

Geometry

SpatialReference

Geodatabase

Row

Feature

RowBuffer

IRowIRowEvents

IValidate

IFeatureIFeatureBufferIFeatureDraw

IFeatureEdit

IRowBuffer

Type InheritanceThis diagram illustrates the implicittype inheritance model in the ArcInfo8 component objects. Softwareinterfaces are not duplicated in thechild classes.

Row

Feature

IRowIRowBuffer

IRowEventsIValidate

IFeatureIFeatureBufferIFeatureDraw

IFeatureEditIRow

IRowBufferIRowEvents

IValidate

RowBufferIRowBuffer

The objects to the left show a sampleview of type inheritance. The objectsbelow show a flat view of the objects withtheir full list of interfaces. The two viewsare equivalent, but the type inheritanceview gives insight into the structuralcomposition of the object model.

Spatial-Reference

Datum

Prime-Meridian

Projection

Spheroid

AngularUnitIDatum

IDatumEdit

ISpatialReference

ProjectedCoordinate

System

IProjectedCoordinateSystemIProjectedCoordinateSystemEdit

Unknown-Coordinate-

System

IUnknownCoordinateSystem

IAngularUnitIAngularUnitEdit

IUnit

Geographic-Coordinate-

System

IGeographicCoordinateSystemIGeographicCoordinateSystemEdit

ISpheroidISpheroidEdit

IPrimeMeridianIPrimeMeridianEdit

IProjection

SpatialReference-

Environment

IClassFactoryISpatialReferenceFactory

Spatial-Reference-

Info

ISpatialReferenceInfo

LinearUnitILinearUnit

ILinearUnitEditIUnit

ParameterIParameter

ESRISpatial-Reference-

Info

IESRISpatialReferenceInfo

Transfor-mation

Coordinate-Frame-

Transformation

ICoordinateFrameTransformation

GeoTransfor-mation

Abridged-Molodensky-

Transformation

IMolodenskyTransformation

ITransformation

IGeoTransformation

PositionVector-Transformation

IPositionVectorTransformation

Molodensky-Transformation

IMolodenskyTransformation

Geocentric-Translation

IGeocentricTranslation

IAppDisplayIDisplay

IScreenDisplayAppDisplay

IApplicationIMxApplication Application

IDocumentIDocumentEvents

IDocumentEventsDispIMxDocument

MxDocument

IExtensionExtension

IPersistIPersistStream

ISnapGuidesSnapGuides

Ruler-Settings

IPersistIPersistStreamIRulerSettings

SnapGridIPersist

IPersistStreamISnapGrid

ICloneIMapGrid

IPersistIPersistStream

MapGrid

IGraticuleIMeasuredGrid Graticule

IIndexGridIndexGrid

IMeasuredGridIProjectedGrid Measured-

Grid

*IGridLabelIPersistStream GridLabel

ButtonTab-Style

Continuous-TabStyle

Rounded-TabStyle

IDMSGridLabel DMS-GridLabel

IMixedFontGridLabelIFormattedGridLabel MixedFont-

GridLabel

IFormattedGridLabel Formatted-GridLabel

IBackgroundTabStyle Background-TabStyle

Currency-Format

Scientific-Format

INumericFormat Numeric-Format

IRateFormatRateFormat

IAngleFormatAngleFormat

ICustomNumberFormat Custom-Number-Format

IndexGrid-TabStyleIIndexGridTabStyle

ILatLonFormat LatLon-Format

IPercentageFormat Percentage-Format

IFractionFormat Fraction-Format

ICustomOverlayGrid Custom-OverlayGrid

ISimpleMapGridBorder SimpleMap-GridBorder

IMapGridBorderIPersistStream MapGrid-

Border

ICalibratedMapGridBorder Calibrated-MapGrid-

Border

IMapGridFactory MapGrid-Factory

GraticuleFactoryIndexGridFactory

MeasuredGridFactoryCustomOverlayGridFactory

ICloneINumberFormat Number-

Format

Editor in Editor

Printer in Output

PageIPage

IPageEventsIPersist

IPersistStreamIPropertySupport

IAnnotateMap Annotate-Map

IBasicOverposterEventsIOverposter Basic-

Overposter

IPlacedObject Basic-Placed-Object

IBasicOverposterLayerPropertiesIOverposterLayerProperties

IClone

Basic-Overposter-

Layer-Properties

IAnnotateLayerPropertiesIAnnotateLayerTransformationPropertie

sIAnnotateProperties

ICloneILabelEngineLayerProperties

IPersistStream

LabelEngine-Layer-

Properties

ILabelEnvironment Label-Environment

ILocatorRectangle Locator-Rectangle

INumberDialog Number-Dialog

ISelectionEnvironmentIPersist

IPersistStream

Selection-Environment

IContentsViewIActiveViewEvents TOCCatalog

View

IContentsViewIActiveViewEvents TOCDisplay

View

MapGrid-Selector

BackgroundSelectorBorderSelectorLabelStyleSelectorLegendItemSelectorNorthArrowSelectorScaleBarSelectorScaleTextSelector

IMapGridSelector

StyleSelector

ILineLabelPosition LineLabel-Position

*

IMarkerElementIPropertySupport

Marker-Element

IGraphicElementITransform2D Graphic-

Element

IFrameElementIGroupElement

Group-Element

IElementEditVerticesILineElement

IPropertySupportLineElement

IElementEditCalloutIElementEditVertices

IPropertySupportITextElement

TextElement

ICircleElement Circle-Element

IRectangleElement Rectangle-Element

IEllipseElement Ellipse-Element

IElementEditVerticesIPolygonElement

Polygon-Element

IFillShapeElementIPropertySupport FillShape-

Element

ICloneIElement

IElementPropertiesIPersist

IPersistStream

Element

IFrameElementIPropertySuppor

tITransform2D

Frame-Element

IGraphicElement Frame-Element

IOleFrameIGraphicElement OleFrame

IMapFrameEventsIMapSurroundFrame

ITransformEvents

Map-Surround-

Frame

IActiveViewEventsIConnectionPoint

IDisplayEventsIMapFrame

IMapFrameEventsIMapGrids

IPersistStreamITransformEvents

MapFrame

BmpPicture-Element

EmfPicture-Element

IOlePictureElementIPictureElement

Picture-Element

FeatureClass in GeodatabaseRenderer in Display

IHyperlinkIPersistStream Hyperlink

*

*

*

Coverage-Annotation-

Layer

IBarrierPropertiesICoverageAnnotationLayer

IDataLayerIFeatureLayer

ILayerFieldsILayerInfo

IPersistIPersistStream

IFieldInfoIPersist

IPersistStreamFieldInfo

IGraphicsContainer

IGraphicsLayerISelectionEvents

Graphics-Layer

IDataLayerIDisplayAdmin

IDisplayFilterManagerILayerEffectsILayerFields

ILayerInfoILegendInfo

IPersistStreamITinLayer

TinLayer

IGeoDatasetILayer Layer

ICompositeLayerIDisplayAdmin

IGroupLayerIIdentify

ILayerInfoIPersist

IPersistStream

GroupLayer

IBarrierPropertiesIDataLayer

IFDOGraphicsLayerIFeatureLayer

IFeatureSelectionILayerEvents

ILayerInfoIOverflowGraphicsContainer

IPersistStream

FDO-Graphics-

Layer

ICompositeLayerICompositeGraphicsLayer

IGeoDatasetSchemaEditIGraphicsContainerSelect

Composite-Graphics-

Layer

IClassIDataLayer

IDisplayAdminIDisplayFilterManager

IFeatureLayerIFeatureLayerDefinition

IFeatureSelectionIGeoDataset

IGeoFeatureLayerIHotlinkContainer

IHyperlinkContainerIIdentify

ILayerDrawingPropertiesILayerEffectsILayerEventsILayerFields

ILayerInfoILegendInfo

IPropertySupportITable

Feature-Layer

IDataLayerIIdentify

ILayerEffectsILayerInfo

ILegendInfoIPersistStream

IRasterLayer

RasterLayer

IEnumStyleGalleryItem EnumStyle-GalleryItem

IStyleGalleryItemIPersistStream Style-

GalleryItem

IStyleGalleryClass StyleGallery-Class

AreaPatchStyleGalleryClassBackgroundStyleGalleryClassBorderStyleGalleryClassColorRampStyleGalleryClassColorStyleGalleryClassFillSymbolStyleGalleryClassLabelStyleGalleryClassLegendItemStylGalleryClassLinePatchStyleGalleryClassLineSymbolStyleGalleryClassMapGridStyleGalleryClassMarkerSymbolStyleGalleryClassNorthArrowStyleGalleryClassScalebarStyleGalleryClassScaleTextStyleGalleryClassTextSymbolStyleGalleryClass

IPersistStreamIStyleGallery

IStyleGalleryStorageStyleGallery

*ISpatialBookmark

IPersistIPersistStream

Spatial-Bookmark

IPushPinPushPin

IAOIBookmark AOI-Bookmark

IFeatureBookmark Feature-Bookmark

ICloneIMapSurround

IMapSurroundEventsIPersist

IPersistStream

MapSurround

IActiveViewEventsILegend Legend

ICloneILegendFormat

IPersistIPersistStream

Legend-Format IPictureNorthArrow Picture-

NorthArrow

*ICloneILegendItem

IPersistIPersistStream

LegendItem

IVerticalLegendItem Vertical-LegendItemIHorizontalLegendItem Horizontal-

LegendItem

IMarkerNorthArrow Marker-NorthArrow

INorthArrowNorthArrow

ISingleFillScaleBar SingleFill-ScaleBar

SingleDivisionScaleBarSteppedScaleBar

IDoubleFillScaleBar DoubleFill-ScaleBar

AlternatingScaleBarDoubleAlternatingScaleBar

HollowScaleBar

IScaleLineScaleLine

SingleDivisionScaleLineSteppedScaleLine

IOverviewOverview

IMapInsetMapInset

IScaleTextIPropertySupport

ITransformEventsScaleText

ILegendClassFormatIPersist

IPersistStream

Legend-Class-Format

IScalebarIScaleMarks

ITransformEventsScalebar

IPatchIPersist

IPersistStreamPatch

IAreaPatchAreaPatch

ILinePatchLinePatch

IActiveViewEventsIDataWindow

IDocumentEvents DataWindow

IActiveViewEventsIDocumentEventsIOverviewWindow

Overview-Window

IActiveViewEventsIDocumentEvents

ILensWindowIMapInsetWindow

MapInset-Window

IActiveViewEventsIDocumentEvents

IEditEventsIFeatureLayerSelectionEvents

ITableWindow

Table-Window

IGenericWindow Generic-Window

IActiveViewIActiveViewEvents

IConnectionPointIDisplayAdmin

IGraphicsContainerIGraphicsContainerSelect

IPageEventsIPageLayout

IPersistIPersistStream

ISelectionEventsITransformEvents

PageLayout

IGraphicSnapIPageLayoutSnap

IPersistGraphicSnap

IGraphicSnapEnvironmentIPersist

IPersistStream

Graphic-Snap-

EnvironmentGridSnap

GuideSnapMarginSnapRulerSnap

*IActiveView

IActiveViewEventsIClipShapeSettings

IConnectionPointIDisplayAdmin

IGraphicsContainerIMap

IMapBookmarksIMapEvents

IPersistIPersistStream

ISelectionEventsITableCollection

ITransformEventsIViewManager

Map

IAnnotateLayerProperties

IPersistStream

Annotate-Layer-

Properties

ICloneILabelStyle

IPersistIPersistStream

LabelStyle

ILineLabelPlacementPriorities LineLabel-Placement-

Priorities

IPointPlacementPriorities Point-Placement-

Priorities

*

AppDisplay inArcMap

Simple-Display

DisplayIConnectionPoint

IDisplayIDisplayEvents

Display-Trans-

formation

IConnectionPointIDisplayTransformation

ITransformationITransformationEvents

Screen-Display

IScreenDisplayITransformEvents

FeatureLayer inArc Map

Proportional-Symbol-Renderer

IDataExclusionIRotationRenderer

IProportionalSymbolRenderer

Scale-Dependent-Renderer

IScaleDependentRenderer

Class-Breaks-

Renderer

IClassBreaksRendererIClassBreaksUIProperties

IDataExclusionIDataSampling

ILevelRendererIRotationRenderer

SymbolIClone

IPersistStreamISymbol

IMapLevel

Legend-Group

ILegendGroupIPersist

IPersistStream

Feature-Renderer

IFeatureRendererILegendInfo

IPersistIPersistStream

Marker-Symbol

IMarkerSymbol

Picture-Marker-Symbol

ICartographicMarkerSymbolIPictureMarkerSymbol

Arrow-Marker-Symbol

IArrowMarkerSymbol

Simple-Marker-Symbol

ISimpleMarkerSymbol

Character-Marker-Symbol

ICartographicMarkerSymbolICharacterMarkerSymbol

MultiLayer-Marker-Symbol

IMultiLayerMarkerSymbolILayerVisible

ILayerColorLockIMask

ColorRampIClone

IColorRamp

MultiPart-ColorRamp

IMultiPartColorRamp

Random-ColorRamp

IRandomColorRamp

PresetColor-Ramp

IPresetColorRamp

Algorithmic-ColorRamp

IIAlgorithmicColorRamp

* ColorICloneIColor

GrayColorIGrayColor

CmykColorICmykColor

IPostScriptColor

RgbColorIRgbColor

HlsColorIHlsColor

HsvColorIHsvColor

LineSymbolILineSymbol

HashLine-Symbol

ICartographicLineSymbolIHashLineSymbol

ILineProperties

Cartographic-LineSymbol

ICartographicLineSymbolILineProperties MultiLayer-

LineSymbolIMultiLayerLineSymbol

ILayerVisibleILayerColorLock

SimpleLine-Symbol

ISimpleLineSymbol

MarkerLine-Symbol

ICartographicLineSymbolILineProperties

IMarkerLineSymbol

Rubber-Envelope RubberPoint

RubberLine Rubber-Polygon

RubberBandIRubberBand

Envelope-Tracker

LineTracker

Point-Tracker

Polygon-Tracker

Selection-TrackerISelectionTracker

Unique-Value-

Renderer

ILevelRendererIUniqueValueRenderer

IRotationRenderer

BiUnique-Value-

Renderer

IBivariateRenderer

Display-Feedback

IDisplayFeedback

Group-Feedback

ISet

NewLine-Feedback

INewLineFeedback StretchLine-Feedback

IStretchLineFeedback

Resize-Envelope-Feedback

IResizeEnvelopeFeedback

New-MultiPoint-Feedback

INewMultiPointFeedback

New-Envelope-Feedback

INewEnvelopeFeedback

BezierMove-Point-

Feedback

ILineMovePointFeedback

LineMove-Point-

Feedback

ILineMovePointFeedback

Move-Envelope-Feedback

IMoveEnvelopeFeedback

Move-Geometry-Feedback

IMoveGeometryFeedback

MoveLine-Feedback

IMoveLineFeedback

Move-Polygon-Feedback

IMovePolygonFeedback

NewBezier-Curve-

Feedback

INewBezierCurveFeedback

MoveImage-Feedback

IMoveImageFeedback

New-Polygon-Feedback

INewPolygonFeedback

Polygon-MovePoint-Feedback

IPolygonMovePointFeedback

Reshape-Feedback

IReshapeFeedback

Vertex-Feedback

IVertexFeedback

MovePoint-Feedback

IMovePointFeedback

Natural-Breaks Quantile

Defined-Interval

IClassifyMinMaxIIntervalRange

ClassifyIClassify

Equal-Interval

IClassifyMinMax

Standard-Deviation

IDeviationInterval

Legend-Class

ILegendClassIPersist

IPersistStream

1..*

Tin-Elevation-Renderer

IClassBreaksUIPropertiesIDataSampling

ITinColorRampRendererITinIllumination

TinAspect-Renderer

IClassBreaksUIPropertiesIDataSampling

ITinColorRampRendererITinIllumination

TinSlope-Renderer

IClassBreaksUIPropertiesIDataSampling

ITinColorRampRendererITinIllumination

TinFace-Value-

Renderer

ITinIlluminationITinUniqueValueRenderer

TinFace-Renderer

ITinSingleSymbolRendererIPropertySupport

ITinIllumination

TinNode-Renderer

IPropertySupportITinSingleSymbolRenderer

TinNode-Value-

Renderer

ITinUniqueValueRenderer

TinNode-Elevation-Renderer

IClassBreaksUIPropertiesIDataSampling

ITinColorRampRenderer

TinEdge-Renderer

IPropertySupportITinSingleSymbolRenderer

Tin-Breakline-Renderer

ITinUniqueValueRenderer

TinRendererILegendInfo

IPersistIPersistStream

ITinRenderer

TinLayer inArcMap

BezierText-Path

SimpleText-Path

Balloon-Callout

IBalloonCallout

LineCalloutILineCallout

TextPathIPersist

ITextPath

Text-Background

ICloneITextBackground

IPersistIPersistStream

CalloutICallout

ITextMarginsMarkerText-Background

IMarkerTextBackground

Overposter-TextPathIOverposterTextPath

TextSymbol

IFormattedTextSymbolIMask

IPropertySupportISimpleTextSymbol

ITextSymbol

Simple-Renderer

IDisplayAdminILevelRenderer

IRotationRendererIPropertySupportISimpleRenderer

ITransparencyRenderer

Transparency-DisplayFilter

ICloneIDisplayFilter

IPersistIPersistStream

ITransparencyDisplayFilter

FillSymbolIFillSymbol

GradientFill-Symbol

IGradientFillSymbol

LineFill-Symbol

ILineFillSymbol

MarkerFill-Symbol

IFillPropertiesIMarkerFillSymbol MultiLayer-

FillSymbolIMultiLayerFillSymbol

ILayerColorLockILayerVisible

PictureFill-Symbol

IFillPropertiesIPictureFillSymbol

SimpleFill-Symbol

ISimpleFillSymbol

TemplateIClone

IPersistStreamITemplate

Symbol-Selector

ISymbolSelector

Symbol-Editor

ISymbolEditorMonitor-Settings

IMonitorSettings

CieLab-Conversion

ICieLabConversion

Color-Palette

IColorPalette

AnchorPointIAnchorPoint

Symbol-Background

ISymbolBackgroundIBackground

Line-Decoration

ICloneILineDecoration

IPersistIPersistStream

Scale-Tracker

IScaleTracker

FontSizeIClone

IFontSizeIPersist

IPersistStream

Color-Browser

IColorBrowser

Color-Selector

IColorSelector

Default-Legend-

SymbolEditor

ILegendSymbolEditor

Geometry-Draw

IGeometryDraw

Illumination-Props

IIlluminationProps

Line-Decoration-

Editor

ILineDecorationEditor

SimpleLine-Decoration-

Element

ICloneILineDecorationElement

IPersistIPersistStream

ISimpleLineDecorationElement

Text-Background-

Editor

ITextBackgroundEditor

Text-Symbol-Editor

ITextSymbolEditor

1..*Raster-

RendererILegendInfo

IPersistIPersistStream

IRasterRenderer

RasterLayer inArcMap

Raster-IdentifyObj

IRasterIdentifyObj

RasterUnique-Value-

Renderer

IRasterUniqueValueRenderer

RasterStretch-ColorRamp-

Renderer

IRasterStretchIRasterStretchColorRampRenderer

RasterRGB-Renderer

IRasterRGBRendererIRasterStretch

RasterClassify-ColorRamp-

Renderer

IRasterStretchColorRampRenderer

*

ApplicationGxTreeViewIGxTreeView

ApplicationGx-

Geographic-View

IGXCatalogEventsIGxGeographicView

ITransformEvents

ApplicationGxContents-View

IGxContentsView

GxSelectionIGxSelection

IGxSelectionEvents

GxFileFilterIGxFileFilter

IGxFileFilterEvents

GxMapIGxMap

IGxThumbnail

GxPrjFileIGxPrjFile

GxDisk-Connection

IGxCachedObjectsIGxDiskConnection

GxRemote-Database-

Folder

IGxRemoteDatabaseFolder

GxFolderIGxCachedObjects

IGxFolder

GX-Database

IGxCachedObjectsIGXDatabase

IMetadata

GxFileIGxFile

IMetadata

GxObjectIGxObject

GxMetadata

GxFilterAnnotationFeatureClassesGxFilterBasicTypesGxFilterCadDrawingDatasetsGxFilterCoverageAnnotationClassesGxFilterDatasetsGxFilterDatasetsAndLayersGxFilterFeatureClassesGxFilterFeatureDatasetsGxFeatureDatasetsAndFeatureClassesGxFilterFilesGxFilterGeodatasetsGxFilterLayersGxFilterMapsGxFilterPointFeatureClassesGxFilterPolygonFeatureClassesGxFilterPolylineFeatureClassesGxFilterRasterDatasetsGxFilterSpatialReferenceGxFilterTablesGxFilterTablesAndFeatureClassesGxFilterTINDatasetsGxFilterWorkspaces

GxObject-Filter

IGxObjectFilterIGxDialogGxDialog

GxLayerIGXCachedObjects

IGxLayerIGxThumbnail

GxCatalogIGxCatalog

IGxDropTarget

GxSpatial-ReferencesF

olderIGxSpatialReferencesFolder

IGxSelectionEventsIGxView

IToolBarDefGxView ApplicationGx-

Application

IGxApplicationIGxCatalogEvents

IGxCatalogEventsDisp

ApplicationGxTableViewIGxCatalogEvents

GxNew-Database

IGxNewDatabase

GxDatasetIGxCachedObjects

IGxDatasetIGxThumbnail

IMetadataIObjectClassSchemaEvents

Geographic-Coordinate-

SystemDialog

IGeographicCoordinateSystemDialog

Projected-Coordinate-

SystemDialog

IProjectedCoordinateSystemDialog

Spatial-Reference-

Dialog

ISpatialReferenceDialog

Table-Definition-

Dialog

ITableDefinitionDialog

IConflictDisplayIConflictsWindow Conflicts

WindowIDigitizerButtons

IDigitizerSetup DigitizerExtension TopoEditor

ITopoEditor

IFeatureSnapAgent FeatureSnapAgent

ICommandISnappingWindow Snapping

Command

IFeatureCache FeatureCache

IObjectInspector FeatureInspector

ICommandISketchTool

IToolSketchTool

ISketchOperation SketchOperation

IActiveViewEventsIEditEventsIEditLayers

IEditorIEditProperties

IEditSketchIExtension

ISnapEnvironment

Editor

IExtensionExtension

ISnapAgent SnapAgentIEditTask

EditTask

1..* 1..*

1..*

IEditSelectionCache Edit-Selection-

Cache

IAcceleratorTable Accelerator-Table

*IAccelerator

Accelerator

*ICommandItem Command-

ItemIAppROTIAppROTEvents AppROT

IApplicationAppRef

IDocumentDocument

ICommandBars Command-Bars 1..*

ICommandBar Command-Bar

IApplicationApplication

IStatusBarStatusBar

ICommandICommandSubType

IMenuDefIMultiItem

IToolIToolbarDefIToolControl

COM customcommands

MacroItem

ITemplatesTemplates

IUIDUID

IComponentCategoryManager Component-Category-Manager

UIControl

IUIToolControlEvents UITool-Control

IUIEditBoxControlIUIEditBoxControlEvents UIEditBox-

ControlIUIComboBoxControl

IUIComboBoxControlEvents UICombo-BoxControl

IUIButtonControlEvents UIButton-

Control

QueryDef

Geometry-Def

Index

QueryFilter

SpatialFilter

Row

Feature

RowBuffer

1..*

0..1

1..*

Junction-Feature

IJunctionFeature

INetworkFeatureINetworkFeatureEvents

IGeometryDefIGeometryDefEdit

IRowIRowEvents

IValidate

IFeatureIFeatureBufferIFeatureDraw

IFeatureEditIFeatureEvents

IQueryFilter

ISpatialFilter

IQueryDef

IRowBuffer

IIndexIIndexEdit

1..*

1..*

1..* 1..*

Object

Feature-Element

IFeatureElement

Attributed-Relationship-

Class

Attributed-Relationship

Network-Feature

IObjectIRowSubtypes

IRelatedObjectEvents

IClassExtensionClass-

Extension

PropertySetIPropertySet

EdgeFeatureIEdgeFeature

Complex-Edge-

Feature

IComplexEdgeFeatureIComplexNetworkFeature

Simple-Edge-

Feature

ISimpleEdgeFeatureISimpleNetworkFeature

RelationshipClass

IRelationshipClassFields

IFieldsIFieldsEdit Indexes

IIndexes

FieldIField

IFieldEditIModelInfo

Feature-Class

IFeatureClassIGeoDataset

INetworkClass

Feature-Cursor

IFeatureCursor

CursorICursor

RelationshipIRelationship

Complex-Junction-Feature

IComplexJunctionFeatureIComplexNetworkFeature

IFeatureConnectIFeatureSnap

Simple-Junction-Feature

ISimpleJunctionFeatureISimpleNetworkFeature

Feature-Dataset-Name

IFeatureDatasetName

Dataset-Name

Name

IDatasetNameISQLPrivilege

IName

Geometric-Network-

Name

IGeometricNetworkName

Raster-Dataset-Name

IRasterDatasetName

RelationshipClassName

IRelationshipClassNameTableName

Feature-ClassName

IFeatureClassName

Workspace-Name

IWorkspaceName

TinNameITinName

Raster-Dataset

IRasterDataset

TinDatasetITinDataset

0..1

Feature-Class-

Extension

IFeatureClassExtensionIFeatureClassCreation (optional)

IFeatureClassDescription (optional)IFeatureClassDraw (optional)

IObjectClassExtensionIObjectInspector (optional)

IObjectClassDescription (optional)IObjectClassValidation (optional)

IRelatedObjectClassEvents (optional)

ObjectClass-Extension

2 *

TableIClassITable

Selection-Set

ISelectionSet

IFeatureDatasetINetworkCollection

IFeatureClassContainerIRelationshipClassContainer

Feature-Dataset

ObjectClassIClassSchemaEdit

IModelInfoIObjectClass

ISubtypesIValidation

GeoDatasetIGeodataSchemaEdit

IGeoDataset

DatasetIDataset

IDatasetEditISchemaLock

GraphIDataset

IGraphIFeatureClassContainer

Geometric-Network

IGeometricNetwork

Workspace

IDatabaseCompactIDataset

IFeatureWorkspaceIFeatureWorkspaceAnno

ISpatialCacheManagerITransactions

IWorkspaceIWorkspaceDomains

IWorkspaceEditDomain

IDomain

Coded-Value-

Domain

ICodedValueDomain

Range-Domain

IRangeDomain

*

VersionedWorkspace inVersioning

Sde-Workspace-

Factory

Access-Workspace-

Factory

Workspace-Factory

IWorkspaceFactory

Tin-Workspace-

Factory

ArcInfo-Workspace-

Factory

Shapefile-Workspace-

Factory

VersioningVersioned-Workspace

IVersionIVersionEdit

IVersionedWorkspace

Enum-VersionInfo

IEnumVersionInfo

Enum-Conflict-

Class

IEnumConflictClass

TableIConflictClass

ITableIVersionedTable

Difference-Cursor

IDifferenceCursorVersionInfo

IVersionInfo

RasterBand

RasterRasterIClone

IGeoDatasetIRaster

IRasterBandCollectionIRasterProps

Raster-Workspace

IDatasetIPersistStream

IRasterWorkspaceIWorkspace

Raster-Bands

IEnumDatasetIEnumRasterBand

Raster-Histogram

IRasterHistogram

Raster-Statistics

IRasterStatistics

Raster-Workspace-

Factory

IWorkspaceFactory

Raster-Cursor

IRasterCursor

PixelBlockIPixelBlock

Raster-Dataset-Name

IDatasetNameIName

IPersistStreamIRasterDatasetName

RasterBand-Name

IDatasetNameIName

IPersistStreamIRasterBandName

Raster-Colormap

IRasterColormap

RasterDataset

IDatasetIGeoDataset

IGeoDatasetSchemaEditIRasterBandCollection

IRasterDatasetIRasterPyramid

IDatasetIGeoDatasetIRasterBand

IRasterDatasetIRasterProps

IRasterPyramidIRasterTable

ITable

CoverageIWorkspace

IArcInfoWorkspaceIDataset

IFeatureWorkspaceIWorkspace

IWorkspaceName Workspace-Name

DatasetIDataset

IDatasetEdit

IArcInfoItemsIArcInfoItemsEdit ArcInfoItems

IArcInfoItemIArcInfoItemEdit ArcInfoItem

1..*

*Dataset-

NameIDatasetName

IWorkspaceFactory ArcInfo-Workspace-

Factory

IWorkspaceNameIFeatureDatasetName

IMetadata

Coverage-Name

ICoverageFeatureClassNameIFeatureClassName

IMetadata

Coverage-Feature-

ClassName

Feature-Dataset

ICoverage

Feature-Class

ICoverageFeatureClass

TableIArcInfoTable

Data converterIFieldError

IFieldError

Enum-FieldError

IEnumFieldError

Field-Checker

IFieldCheckerFeature-Progress

IFeatureProgress

Object-Loader

IObjectLoaderIFeatureProgress

Object-LoaderUI

IObjectLoaderUIIObjectLoaderUIProperties

Feature-Data-

Converter

IFeatureDataConverterIFeatureProgress

EnumInvalid-Object

IEnumInvalidObject InvalidObject-Info

IInvalidObjectInfo

Junction-Connectivity-

Rule

Edge-Connectivity-

Rule

Attribute-Rule

Relationship-Rule

Connectivity-Rule

Rule

IJunctionConnectivityRuleIEdgeConnectivityRule

IConnectivityRuleIAttributeRule IRelationshipRule

IRule

*

*SegmentISegment

ISegmentMISegmentZ

ISegmentID

Trans-formation

ITransformation

RingIAreaIRing

CurveICurve

Polyline Polygon

IAreaIConstructCurve

IMAwareIMCollection

IPointIDAwareIPolygon

IRelationalOperatorISpatialIndex

ITopologicalOperatorIZAware

IZCollection

EllipticArcIEllipticArc

IConstructEllipticArc

GeometryIClone

IGeometryIProximityOperator

ISupportErrorInfoITransform2D

*

IConstructCurveIMAware

IMCollectionIMSegmentation

IPointIDAwareIPolyline

IRelationalOperatorISpatialIndex

ITopologicalOperatorIZAware

IZCollection

LineIConstructLine

ILine BezierCurveIBezierCurve

IConstructBezierCurve

PathIConstructPath

IPathIPointCollection

ISegmentCollection *

Geometry-Collection

IGeometryCollection

Polycurve

IGeometryCollectionIHitTest

IPersistStreamIPointCollection

IPolycurveISegmentCollection

IZ

CircularArcICircularArc

IConstructCircularArc

Multipoint

IConstructMultipointIGeometryCollection

IHitTestIMAware

IMCollectionIMultipoint

IPersistStreamIPointCollection

IPointIDAwareIRelationalOperator

ISpatialIndexITopologicalEditor

IZAwareIZCollection

Point

IConstructPointIHitTest

IMAwareIPersistStream

IPointIPointIDAware

IRelationalOperatorITopologicalOperator

IZAware

Envelope

IAreaIEnvelope

IHitTestIMAware

IPersistStreamIRelationalOperator

IZAware

Geometry-Bag

IConstructGeometryCollectionIEnumGeometry

IGeometryCollectionIRelationalOperator

ISpatialIndexITopologicalOperator

Geometry-Environment

IClassFactoryIConstructAngle

IConstructDomainExtentIGeometryEnvironment

IGeometryFactoryISupportErrorInfo

AffineTrans-formation2D

IAffineTransformation2DITransformation

NetElement-Description

INetElementDescriptionINetElementDescriptionEdit

ForwardStarIForwardStar

EdgeFlagIEdgeFlag

NetFlagINetFlag

JunctionFlagIJunctionFlag

Street-Network

IStreetNetwork

Utility-Network

IUtilityNetwork

TraceFlow-Solver

ITraceFlowSolver

NetSolverINetSolver

INetSolverWeights

Network-Workspace

INetworkWorkspace

NetElement-Class

INetElementClass

Network

INetAttributesINetAttributesEdit

INetElementsINetSchema

INetSchemaEditINetTopology

INetTopologyEditINetwork

INetworkUpdate

INetWeightINetWeightEdit NetWeight

Network-Loader

INetworkLoaderINetworkLoaderProps

Network-AnalysisExt

INetworkAnalysisExtIActiveViewEvents

IEditEventsIExtension

IMapEventsINetworkAnalysisExtFlags

INetworkAnalysisExtBarriersINetworkAnalysisExtResults

INetworkAnalysisExtWeightFilterINetworkAnalysisExtWeights

NetWeight-Association

INetWeightAssociationINetWeightAssociationEdit

Utility-Network-

AnalysisExt

ITraceTasksIUtilityNetworkAnalysisExt

TraceTaskITraceTask

ITraceTaskResults

FindAncestorsTaskFindConnectedTask

FindLoopsTaskTraceDownstreamTask

TraceUpstreamTask

TracePath-Task

ITracePathTaskResults

0..1

FlagDisplayIFlagDisplay

IFeatureDraw

EdgeFlag-Display

IEdgeFlagDisplay

Junction-FlagDisplay

IJunctionFlagDisplay

NetElement-Barriers

INetElementBarriers

Selection-SetBarriers

ISelectionSetBarriers

0..*

0..*

Output

*

PageLayout inArcMap

PaperICloneIPaper

IPersistStream

ArcPress-Exporter

IArcPressExporterIArcPressExporterDescriptionEnum

ArcPress-Exporter-

BSQ

ArcPress-Exporter-

PNG

ArcPress-Exporter-

JPEG

ArcPress-Exporter-

PCX

ArcPress-Exporter-

TIFF

ArcPress-ExporterBIP

ArcPress-ExporterBIL

ArcPress-Exporter-

Driver

IArcPressExporterDriverEmfPrinter

PsPrinterIPsPrinter

ExportDialogIExportDialog

ArcPress-Printer

IJpegExporter

IDibExporter

IEmfExporter IPdfExporter

IPsExporter

ExporterIExporter

IPDFDriver

PrinterIPrinter

SpotPlateISpotPlate

IJpeg-Exporter

DibExporter

EmfExporter PdfExporter

PsExporter

PDFDriver

IFontMap

FontMap-Environment

IFontMapEnvironment

IPsDriverPsDriver

FontMap-Collection

IFontMapCollection

FontMap

IEmfPrinter