Что именно означает GEOSGeometry

Простите, может быть, это абсурдно, но я запутался. Я видел два способа создания полигона.

from django.contrib.gis.geos import GEOSGeometry, LineString, Polygon
1- geometry = GEOSGeometry(Polygon(coordinates, srid=4326))
2- geometry = Polygon(coordinates, srid=4326)

Почему важно добавить GEOSGeometry, а не просто использовать 2)?

Похоже, что GEOSGeometry() может форматировать текст и JSON (и т.д. совместимые форматы) в специфические объекты, такие как Point(), или Polygon().

Поэтому вам не нужно использовать GEOSGeometry(), если вы можете обойтись без нее. Эти два определения равнозначны (насколько я понимаю). source

from django.contrib.gis.geos import GEOSGeometry, Point
pnt = Point(954158.1, 4215137.1, srid=32140)
pnt = GEOSGeometry('SRID=32140;POINT(954158.1 4215137.1)')
Вернуться на верх