Fixed #27552 -- Added docs/test for GEOSGeometry.normalize().

This commit is contained in:
Sergey Fedoseev 2016-11-30 18:39:03 +06:00 committed by Tim Graham
parent 8eb56f3c78
commit 21322f9271
3 changed files with 17 additions and 1 deletions

View File

@ -259,7 +259,7 @@ class GEOSGeometry(GEOSBase, ListMixin):
def normalize(self):
"Converts this Geometry to normal form (or canonical form)."
return capi.geos_normalize(self.ptr)
capi.geos_normalize(self.ptr)
# #### Unary predicates ####
@property

View File

@ -652,6 +652,17 @@ Other Properties & Methods
positive integer even if it was called with a
:class:`~django.contrib.gis.gdal.CoordTransform` object.
.. method:: GEOSGeometry.normalize()
Converts this geometry to canonical form::
>>> g = MultiPoint(Point(0, 0), Point(2, 2), Point(1, 1))
>>> print(g)
MULTIPOINT (0 0, 2 2, 1 1)
>>> g.normalize()
>>> print(g)
MULTIPOINT (2 2, 1 1, 0 0)
``Point``
---------

View File

@ -1331,6 +1331,11 @@ class GEOSTest(SimpleTestCase, TestDataMixin):
),
)
def test_normalize(self):
g = MultiPoint(Point(0, 0), Point(2, 2), Point(1, 1))
self.assertIsNone(g.normalize())
self.assertTrue(g.equals_exact(MultiPoint(Point(2, 2), Point(1, 1), Point(0, 0))))
@ignore_warnings(category=RemovedInDjango20Warning)
def test_deprecated_srid_getters_setters(self):
p = Point(1, 2, srid=123)