2

我拍摄了一张大图像并将其分成方形瓷砖(256x256)。它也是为谷歌地图制作的,所以整个图像被分成 z_x_y.png (取决于缩放级别)。

z=0 => 1x1 瓷砖 z=1 => 2x2 瓷砖z=2 => 4x4 瓷砖

我的 imageMap 是“平面的”,不是基于世界地图这样的球体。

我将在 Windows 移动应用程序(没有谷歌 API)上使用这张地图,所有“兴趣点”都按经度和纬度插入数据库。由于我必须为 Windows Mobile 制作这个,所以我只有 XY 坐标系。

只使用这个就足够了:

MAP_WIDTH  = 256*TILES_W;
MAP_HEIGHT = 256*TILES_H;

function convert(int lat, int lon)
{
    int y = (int)((-1 * lat) + 90) * (MAP_HEIGHT / 180);
    int x = (int)(lon + 180) * (MAP_WIDTH / 360);

    ImagePoint p = new ImagePoint(x,y);  // An object which holds the coordinates

    return p;
}

还是我需要投影技术?

提前致谢。请询问,如果有不清楚的地方。

4

1 回答 1

1

如果您希望兴趣点在图像上正确对齐,则需要确保投影和坐标系与图像中使用的匹配。听起来像你制作的图像?所以大概你知道投影?只要确保convert使用相同的投影。

我不确定它是否相关,但谷歌地图使用基于 WGS84 的球形墨卡托投影

于 2010-03-15T23:37:02.770 回答