From 357ef5d97508d1f5b36b9a0f400a5cf712160aed Mon Sep 17 00:00:00 2001 From: Justin Bronn Date: Sat, 28 Jul 2007 18:51:47 +0000 Subject: [PATCH] gis: provenance: measure module is released under BSD license, assent given by Robert Coup in email correspondence dated 7/25/2007; math imports not used, and ensured that default unit is string when passed in. git-svn-id: http://code.djangoproject.com/svn/django/branches/gis@5772 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- django/contrib/gis/measure.py | 36 ++++++++++++++++++++++++++++++----- 1 file changed, 31 insertions(+), 5 deletions(-) diff --git a/django/contrib/gis/measure.py b/django/contrib/gis/measure.py index 1feb63f081..75ab53474c 100644 --- a/django/contrib/gis/measure.py +++ b/django/contrib/gis/measure.py @@ -1,14 +1,40 @@ +# Copyright (c) 2007, Robert Coup +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without modification, +# are permitted provided that the following conditions are met: +# +# 1. Redistributions of source code must retain the above copyright notice, +# this list of conditions and the following disclaimer. +# +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# 3. Neither the name of Distance nor the names of its contributors may be used +# to endorse or promote products derived from this software without +# specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# """ Distance and Area objects to allow for sensible and convienient calculation and conversions. +Author: Robert Coup + Inspired by GeoPy (http://exogen.case.edu/projects/geopy/) and Geoff Biggs' PhD work on dimensioned units for robotics. - -Copyright (c) 2007, Robert Coup """ - -from math import * from decimal import Decimal class Distance(object): @@ -32,7 +58,7 @@ class Distance(object): else: raise AttributeError("Unknown unit type: " + unit) - if default_unit: + if default_unit and isinstance(default_unit, str): self._default_unit = default_unit def __getattr__(self, name):