Polyline对象点集获取问询及getPoints()方法返回值验证
关于Polyline对象获取点的问题解答
- 完全可以从Polyline对象中获取所有包含的点,不管你是用两个还是更多点创建的,直接调用对应的方法就能拿到点集合。
- 针对你通过两个点创建的Polyline,调用点获取方法后,就能查询到这两个点的完整列表。
- 关于
getPoints()方法:在大多数主流的地图API/SDK中,这个方法确实会返回你调用addPolyline()时传入的原始点列表。不过要注意,如果你后续通过其他方法修改了Polyline的点(比如新增、删除或移动点),getPoints()返回的会是更新后的点集合,而不是最初传入的那一组。
举个常见的代码示例(以Web端地图API为例):
// 创建两个坐标点 const pointA = new LatLng(39.9042, 116.4074); const pointB = new LatLng(31.2304, 121.4737); // 创建Polyline对象 const polyline = map.addPolyline({ path: [pointA, pointB], strokeColor: '#FF0000', strokeWeight: 3 }); // 获取Polyline中的点列表 const allPoints = polyline.getPoints(); // 遍历输出点坐标 allPoints.forEach(point => { console.log(`纬度:${point.lat()},经度:${point.lng()}`); });
小提醒:有些API可能会用
getPath()替代getPoints()(比如Google Maps JavaScript API),返回的是一个可操作的数组类对象,你可以通过它的内置方法访问所有点。建议你查看正在使用的具体API文档,确认方法名称和返回值类型。
内容的提问来源于stack exchange,提问作者Ahmed.ess
相关产品推荐
相关产品推荐

