>>130380
>Этот гимор будет инкапсулирован во фреймворке и поставщике карты. Разработчики остальных плагинов будут от него изолированы.
Ну теоретически можно заимплементить такое, если работать только в 2d или изометрии, но смысла в этом нет, т.к. получится лютый оверхэд хотя бы на конвертацию тайлов и перерасчет из одной проекции в другую. Такую херню понятет более-менее нормально только 8 ядерный сосунг с 2Гб RAM. Да и мало их конвертить, нужно еще следить за кэшем, который придется очищать как только ты переключишься на другого поставщика, в итоге опять все заново придется загружать из сети и опять будет slow mode.
>В этом и главный смысл : 5 - 10 карточных плагинов для самых популярных карт (гугл, осм, яндекс, бинг и тд, причём можно комбинировать - текстура гугловская со спутника, а разметка от осм) и тонны плагинов, расширяющих функционал (пробки из разных источников, камеры, вайфай точки, остальные пои, социалка вроде отображения друзей на карте в реальном времени, игры в реале вроде той, что с зомби и т д, прикрутить можно почти все что угодно, а главное легко - обо всём карточном заботятся фреймворк и поставщик карты, а плагин лишь получает данные, привязывает точки к координатам, рисует, используя апи, и обрабатывает события ( можно, например вывести пузырь (пузырь поставщика гуи, содержимое - плагина)). Поставщик карты даёт 2мерную текстуру в определённой проекции (при регистрации он сообщает, какие проекции он может дать). Фреймворк её преобразовывает, натягивает на поверхность и отрисовывает. Так как разметка векторная, то проблем с отображением возникнуть не должно. Расскажите про подводные камни.
А вот тут кроется не просто подводный камень, а ебаный архипелаг с рифами. Видишь ли, все публичные мелко\средне-масштабные карты имеют довольно большие погрешности в фактическом соответствии координатам и тем, что под ними находится и POI будут выставляться не по координатам, а по фактическим объектам на самой карте, т.е. принудительно будут выставлены с погрешностью. Если ты попробуешь совместить POI например из гуглмапса и тайлы из яндекса или бинга, то у тебя ни чего не получится. POI будут стоять не там где нужно (относительно объектов на тайлах). Например найдешь ты какую-нибудь жральню в гуглмапсе, нарисуешь ярлык на карте по координатам, но он окажется не на том доме, где находится жральня, а где-то рядом (на соседнем доме, на дороге возле дома, в реке, болоте, вообще хуй знает где).
С навигацией еще хуже. Во время движения погрешность становится довольно большой, а в условиях города и плохой погоды так вообще может быть недоступна. При этом местоположение устройства рисуется не просто по каждому GPS-евенту, а по среднему значению из некоторого интервала, кроме того, нужно еще грамотно нарисовать это на экране. Так, при большой погрешности у тебя устройство может показать, что ты не на дороге по которой едешь\идешь, для избежания подобных проблем, весь навигационный софт имеет автокоррецию, при которой если устройство находится не дальше n-метров от объекта, то он отрисовывает твое местоположение на нем, а не там на что показывает GPS-еvent. Можешь это сам посмотреть, попробуй проедь в 5-30 метрах параллельно от шоссе, фактически любой современный навигатор тебе покажет, что ты едешь именно по этому шоссе, а не по параллельной ему дороге\полю\обочине. Но.. инфа о местоположениях этих дорог привязана к самим тайлам, а не к координатам в итоге получится, что вместо навигации у тебя получится неведомая хуйня с телепортами проездами по жилым домам, огородам, полям и т.п.