mirror of
https://github.com/django/django.git
synced 2025-03-31 19:46:42 +00:00
Simplified GISFunctionsTests.test_point_on_surface().
This commit is contained in:
parent
6fa71872ae
commit
3dca8738cb
@ -362,31 +362,9 @@ class GISFunctionsTests(FuncTestMixin, TestCase):
|
|||||||
|
|
||||||
@skipUnlessDBFeature("has_PointOnSurface_function")
|
@skipUnlessDBFeature("has_PointOnSurface_function")
|
||||||
def test_point_on_surface(self):
|
def test_point_on_surface(self):
|
||||||
# Reference values.
|
|
||||||
if oracle:
|
|
||||||
# SELECT SDO_UTIL.TO_WKTGEOMETRY(SDO_GEOM.SDO_POINTONSURFACE(GEOAPP_COUNTRY.MPOLY, 0.05))
|
|
||||||
# FROM GEOAPP_COUNTRY;
|
|
||||||
ref = {
|
|
||||||
'New Zealand': fromstr('POINT (174.616364 -36.100861)', srid=4326),
|
|
||||||
'Texas': fromstr('POINT (-103.002434 36.500397)', srid=4326),
|
|
||||||
}
|
|
||||||
elif mysql:
|
|
||||||
ref = {
|
|
||||||
'New Zealand': fromstr('POINT (169.030131 -46.678612)', srid=4326),
|
|
||||||
'Texas': fromstr('POINT (-97.383730 25.840117)', srid=4326),
|
|
||||||
}
|
|
||||||
else:
|
|
||||||
# Using GEOSGeometry to compute the reference point on surface values
|
|
||||||
# -- since PostGIS also uses GEOS these should be the same.
|
|
||||||
ref = {
|
|
||||||
'New Zealand': Country.objects.get(name='New Zealand').mpoly.point_on_surface,
|
|
||||||
'Texas': Country.objects.get(name='Texas').mpoly.point_on_surface
|
|
||||||
}
|
|
||||||
|
|
||||||
qs = Country.objects.annotate(point_on_surface=functions.PointOnSurface('mpoly'))
|
qs = Country.objects.annotate(point_on_surface=functions.PointOnSurface('mpoly'))
|
||||||
for country in qs:
|
for country in qs:
|
||||||
tol = 0.00001 # SpatiaLite might have WKT-translation-related precision issues
|
self.assertTrue(country.mpoly.intersection(country.point_on_surface))
|
||||||
self.assertTrue(ref[country.name].equals_exact(country.point_on_surface, tol))
|
|
||||||
|
|
||||||
@skipUnlessDBFeature("has_Reverse_function")
|
@skipUnlessDBFeature("has_Reverse_function")
|
||||||
def test_reverse_geom(self):
|
def test_reverse_geom(self):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user