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