Javascript 计算特定米以外的两个其他坐标之间的纬度/经度

Javascript 计算特定米以外的两个其他坐标之间的纬度/经度,javascript,mapping,Javascript,Mapping,我正在开发一个Javascript函数,用于计算其他两个坐标之间的“直线”上的纬度和经度坐标。例如,我需要计算的这个坐标距离第一个坐标300米,而两个坐标之间的距离是1600米 我已经有了计算两个已知坐标之间距离的函数 地球上两点之间的直线上有一个简单的方程式。你可以试着找一个,或者用蛮力的方法。 您可以使用或尝试在上面编写自己的代码 然后: 你有2个点(a,b),你想在它们之间的路径上找到一个点c(也在指定的距离内) 创建多边形,使用4个点p1、p2、p3、p4,其中p1稍微向北移动,p2稍

我正在开发一个Javascript函数,用于计算其他两个坐标之间的“直线”上的纬度和经度坐标。例如,我需要计算的这个坐标距离第一个坐标300米,而两个坐标之间的距离是1600米

我已经有了计算两个已知坐标之间距离的函数


地球上两点之间的直线上有一个简单的方程式。你可以试着找一个,或者用蛮力的方法。 您可以使用或尝试在上面编写自己的代码

然后:

  • 你有2个点(a,b),你想在它们之间的路径上找到一个点c(也在指定的距离内)
  • 创建多边形,使用4个点p1、p2、p3、p4,其中p1稍微向北移动,p2稍微向南移动,p3向北移动,p4向南移动
  • 使用此多边形,您可能知道给定点是否在a和b之间的线上,检查给定点是否在多边形内部(您可以使用geolib.isPointInside函数)
  • 现在,从a开始,稍微向b移动(您知道何时在正确的轨迹上),然后计算生成的点和a之间的距离
  • 当你到达你期望的距离。你说得对

如前所述,这是对暴力方法的解释。计算起来可能非常复杂,这取决于您需要的精确度。

这就是我解决问题的方法:

  • 首先,我计算两个坐标之间的实际距离,单位为米。(在我的例子中是1600米)
  • 接下来,我计算实际距离与我需要知道的点的距离之差。(在我的例子中,300/1600*100=18.75%)
  • 接下来,我使用sincos tan来计算纬度和经度的水平和垂直值
  • 之后,我使用百分比来缩放纬度和经度
  • 最后,我将纬度和经度添加到坐标中

这可能不太准确,但对我来说,它可以完成任务。

发布您到目前为止拥有的信息。这包含了您需要知道的一切。。。。