不能,像面积测量,会报错:
你好,我见API文档,new SuperMap.MeasureParameters(geometry, options)中geometry参数支持SuperMap.Geometry.Polygon格式,但我写的代码如下,
var points =[new SuperMap.Geometry.Point(584834.1666666956,2751694.666664766), new SuperMap.Geometry.Point(587480.0000000328,2704069.6666646586), new SuperMap.Geometry.Point(637750.8333341345,2698777.999997958), new SuperMap.Geometry.Point(645688.3333345731,2738465.4999980377) ], linearRings = new SuperMap.Geometry.LinearRing(points), region = new SuperMap.Geometry.Polygon([linearRings]); var areaMeasureParam = new SuperMap.MeasureParameters(region);
var projPolygon = new SuperMap.Geometry.Polygon([projP]);
var areaMeasureParam = new SuperMap.MeasureParameters(projPolygon);
L.supermap
.measureService(baseUrl)
.measureArea(areaMeasureParam, function (serviceResult) {
var content = "面积: " + serviceResult.result.area + " 平方米";
polygon.bindPopup(content).openPopup(polygon.getCenter());
});
}else {
layer.msg("至少绘制三个点!");
}
在iclient-leaflet-9.0.0-742.js中发现params.geometry未定义
没读到这个应该只是方法没走完不是错了,如果这个方法有问题的话浏览器console会直接报的,上面错误截图不是说area那块有问题吗,你console.log(serviceResult);查一下有没有问题。
输出如下:
投影如下:
把发布的地图直接在iserver里for Javascript中用这个工具能得到量算结果吗
你好,不可以
距离量算如下:结果为0
面积量算,没有值。