Единственное django обеспечивает обработку неизвестных переменных контекста в template_string_if_invalid
. Вам придется сделать какой-то более глубокий взлом шаблона двигателя, если хотите лучше, чем это.
Я не уверен в внутренней структуре данных, но это может быть какая-то 2D-структура деревьев на основе координат, которая отображает только определенное количество уровней. Уровни будут соответствовать коэффициентам масштабирования, поэтому вы можете игнорировать как незначительные вещи ниже, скажем, 5 уровней ниже текущего уровня, а вещи над текущим уровнем.
Независимо от того, как он структурирован, вот как вы можете использовать его:
http://code.google.com/apis/maps/documentation/Reference.html
Для такого рода приложения вы бы хотели, чтобы какая-то база данных представляла функции карты и соединения между ними, и тогда потребуется:
Для 1 пример будет примером R-Tree структура данных.
Для 2 вам нужен алгоритм поиска графа, например A * .
Мне было интересно, какие данные структура в приложении, как Карты Google / Bing.
Пользователь: XHTML / CSS / JavaScript. Как любой веб-сайт.
На сервере: кто знает? Любой Google Devs здесь здесь? Это, безусловно, не PHP или ASP.NET ...
Как дела, что результаты возвращается так быстро при поиске Направления?
Поскольку Google провел годы, рабочую силу и миллионы долларов на создание архитектуры, чтобы получить максимально быстрое время реакции сервера?
Какие алгоритмы используются Чтобы определить эту информацию?
Алгоритм плана пользователя .
Я бы подумал об этом как о вычислительной проблеме геометрии. Когда вы нажимаете на определенную координату на карте и используете эту информацию, можете получить широту и долготу этого местоположения. На основании широты и долготы и уровня масштабирования это место можно идентифицировать.
Как только вы определили два места, единственная проблема для вас - определить ближайший маршрут. Теперь эта проблема заключается в нахождении кратчайшего пути между двумя точками, имеющими многоугольные блоки между ними (которые соответствуют местам, которые не содержат дорог), а единственные возможные соединения - это дороги. Это известная проблема, и существуют эффективные алгоритмы для решения этого.
Я не уверен, что это то, что делает Google, но я надеюсь, что они что-то сделают на этих строках.
Я принимаю вычислительную геометрию в этом семестре. Вот ссылка курса: http://www.ams.sunysb.edu/~jsbm/courses/545/ams545.html . Проверьте их, если вы заинтересованы.