From: Vivien Maisonneuve Date: Tue, 19 Aug 2014 12:58:23 +0000 (+0200) Subject: Return NotImplemented in Point special methods X-Git-Tag: 1.0~48 X-Git-Url: https://scm.cri.ensmp.fr/git/linpy.git/commitdiff_plain/064e82c1b36bfdef47a5bcbbbf7757c7b9adea91?hp=5e2869e71d0b59be3f6981e0444ee7d466ac0c07 Return NotImplemented in Point special methods --- diff --git a/linpy/geometry.py b/linpy/geometry.py index 5b5ed89..a0a7b7c 100644 --- a/linpy/geometry.py +++ b/linpy/geometry.py @@ -185,10 +185,10 @@ class Point(Coordinates, GeometricObject): """ Translate the point by a Vector object and return the resulting point. """ - if not isinstance(other, Vector): - return NotImplemented - coordinates = self._map2(other, operator.add) - return Point(coordinates) + if isinstance(other, Vector): + coordinates = self._map2(other, operator.add) + return Point(coordinates) + return NotImplemented def __sub__(self, other): """ @@ -203,15 +203,15 @@ class Point(Coordinates, GeometricObject): elif isinstance(other, Vector): coordinates = self._map2(other, operator.sub) return Point(coordinates) - else: - return NotImplemented + return NotImplemented def __eq__(self, other): """ Test whether two points are equal. """ - return isinstance(other, Point) and \ - self._coordinates == other._coordinates + if isinstance(other, Point): + return self._coordinates == other._coordinates + return NotImplemented def aspolyhedron(self): from .polyhedra import Polyhedron