ESRI Feature.
Use the ISupportErrorInfo method InterfaceSupportsErrorInfo to determine if the object supports extended error information. If the object supports extended error info, VC++ developers should use the OLE/COM IErrorInfo interface to access the ErrorInfo object. Visual Basic developers should use the global error object Err to retrieve this extended error information.
| Interfaces | Description |
|---|---|
| IFeature | Provides access to members that return and set properties of a feature. |
| IFeatureBuffer | Provides access to setting and returning the default shape in the feature buffer. |
| IFeatureChanges | Provides access to members that provide information about changes in the feature's shape. |
| IFeatureDraw | Provides access to members that control custom drawing by a feature. |
| IFeatureEdit2 | Provides access to members implemented to customize feature editing. |
| IFeatureEvents | Provides access to events that happen when a feature is split or merged. |
| IFeatureProject | Provides access to project a feature's geometry. |
| IFeatureSimplify | Provides access to simplifying a feature's geometry. |
| IObject | Provides access to the class the row belongs to. |
| IRelatedObjectEvents | Provides access to events that occur when related objects change, move or rotate. |
| IRow | Provides access to members that return information about the row, the table the row belongs to and storing and deleting the row. |
| IRowBuffer | Provides access to members used for getting and modifying a rows values and for getting the fields in the row. |
| IRowChanges | Provides access to members that return information about changed values and the original value in a row. |
| IRowCompare | Provides access to a member that compares two rows. |
| IRowEdit | Implement this interface to customize object editing. |
| IRowEvents | Provides access to events that occur when an object is modified, created or deleted. |
| IRowSubtypes | Provides access to members to return and modify the subtype code and to initialize the default values. |
| ISupportErrorInfo | Indicates whether a specific interface can return Automation error objects. |
| IValidate | Provides access to members to validate individual features. |
A Feature is a spatial Object. It is also a member of a feature class, being a row in the feature class table. A feature has an associated shape, the type of which is defined by the feature class. The possible shape objects are Point, Multipoint, Polyline, and Polygon—these are all objects in the Geometry object model. See the discussion on the GeometryDef object for more details.
Mostly you will deal with simple features, but there are various special kinds as defined by the esriFeatureType enumeration. These include annotation, dimension, and various network features.
Enumeration esriFeatureType Feature Types:
1 - esriFTSimple
7 - esriFTSimpleJunction
8 - esriFTSimpleEdge
9 - esriFTComplexJunction
10 - esriFTComplexEdge
11 - esriFTAnnotation
12 - esriFTCoverageAnnotation
13 - esriFTDimension
Using C++ you can also define your own custom features with specialized behavior. One thing to note is that all features still have the same core geometry types of point, multipoint, line and polygon; an example of this is annotation features, whose geometry type is polygon—this represents the envelope of the text element.
All the discussion for Row and Object is appropriate to Feature objects. In fact, because you will normally be dealing with geographic data, you will deal with features much more than simple rows.
IFeature Interface | IFeatureCursor Interface