PHP-将经/纬度转换为像素X&Y坐标
作者:互联网
这类问题似乎已经被问过无数次了,但是发布的任何解决方案都无法使我接近所需的答案.
我有这张新西兰北地的地图,我想将纬度/经度值映射到此图像上的x / y(像素)值(http://i.stack.imgur.com/3ok4O.gif- 400px平方)
现在,我不知道该图像的精确纬度/经度边界,但是我确实有一些示例数据,这些数据对于知道自己在做什么的人应该是有用的.
LAT LONG X Y
-35.3989854471 173.504676819 192.92777494 196.760481649
-35.2647882735 174.121499062 271.426291418 176.82865668
-35.3131641432 173.89125824 242.099305271 183.945780963
我现在接收的数据仅为纬度/经度,因此我需要能够在应用程序中生成x和y值.
谁能帮我写出创建这些x / y值所需的方法/逻辑.
谢谢!
解决方法:
用Javascript …
var lat=-35.3989854471;
var long=173.504676819;
var imageNorthLat=???;
var imageSouthLat=???;
var imageWestLong=???;
var imageEastLong=???;
var imageLongPixels=400;
var imageLatPixels=400;
var pixelsPerLat=imageLatPixels/(imageNorthLat-imageSouthLat);
var pixelsPerLong=imageLongPixels/(imageEastLong-imageWestLong);
var xPixelPosition=(long-imageWestLong)*pixelsPerLong;
var yPixelPosition=Math.abs(lat-imageNorthLat)*pixelsPerLat;
我没有尝试运行此命令,因此可能需要进行一些调试,并且x和y像素位置必须向其添加左上角或地图的x和y位置.但是您可以看到这个想法.而且,当然,我可能还没有理解您的真正要求.
标签:coordinates,latitude-longitude,geocode,javascript,php 来源: https://codeday.me/bug/20191102/1990530.html