summaryrefslogtreecommitdiff
path: root/lib/python2.7/site-packages/django/contrib/gis/utils/wkt.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/python2.7/site-packages/django/contrib/gis/utils/wkt.py')
-rw-r--r--lib/python2.7/site-packages/django/contrib/gis/utils/wkt.py57
1 files changed, 0 insertions, 57 deletions
diff --git a/lib/python2.7/site-packages/django/contrib/gis/utils/wkt.py b/lib/python2.7/site-packages/django/contrib/gis/utils/wkt.py
deleted file mode 100644
index d60eed3..0000000
--- a/lib/python2.7/site-packages/django/contrib/gis/utils/wkt.py
+++ /dev/null
@@ -1,57 +0,0 @@
-"""
- Utilities for manipulating Geometry WKT.
-"""
-
-from django.utils import six
-
-def precision_wkt(geom, prec):
- """
- Returns WKT text of the geometry according to the given precision (an
- integer or a string). If the precision is an integer, then the decimal
- places of coordinates WKT will be truncated to that number:
-
- >>> pnt = Point(5, 23)
- >>> pnt.wkt
- 'POINT (5.0000000000000000 23.0000000000000000)'
- >>> precision(geom, 1)
- 'POINT (5.0 23.0)'
-
- If the precision is a string, it must be valid Python format string
- (e.g., '%20.7f') -- thus, you should know what you're doing.
- """
- if isinstance(prec, int):
- num_fmt = '%%.%df' % prec
- elif isinstance(prec, six.string_types):
- num_fmt = prec
- else:
- raise TypeError
-
- # TODO: Support 3D geometries.
- coord_fmt = ' '.join([num_fmt, num_fmt])
-
- def formatted_coords(coords):
- return ','.join([coord_fmt % c[:2] for c in coords])
-
- def formatted_poly(poly):
- return ','.join(['(%s)' % formatted_coords(r) for r in poly])
-
- def formatted_geom(g):
- gtype = str(g.geom_type).upper()
- yield '%s(' % gtype
- if gtype == 'POINT':
- yield formatted_coords((g.coords,))
- elif gtype in ('LINESTRING', 'LINEARRING'):
- yield formatted_coords(g.coords)
- elif gtype in ('POLYGON', 'MULTILINESTRING'):
- yield formatted_poly(g)
- elif gtype == 'MULTIPOINT':
- yield formatted_coords(g.coords)
- elif gtype == 'MULTIPOLYGON':
- yield ','.join(['(%s)' % formatted_poly(p) for p in g])
- elif gtype == 'GEOMETRYCOLLECTION':
- yield ','.join([''.join([wkt for wkt in formatted_geom(child)]) for child in g])
- else:
- raise TypeError
- yield ')'
-
- return ''.join([wkt for wkt in formatted_geom(geom)])