请问一下,参照官网的案例,leaflet使用自己的数据做表面分析(等值线提取)一直报错,{"succeed":false,"error":{"code":400,"errorMsg":"IllegalArgumentException"}},查了一下代码,发现serviceResult.result是undefined,这种情况该怎么解决。
1.关键代码
function AVGTMP(){
var latlngs = [[25,118],[40,118],[40,100],[25,100]];
region = L.polygon(latlngs , {color:'red'}).addTo(map);
//参数设置
surfaceAnalystParameters = new SuperMap.DatasetSurfaceAnalystParameters({
extractParameter: new SuperMap.SurfaceAnalystParametersSetting({
datumValue: 0,// 表面分析中提取等值线基准值
interval: 2,// 等值距,两条等值线之间的间隔值
resampleTolerance: 0,// 重采样容限
smoothMethod: SuperMap.SmoothMethod.BSPLINE,// 光滑处理所使用的方法
smoothness: 3, // 等值线的光滑度
clipRegion: region// 裁剪对象
}),
dataset: "CityClimate@ChinaClimate",//数据集
resolution: 9000, // 中间结果分辨率
zValueFieldName: "Temperature"// 用于提取操作的字段名称
});
surfaceAnalystService = L.supermap.spatialAnalystService(serviceUrl);
console.log(surfaceAnalystService);
surfaceAnalystService.surfaceAnalysis(surfaceAnalystParameters, function (serviceResult) {
var result = serviceResult.result;
console.log(surfaceAnalystParameters);
if (result && result.recordset && result.recordset.features) {
resultLayer = L.geoJSON(result.recordset.features, {weight: 3}).addTo(map);
} else {
alert(serviceResult.error.errorMsg);
}
});
}
2.提取范围图
