【问题标题】:Get nearest point on polyline when mousemove (gMaps v3)鼠标移动时获取折线上的最近点(gMaps v3)
【发布时间】:2013-10-26 01:25:45
【问题描述】:

我有一个显示跟踪数据的应用程序。有了地图和轨道,我有一张图表,显示了多线各点的速度。当我在图表上移动时,地图中的同一点会突出显示。

我需要做的是:当我将指针移到地图上的多段线上时,还要突出显示图表上的点,为此,我需要获取地图上从多段线到鼠标指针最近的点.

我绑定了折线 mousemove 事件,但找不到任何可以帮助我的属性。

【问题讨论】:

  • 您为此尝试过什么吗?也包括在内。

标签: google-maps-api-3 polyline


【解决方案1】:

点(latLng)是mouseEvent的属性

google.maps.event.addListener(polylineInstance, 'mousemove',function(e){
  console.log(e.latLng)
})

要获取折线的被点击线段,遍历折线的路径,为每个线段创建临时折线并使用google.maps.geometry.poly.isLocationOnEdge() 检查点击是否在当前线段上。

【讨论】:

  • 是的,但是,这个属性是关于指针所在的纬度。假设我有一条 8 公里的折线,由 10 个点组成。我需要知道指针所在的这条折线的段,该段之前和之后的点是什么。因为这些点与图表的点有一对一的关系。
  • 如果折线是在鼠标指针附近多次通过的涂鸦,我找不到更接近该点的纬度,我需要确切知道我所在的线段的点是什么用鼠标指针定位。
猜你喜欢
  • 1970-01-01
  • 2014-01-07
  • 1970-01-01
  • 2010-12-06
  • 2014-01-27
  • 1970-01-01
  • 2014-02-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多