4

我一直在玩TileOverlayAndroid Maps v2 并且我已经建立了一个与这个TileProvider非常相似的自定义

但有一点让我觉得很奇怪。无论我将哪个数字传递给Tile构造函数,屏幕上的图像始终相同 - 4 到 9 个 Tiles 平均共享屏幕空间,如下所示:

在此处输入图像描述

当然,这是您阅读文档所期望的:

瓦片的坐标是从地图的左上角(西北)测量的。在缩放级别 N 时,瓦片坐标的 x 值范围从 0 到 2N - 1,从西向东增加,y 值从 0 到 2N - 1,从北向南增加。

但是您可能会从构造函数文档中猜到实际上有这样的功能

构造一个瓷砖。

参数
width 图像的宽度(以像素为单位)
height图像 的高度(以像素为单位) data 包含图像
数据 的字节数组。将通过调用 decodeByteArray(byte[], int, int) 从此数据创建图像。

所以很明显我在这里误解了一些东西。我个人的猜测是瓷砖必须覆盖整个“地图瓷砖”,因此不能缩小

我的目标是让我的瓷砖10dp在屏幕上。因此,我再次向您提出问题:

我可以通过TileOverlay还是最终使用 custom 来实现这一点Marker

4

1 回答 1

1

构造函数中指定的图块大小是您提供给地图的(每个)位图图块的大小。如果您有这样的资源,这允许您为不同的屏幕提供不同密度的图块。它不会改变在地图上绘制的图像的大小。地图瓦片的物理大小由缩放级别定义,其中 0 的缩放级别是覆盖整个世界的单个瓦片,1 是 2x2 瓦片等。这是地图瓦片的开放网络地图标准的一部分,而不是由谷歌定义。

API 文档: https ://developers.google.com/maps/documentation/android/tileoverlay

参考: http: //www.maptiler.org/google-maps-coordinates-tile-bounds-projection/

于 2014-12-09T14:06:21.880 回答