как узнать где рисовать на карте? (Android) - PullRequest
0 голосов
/ 04 ноября 2011

Я пытаюсь нарисовать что-то на карте, используя оверлеи.У меня есть координаты мест, которые я хочу нарисовать.Я начинаю свою карту с определенной долготы / широты и рисую, используя обычные точки экрана, такие как (1,1), (2,3) и так далее.Но что, если карта изменится?Как сделать так, чтобы мой рисунок не сломался?Итак, чтобы упростить и проиллюстрировать.Допустим, я рисую прямоугольники на экране.Мой прямоугольник имеет 20px / 30px (стороны).Я рисую первый в (0,0).Следующим может быть (21,0), а следующим (0,31).Итак, если я сдвину экран немного в сторону, как я могу убедиться, что я нарисую, как четвёртый прямоугольник в (21,31) относительно того, каким был мой экран.

спасиботак много!

Ответы [ 2 ]

1 голос
/ 04 ноября 2011

Вам необходимо связать lat, long с углами вашего прямоугольника, если вы хотите, чтобы они появились в определенном месте.Это может быть проще сделать с помощью Poly API линии API Карт.

0 голосов
/ 04 ноября 2011

Вам необходимо преобразовать координаты пикселей в / из значений широты / долготы

Посмотрите в mapview.getProjection (); в частности toPixels () и fromPixels ()

См. http://code.google.com/android/add-ons/google-apis/reference/com/google/android/maps/MapView.html#getProjection()

...