有人知道在Google地图上是否可以允许用户从A点到B点绘制一条线吗?
如果可以,通常是如何实现的?
有人知道在Google地图上是否可以允许用户从A点到B点绘制一条线吗?
如果可以,通常是如何实现的?
http://code.google.com/apis/maps/documentation/javascript/examples/polyline-complex.html
将以下事件绑定到您的地图上:onclick
。通过查看event.LatLng
对象获取纬度和经度,向您的折线(用户正在绘制的线)添加一个点。当用户再次单击时,当新点被推入渲染数组时,折线将自动更新渲染。您可以使用Polyline并使用google.maps.LatLng指定两个或更多点。这里是JSFiddle Demo:
//create points on the Polylines
var flightPlanCoordinates = [
new google.maps.LatLng(37.772323, -122.214897),
new google.maps.LatLng(-27.46758, 153.027892)
];
//create the Polyline and feed it points with stroke styling
var flightPath = new google.maps.Polyline({
path: flightPlanCoordinates,
strokeColor: "#FF0000",
strokeOpacity: 1.0,
strokeWeight: 2
});
//set the polylines on the map
flightPath.setMap(map);
根据其他人的建议,更详细地说,坐标可以由用户输入,也可以通过单击事件在地图上放置标记作为点,然后将标记坐标作为多段线的点提供,或者您还可以创建一个表单,让用户手动输入他们的地址或经纬度作为点来绘制这些点,但是绘制多段线的详细方式与上面的示例类似,除了经纬度在演示中被静态编码。
是的,它是。请查看MapMyRun.com,这是一个很好的用例示例。