栅格代数运算

栅格代数运算是运用代数学的观点对地理特征和现象进行空间分析,即对一个或多个栅格数据进行数学运算和函数运算。同时,运算得出的结果栅格数据的像元值是由一个或多个输入栅格数据的同一位置的像元值通过代数运算得到的。

为了更好的实现栅格代数运算功能,SuperMap 提供了丰富的运算符、函数和运算表达式,除了常用的算术运算(如加、减、乘、除和取整等)方法,还支持通过用户自定义的表达式,来进行栅格的算术运算、条件运算、逻辑运算、函数运算(包括常用函数、三角函数等)和复合运算,用户可以通过栅格代数运算实现多种栅格分析需求。

栅格代数运算接口使用方法如下:

//创建栅格代数运算服务实例
var mathExpressionAnalysisService = L.supermap.spatialAnalystService(serviceUrl);
//创建栅格代数运算参数实例
var mathExpressionAnalysisParameters = new SuperMap.MathExpressionAnalysisParameters({
    //指定数据集,必设
    dataset: "JingjinTerrain@Jingjin",
    //要执行的栅格运算代数表达式,必设
    expression: "[Jingjin.JingjinTerrain] + 600",
    //存储结果数据集的数据源,必设
    targetDatasource: "Jingjin",
    //结果数据集名称,必设
    resultGridName: "MathExpressionAnalysis_Result",
    deleteExistResultDataset: true
});
//向iServer发起栅格代数运算请求
mathExpressionAnalysisService.mathExpressionAnalysis(mathExpressionAnalysisParameters, function (serviceResult) {
    //获取服务端返回的数据
    var mathExpressionAnalysisResult = serviceResult.result;
});

查看完整示例代码

results matching ""

    No results matching ""