Что такое django gis

  • By admin
  • Ср 25 Август 2010

django gis это такой компонент джанги, который позволяет работать с картографическими объектами. То есть вместо картографических примитивов наподобие "граница", "дерево", "дорога" есть многоугольник, точка, (мульти-)линия. С такими объектами очень легко работать, например, нужно узнать пересекает ли дорога границу области. Делается это так:

>>> from django.contrib.gis.geos import LineString
>>> from django.contrib.gis.geos import Polygon
>>> # пусть у нас будет  граница области в виде квадрата, как в США.
>>> distict = Polygon( ((0.0, 0.0), (0.0, 50.0), (50.0, 50.0), (50.0, 0.0), (0.0, 0.0)) )
>>># а дороги прямыми-прямыми
>>> way = LineString((-25,25), (75,25))
>>># сравниваем
>>> distinct.intersects(way)
True

Как видно, нет ни чего сложного.

Эти примитивы можно хранить в базе данных, извлекать из базы данных и делать фильтрацию данных. Почти все СУБД, которые работают с джанго умеют работать или их можно "научить" работать с географическими данными, подробнее рассказано в официальной документации. Все системы управления базами данных имеют свои ограничения, которые также нужно учитывать при разработке.