Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.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 将lat/lon转换为像素位置_Php_Javascript_Map_Mapping_Proj4js - Fatal编程技术网

Php 将lat/lon转换为像素位置

Php 将lat/lon转换为像素位置,php,javascript,map,mapping,proj4js,Php,Javascript,Map,Mapping,Proj4js,我有一张地图(墨卡托)和地图四个角的坐标。我需要想出一些办法,这样我就可以把给定的坐标转换成地图上的对应点。我不能使用谷歌或任何类似的东西,这就是为什么我首先需要做这件事的原因 我可以使用的语言不是PHP就是Javascript。我试过在其他帖子中发现的一些东西,比如这篇: ,但我跟他们没什么关系 如果有人能提供一些帮助,我将不胜感激。我的数学很糟糕,看看这些方程式,我开始觉得这不符合我的能力,但我必须完成它 再次感谢你 函数转换坐标($lat,$lon) function convert

我有一张地图(墨卡托)和地图四个角的坐标。我需要想出一些办法,这样我就可以把给定的坐标转换成地图上的对应点。我不能使用谷歌或任何类似的东西,这就是为什么我首先需要做这件事的原因

我可以使用的语言不是PHP就是Javascript。我试过在其他帖子中发现的一些东西,比如这篇: ,但我跟他们没什么关系

如果有人能提供一些帮助,我将不胜感激。我的数学很糟糕,看看这些方程式,我开始觉得这不符合我的能力,但我必须完成它

再次感谢你

函数转换坐标($lat,$lon)
   function convert_coords($lat, $lon)
     {
   $width = 1281;
   $height = 1529;
// X and Y boundaries
$westLong = -75.196438;
$eastLong = -74.674072;
$northLat = 41.377581;
$southLat = 40.909232;

$lat = $lat;
$lon = $lon;

 $x = $width * (($westLong-$lon)/($westLong-$eastLong));
 $y = ($height * (($northLat-$lat)/($northLat-$southLat)));

    echo $x."<br />";
    echo $y;

}
{ $width=1281; $height=1529; //X和Y边界 $westLong=-75.196438; $eastLong=-74.674072; $northLat=41.377581; $southLat=40.909232; $lat=$lat; $lon=$lon; $x=$width*($westLong-$lon)/($westLong-$eastLong)); $y=($height*($northLat-$lat)/($northLat-$southLat)); echo$x.“
”; echo$y; }

这就是我一直在努力的工作。我想这是我在这里做的事情的一个变种,但它没有得到我需要的结果。我真的和这件事碰了一鼻子灰。在地球上,我不可能一个人算出数学,我一直在努力,这是我力所不及的

听起来您使用的是JavaScript,在这种情况下,proj4js开源库值得一看


此外,假设位图与坐标系正交,则可以使用墨卡托公式(查看Wikipedia或任何半体面的地图反对书)应用简单的线性变换来获得所需的变换。然后求解四个角。对于线性变换,您会发现一些变量只是复制了墨卡托投影中的参数(即比例因子)

没有运气意味着您尝试了一些东西。让我们看看你做了什么。你需要重温你的数学。这种情况肯定会变得更加复杂。