Я взял большое изображение и разделил его на квадратные плитки (256x256). Он также предназначен для карт Google, поэтому все изображение делится на z_x_y.png (в зависимости от уровня масштабирования).
z = 0 => 1x1 плитка
z = 1 => 2x2
z = 2 => 4x4 плитки
Моя карта изображений "плоская" и не основана на такой сфере, как карта мира.
Я собираюсь использовать эту карту в приложении для Windows Mobile (у которого нет Google 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;
}
Или мне нужна техника проекции?
Спасибо заранее.
Пожалуйста, спросите, если что-то неясно.