【问题标题】:Convert a single large image overlay to tiles for Google Maps将单个大图像叠加层转换为 Google 地图的图块
【发布时间】:2011-08-23 01:21:13
【问题描述】:

我有一张高分辨率的大型图片,我正在使用 Google Maps v3 API 进行叠加。这适用于具有合理网络连接的台式机和笔记本电脑,但不出所料,它对于移动用户来说效果不佳。

将图像分解为各种缩放级别的 2D 图块以便我可以通过 API 充当 Google 地图的图块服务器的最佳/最简单方法是什么?

是否有一个程序可以可靠地为我生成图块并为我提供每个生成的图块所需的缩放和坐标和/或在我提供缩放和坐标的情况下为我提供正确的图块?

一旦您收集到正确的信息,是否很容易编写一个磁贴服务器来即时执行此操作?也许那里有我可以用作模型的源代码? (我在http://blog.gmapify.fr/a-map-tile-server-part-2-understanding-google-maps-tile-overlays-and-building-up-a-tile-server 找到了一个磁贴服务器,这当然很有帮助,但它不提供源图像中的磁贴,所以我至少必须弄清楚那部分......)

或者如果更简单的话,我可以手动遵循分步算法吗? (由于它只有一张图像,而且它在地图上覆盖了大约一平方英里的区域,因此手动进行这样的操作可能是可行的,如果不是最好的。)

【问题讨论】:

    标签: google-maps google-maps-api-3 tile


    【解决方案1】:

    您可以查看 MapTiler http://code.google.com/p/maptiler/。它可以生成您需要的瓷砖。

    Tile server 真的很容易写。最简单的方法是在目录结构中托管静态文件(您的图块)。目录结构通常是 servername/zoom/x/y.png(或 zoom/y/x.png)。 MapTiler 也产生了这样的结构。 MapTiler 还使用图块生成示例网页(但我猜它使用 Google Maps API v2)。

    有关在 Google Maps API v3 中使用图块的信息,请访问:http://code.google.com/apis/maps/documentation/javascript/maptypes.html#CustomMapTypese

    【讨论】:

      【解决方案2】:

      有一个非常好的关于使用 maptiler 制作地图的视频教程,可以在这里找到:
      Mobile Maps That Aren't Terrible

      它专注于移动地图,但也涵盖了 maptiler 和其他基础知识。我发现这很有帮助。

      【讨论】:

      【解决方案3】:

      您无需预先切割瓷砖即可在客户端完成所有操作

      https://github.com/Murtnowski/GMap-JSlicer

      slicer = new JSlicer(document.getElementById('map'), 'myImage.png');
      slicer.init();
      

      很简单。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-11-26
      • 1970-01-01
      • 2012-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-26
      相关资源
      最近更新 更多