Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 检查两条路线(以纬度和经度表示)是否相对_Php_Math_Latitude Longitude - Fatal编程技术网

Php 检查两条路线(以纬度和经度表示)是否相对

Php 检查两条路线(以纬度和经度表示)是否相对,php,math,latitude-longitude,Php,Math,Latitude Longitude,我一直在为这个伤脑筋。 我有两条路线: 路线1 起点: 纬度:44.426767 液化天然气:26.102538 结束点: 纬度:45.031428 液化天然气:23.268939 路线2 起点: 纬度:45.095770 液化天然气:24.362799 结束点: 拉丁美洲:44.857492 液化天然气:24.881478 现在,我知道这两条路线是相对的(如果我在地图上画的话),但我不太明白如何从数学上说出来。 我试着研究数学向量,但我不知道如何用纬度和经度坐标来表示向量 如果

我一直在为这个伤脑筋。 我有两条路线:

路线1

起点:

  • 纬度:44.426767
  • 液化天然气:26.102538
结束点:

  • 纬度:45.031428
  • 液化天然气:23.268939
路线2

起点:

  • 纬度:45.095770
  • 液化天然气:24.362799
结束点:

  • 拉丁美洲:44.857492
  • 液化天然气:24.881478
现在,我知道这两条路线是相对的(如果我在地图上画的话),但我不太明白如何从数学上说出来。 我试着研究数学向量,但我不知道如何用纬度和经度坐标来表示向量

如果你能给我一个正确的方向,我将不胜感激,谢谢


PS:我需要用php编写公式。

你可以用这样的东西来计算它,然后进行比较。

你可以用这样的东西来计算它,然后进行比较。

使用@matri70boss链接将晶格度/经度转换为X/Y向量,然后使用从A(xA,yA)到B(xB,yB)的两条路径每一个对应一个向量v(xB-xA,yB-yA)


这两条路线有两个向量v1和v2。如果在它们之间做标量积,积的符号将告诉你它们是否指向同一方向(如果正:同一方向,负:相反方向,=0:垂直)。

使用@matri70boss链接将晶格度/经度转换为X/Y向量,然后使用从A(xA,yA)到B(xB,yB)的两条路径每一个对应一个向量v(xB-xA,yB-yA)


这两条路线有两个向量v1和v2。如果你在它们之间做标量积,积的符号会告诉你它们是否指向同一个方向(如果正:同一方向,负:相反方向,=0:垂直)。

把lat/lon想象成X/Y。那么它有什么不同?(请记住,您在这里使用的是球体,因此可能需要处理一些“环绕”情况…)。另外:您需要定义“对立”;我很确定你不想要一个精确的(数学上的)180度的反差,但一定要有“余量”。@Robii这可能行得通,但我认为这会有点不同,因为地球是一个球体,我必须考虑到这一点(我认为),这取决于你的要求,但是,是的,你可能需要考虑到这一点。然后你需要将其添加到你的需求中。把lat/lon想象成X/Y。那么它有什么不同呢?(请记住,您在这里使用的是球体,因此可能需要处理一些“环绕”情况…)。另外:您需要定义“对立”;我很确定你不想要一个精确的(数学上的)180度的反差,但一定要有“余量”。@Robii这可能行得通,但我认为这会有点不同,因为地球是一个球体,我必须考虑到这一点(我认为),这取决于你的要求,但是,是的,你可能需要考虑到这一点。然后,您需要将其添加到您的需求中。