用于对记录集进行同一方式的叠加分析,结果数据集中保留被同一运算的记录集的全部对象和被同一运算的记录集与用来进行同一运算的记录集相交的对象。用于进行同一运算的记录集、被同一运算的记录集以及结果数据集的地理坐标系必须一致。
命名空间:
SuperMap.Analyst.SpatialAnalyst程序集: SuperMap.Analyst.SpatialAnalyst (in SuperMap.Analyst.SpatialAnalyst)
版本: dll
语法
C# |
---|
public static bool Identity( Recordset recordset, Recordset identityRecordset, DatasetVector resultDataset, OverlayAnalystParameter parameter ) |
参数
- recordset
- Type: SuperMap.Data..::.Recordset
被同一运算的记录集,也称为第一记录集,可以是点、线、面类型。
- identityRecordset
- Type: SuperMap.Data..::.Recordset
用来进行同一运算的记录集,也称为第二记录集,必须为面类型。
- resultDataset
- Type: SuperMap.Data..::.DatasetVector
存放分析结果的数据集。
- parameter
- Type: SuperMap.Analyst.SpatialAnalyst..::.OverlayAnalystParameter
叠加分析的参数对象,该对象用于设置分析时的保留字段等分析参数。
返回值
一个布尔值,如果成功返回 true,否则返回 false。备注
有关同一运算的详细介绍,请参见另一重载方法 Identity 的介绍。
注意,用于进行同一运算的记录集、被同一运算的记录集以及结果数据集的地理坐标系必须一致。
示例
以下代码示范了根据给定的被操作的面记录集、用于操作的面记录集和目标数据源进行同一方式的叠加分析。
CopyC#
public void OverlayAnalystIdentity(Recordset recordsetOperated, Recordset recordsetOperate, Datasource targetDatasource) { //创建一个面矢量数据集,用于存储同一运算获得的结果 String resultDatasetIdentityName = targetDatasource.Datasets.GetAvailableDatasetName("resultDatasetIdentity"); DatasetVectorInfo datasetvectorInfoIdentity = new DatasetVectorInfo(); datasetvectorInfoIdentity.Type = DatasetType.Region; datasetvectorInfoIdentity.Name = resultDatasetIdentityName; datasetvectorInfoIdentity.EncodeType = EncodeType.None; DatasetVector resultDatasetIdentity = targetDatasource.Datasets.Create(datasetvectorInfoIdentity); //设置叠加分析参数 OverlayAnalystParameter overlayAnalystParamIdentity = new OverlayAnalystParameter(); overlayAnalystParamIdentity.Tolerance = 0.0089078724; //调用同一运算方法实同一运算 OverlayAnalyst.Identity(recordsetOperated, recordsetOperate, resultDatasetIdentity, overlayAnalystParamIdentity); }