-1

事实证明这比我想象的要复杂……地图投影、墨卡托坐标、EPSG:4326 等。

我想做的事。

  1. 给定 lat, long 找出它们属于哪个图块。
  2. 给定一个瓦片,找到它的经纬度范围。
  3. 瓷砖应该长约 10 英里。

我不能简单地将纬度/经度除以某个数字以获得 10 英里的瓷砖,因为从赤道到两极的经度之间的距离变化。

如果我放弃 10 英里街区的概念,只使用虚拟街区,那就没问题了。

试过看看谷歌地图是怎么做的,没有意义。

他们基本上以某种方式将纬度/经度转换为 0-256、0-256。然后计算某种称为像素值的值,不确定那是什么,coords * 2 ^ zoom level。然后将其除以 256 得到图块编号。

4

1 回答 1

0

如果你使用的是球坐标,你应该有第三个参数,半径。首先,您要做的是将地图、平面、正方形、参数方程等网格化……在半径范围内,您应该能够知道 3D 平面的三重积分。否则看看这张图片:Phi = 纬度等

我建议你使用 sageMath,它是一个用于数学计算的 Python 库,对于查看你的数学工作非常有用。

结论:获取平面的面积,将其与单位参数(1 cm、1m、1km 等)网格化,看看 10 英里的瓷砖是否适合您的区域。

于 2018-03-19T19:55:30.177 回答