首页 / 浏览问题 / WebGIS / 问题详情
二维场景中 怎么绘制面后进行范围查询?
Zzy
19EXP 2020年12月14日

在二维地图中,使用捕捉地图示例,绘制图形,怎么结合范围查询GetFeaturesByBoundsParameters,把这图形中的点展示出来。我已经通过layer.toGeoJSON()方法获取改绘制图形的点坐标 

new SuperMap.GetFeaturesByBoundsParameters({
           datasetNames: ["World:Capitals"],
            bounds: polygon.getBounds()
        });

中bounds怎么获取,是还要把获取的点在进行L.polygon操作吗,再获取其geBounds

还有这个绘制圆,只能获取中心点

坐标,它的半径怎么获取呢

1个回答

你好,您这个已经绘制到前端进行显示了是吗?您可以用GetFeaturesByGeometry来进行查询,将您构造的图形作为参数传入。Bounds的话是一个矩形范围,四个参数对应的是左下右上
2,842EXP 2020年12月14日

你好,我换成了几何查询和图形绘制结合的,目前绘制多边形可以展示多边形中的点,但是绘制圆形,则不生效,是什么原因

map.on('pm:create',e=>{
         layer = e.layer;
         console.log(layer.toGeoJSON()) 
         console.log(layer.getBounds()) 
         
         query(layer)
})
 function query(polygon) {
        var geometryParam = new SuperMap.GetFeaturesByGeometryParameters({
            datasetNames: ["World:Capitals"],
            geometry: polygon,
            spatialQueryMode: "INTERSECT"
        });

...