JSAPI 鼠标工具绘制的覆盖物如何获取?

使用鼠标工具绘制的点、折线、多边形、圆形、矩形等覆盖物,都可以通过监听draw事件来获取,然后通过覆盖物自身的方法获取到位置/范围/路径。相关代码举例如下。

使用鼠标工具绘制点,获取点的位置。

var mouseTool = new AMap.MouseTool(map);  //在地图中添加MouseTool插件
var marker = mouseTool.marker(); //用鼠标工具画点标注
AMap.event.addListener( mouseTool,'draw',function(e){ //添加事件  
    console.log(e.obj.getPosition());//获取点标注位置
});

使用鼠标工具绘制多边形,获取多边形的路径。

var mouseTool = new AMap.MouseTool(map);   //在地图中添加MouseTool插件
var drawPolygon = mouseTool.polygon(); //用鼠标工具画多边形
AMap.event.addListener( mouseTool,'draw',function(e){ //添加事件
    console.log(e.obj.getPath());//获取路径/范围
});

使用鼠标工具绘制折线,获取折线的路径。

var mouseTool = new AMap.MouseTool(map);   //在地图中添加MouseTool插件
var drawPolyline = mouseTool.polyline(); //用鼠标工具画折线
AMap.event.addListener( mouseTool,'draw',function(e){ //添加事件
    console.log(e.obj.getPath());//获取路径/范围
});

使用鼠标工具绘制矩形,获取矩形的路径。

var mouseTool = new AMap.MouseTool(map);   //在地图中添加MouseTool插件
var drawRectangle = mouseTool.rectangle(); //用鼠标工具画矩形
AMap.event.addListener( mouseTool,'draw',function(e){ //添加事件
    console.log(e.obj.getPath());//获取路径/范围
});

使用鼠标工具绘制圆形覆盖物,获取半径和中心点。

var mouseTool = new AMap.MouseTool(map);   //在地图中添加MouseTool插件
var drawcircle = mouseTool.circle(); //用鼠标工具画圆
AMap.event.addListener( mouseTool,'draw',function(e){ //添加事件
    console.log(e.obj.getRadius());//获取半径
    console.log(e.obj.getCenter());//获取中心点
});

AMap.MouseTool是插件,所以在代码中记得引入插件哦。引入方式如下:

<script src="http://webapi.amap.com/maps?v=1.3&key=您申请的key值&plugin=AMap.MouseTool"></script>

如以上内容仍未解决您的问题,请创建工单
新用户
福利
示例
中心
常见
问题
智能
客服