Feature
图元由它们的几何体、样式、数据源、键和属性描述。通常,图元为表中的行。图元的几
何体是 FeatureGeometry 对象。FeatureGeometries 可以包含给定的区域 (MultiPolygon),位
置(Points、MultiPoints)和距离(MultiCurves、LegacyArcs)。从 FeatureGeometry 派生和
用于地图图元的其它 Geometry 类是 FeatureGeometryCollection 和 LegacyText。(矩形、有
圆角的矩形和椭圆对象也从 FeatureGeometry 派生,但主要用于外观显示。)
计算机化地图其中一项主要用途就是获取关于图元的信息。在 MapXtreme 2005 中,可通过
多种方法将图元返回到 FeatureCollections,例如,使用构架从空白创建,使用选择集工具
或方法选择,或通过搜索这些满足特定标准集合的工具或方法的 Catalog 选择。
可以使用 Load 方法强制 Load。Feature 保存回表之前,对 Feature 所做的更改不反映在底层
表(如果有的话)中。使用 Update 方法、UpdateFeature 或 InsertFeature 可以完成该操作。
此外,可以使用 DiscardEdits 方法在保存编辑之前丢弃任何对 Feature 对象所做的编辑。
Feature 具有描述 Feature 属性的构架。Columns 属性描述该构架。
从表检索图元
Table 是 Feature 集合的一种类型。因此,表内的 Features 可以直接枚举。例如:
VB 示例:
Dim ftr As Feature
For Each ftr In table
...
表的默认图元枚举符内部使用具有以下命令的 MIDataReader:
command.CommandText = "Select MI_Key, * From /"" + table.Alias + "/"";
要检索表中图元的子集,请使用某一种 Catalog.Search 方法或
MICommand.ExecuteFeatureCollection 方法。
修改表中的图元
要修改表中的图元,请使用以下方法之一。
• Feature.Update
• Table.UpdateFeature
• Table.InsertFeature