Как загрузить плитки osmdroid на стороне пользователя?

Мне уже удалось загрузить фрагменты карты с SD-карты osmdroid (Mapnik).

Но теперь я хочу дать возможность в своем приложении для Android загрузить плитку карты, которую пользователь хочет использовать, означает, что карта показывает онлайн пользователь выбирает определенную область и обналичивает ее для своего использования, я не знаю, как пожалуйста помогите спасибо


person user2433098    schedule 28.01.2014    source источник


Ответы (1)


Я не уверен, куда указывает вопрос. Насколько я понимаю, вы предлагаете пользователю выбрать область, которая выражается в географических координатах, а затем использовать эти координаты для расчета тайлов, которые нужно получить.

В разделе Имена фрагментов карты Slippy в вики OSM есть очень хорошее объяснение, как это сделать:

  • Перепроектируйте координаты в проекцию Меркатора (от EPSG:4326 до EPSG:3857):

    x = lon
    y = arsinh(tan(lat)) = log[tan(lat) + sec(lat)]
    

    (широта и долгота указаны в радианах)

  • Преобразуйте диапазон x и y в 01 и сместите начало координат в верхний левый угол:

    x = [1 + (x / π)] / 2
    y = [1 − (y / π)] / 2
    
  • Подсчитайте количество плиток на карте, n, используя 2^zoom
  • Умножьте x и y на n. Округлите результаты в меньшую сторону, чтобы получить tilex и tiley.
person glglgl    schedule 01.07.2015