跳过导航链接
com.supermap.analyst.spatialanalyst

类 OverlayAnalyst

参数:
dataset - 被对称差分析的源数据集,必须是面数据集。
xORDataset - 用于对称差分析的数据集,必须是面数据集。
resultDataset - 存放分析结果的数据集。
parameter - 叠加分析的参数对象,该对象用于设置分析时的保留字段等分析参数。
返回:
分析成功返回值为 true,失败返回值为 false。
示范代码:
以下代码示范了对两个面数据集进行对称差分析运算
    public void overlayAnalystXOR1() {
        // 返回被对称差分析的数据集与用于对称差分析的数据集
        Workspace workspace = new Workspace();
        DatasourceConnectionInfo datasourceConnectionInfo = new
                DatasourceConnectionInfo(
                "G:/SampleData/changchun/changchun.udb", "changchun", "");
        Datasource targetDatasource = workspace.getDatasources().open(
                datasourceConnectionInfo);
        DatasetVector datasetXORed = (DatasetVector) targetDatasource.
                                     getDatasets().get("Frame_R");
        DatasetVector datasetXOR = (DatasetVector) targetDatasource.getDatasets().
                                   get("ResidentialArea");

        // 创建一个面矢量数据集,用于存储对称差分析返回的结果
        String resultDatasetXORName = targetDatasource.getDatasets().
                                      getAvailableDatasetName(
                "resultDatasetXOR");
        DatasetVectorInfo datasetvectorInfoXOR = new DatasetVectorInfo();
        datasetvectorInfoXOR.setType(DatasetType.REGION);
        datasetvectorInfoXOR.setName(resultDatasetXORName);
        datasetvectorInfoXOR.setEncodeType(EncodeType.NONE);
        DatasetVector resultDatasetXOR = targetDatasource.getDatasets().create(
                datasetvectorInfoXOR);

        // 设置叠加分析参数
        OverlayAnalystParameter overlayAnalystParamXOR = new
                OverlayAnalystParameter();
        overlayAnalystParamXOR.setTolerance(0.0089078724);

        // 调用对称差分析方法对称差分析
        OverlayAnalyst.xOR(datasetXORed, datasetXOR, resultDatasetXOR,
                           overlayAnalystParamXOR);

        //释放工作空间占有的资源
        workspace.dispose();
    }
参数:
dataset - 被对称差分析的源数据集,必须是面数据集。
xORDataset - 用于对称差分析的数据集,必须是面数据集。
resultDataset - 存放分析结果的数据集。
parameter - 叠加分析的参数对象,该对象用于设置分析时的保留字段等分析参数。
listeners - 用于接收进度条事件的监听器。
返回:
分析成功返回值为 true,失败返回值为 false。
示范代码:
以下代码示范了对两个面数据集进行对称差分析运算
    public void overlayAnalystXOR1() {
        // 返回被对称差分析的数据集与用于对称差分析的数据集
        Workspace workspace = new Workspace();
        DatasourceConnectionInfo datasourceConnectionInfo = new
                DatasourceConnectionInfo(
                "G:/SampleData/changchun/changchun.udb", "changchun", "");
        Datasource targetDatasource = workspace.getDatasources().open(
                datasourceConnectionInfo);
        DatasetVector datasetXORed = (DatasetVector) targetDatasource.
                                     getDatasets().get("Frame_R");
        DatasetVector datasetXOR = (DatasetVector) targetDatasource.getDatasets().
                                   get("ResidentialArea");

        // 创建一个面矢量数据集,用于存储对称差分析返回的结果
        String resultDatasetXORName = targetDatasource.getDatasets().
                                      getAvailableDatasetName(
                "resultDatasetXOR");
        DatasetVectorInfo datasetvectorInfoXOR = new DatasetVectorInfo();
        datasetvectorInfoXOR.setType(DatasetType.REGION);
        datasetvectorInfoXOR.setName(resultDatasetXORName);
        datasetvectorInfoXOR.setEncodeType(EncodeType.NONE);
        DatasetVector resultDatasetXOR = targetDatasource.getDatasets().create(
                datasetvectorInfoXOR);

        // 设置叠加分析参数
        OverlayAnalystParameter overlayAnalystParamXOR = new
                OverlayAnalystParameter();
        overlayAnalystParamXOR.setTolerance(0.0089078724);

        // 调用对称差分析方法对称差分析
        OverlayAnalyst.xOR(datasetXORed, datasetXOR, resultDatasetXOR,
                           overlayAnalystParamXOR);

        //释放工作空间占有的资源
        workspace.dispose();
    }
跳过导航链接

Copyright © 2021–2024 SuperMap. All rights reserved.