Преобразование местоположения пикселей в широту / долготу и наоборот

Мне нужно преобразовать значения широты и долготы в пиксельные позиции, а также сделать наоборот. Я нашел много решений для перехода от широты / долготы-> пиксель, но не могу найти ничего на обратной стороне.

Пара примечаний:

  • Карта имеет фиксированный размер, без масштабирования, без фрагментов.
  • Мне не нужно ничего сверхточного, это не важно.
  • Желательно проекция меркатора, но не обязательно. Я фактически не показываю результат. (Любая 2D-проекция)
  • Я не могу полагаться ни на какие веб-интерфейсы API, например: нет Google Maps

Решение практически на любом языке программирования было бы хорошо, если оно не зависит от какой-либо конкретной платформы API.

Это пример перехода от широты / долготы-> пиксель:

var y = Math.round(((-1 * lat) + 90) * (this.MAP_HEIGHT / 180));
var x = Math.round((lng + 180) * (this.MAP_WIDTH / 360));
5
задан Tyler Egeto 10 August 2011 в 23:26
поделиться