从一个矢量数据集的关联属性表中的 X、Y 坐标字段的创建点数据集。即以该矢量数据集的属性表中的x 、y坐标字段作为数据集的x、y坐标来创建点数据集。
命名空间:
SuperMap.Data程序集: SuperMap.Data (in SuperMap.Data)
版本: dll
语法
C# |
---|
public DatasetVector FieldToPointDataset( DatasetVector srcDataset, string desDatasetName, string fieldX, string fieldY ) |
参数
- srcDataset
- Type: SuperMap.Data..::.DatasetVector
关联属性表中带有坐标字段的矢量数据集。
- desDatasetName
- Type: System..::.String
待创建的点数据集的名称。
- fieldX
- Type: System..::.String
表示点横坐标的字段。
- fieldY
- Type: System..::.String
表示点纵坐标的字段。
返回值
新创建的点数据集。备注
注意:待创建的点数据集名称不能与数据源中已有的数据集重名。
示例
以下代码示范如何从矢量数据集的字段创建点数据集,如何创建内点数据集,如何将字符型字段转换成文本数据集,如何将记录集的内容生成一个相应类型的矢量数据集。
假设打开一个工作空间workspace,工作空间中有一个数据源 datasource,该数据源中的一个数据集{datasetVector}有两个名为 SQKM 和 SQMI 的 Double 类型字段,以及名为 Capital 的 String 类型字段。
CopyC#
public void TestToDataset(Workspace workspace, Datasource datasource) { // 从 datasetVector 属性表的 SQKM、SQMI 字段创建点数据集 DatasetVector datasetVector = datasource.Datasets["world"] as DatasetVector; String datasetNamePoint = datasource.Datasets.GetAvailableDatasetName("point"); datasource.FieldToPointDataset(datasetVector, datasetNamePoint, "SQKM", "SQMI"); // 创建 datasetVector 的内点数据集 String datasetNameInnerPoint = datasource.Datasets.GetAvailableDatasetName("innerPoint"); datasource.InnerPointToDataset(datasetVector, datasetNameInnerPoint); // 用于将 datasetVector 的“Capital”字段生成一个文本数据集 String datasetNameText = datasource.Datasets.GetAvailableDatasetName("text"); datasource.LabelToTextDataset(datasetVector, datasetNameText, "Capital", new TextStyle()); // 获得 SmID>10 的记录并保存至 Record 数据集中 Recordset recordset = datasetVector.Query("SmID >10", CursorType.Static); String datasetName = datasource.Datasets.GetAvailableDatasetName("fromRecordset"); datasource.RecordsetToDataset(recordset, datasetName); recordset.Dispose(); }