X-Git-Url: https://scm.cri.mines-paristech.fr/git/linpy.git/blobdiff_plain/48ede349025246bb3a3294f677b633991b69abad..0dba74e5eb85b09a85f0a986c3fbc6b5fcacceac:/linpy/geometry.py?ds=sidebyside diff --git a/linpy/geometry.py b/linpy/geometry.py index cc19a72..0b05493 100644 --- a/linpy/geometry.py +++ b/linpy/geometry.py @@ -142,6 +142,14 @@ class Coordinates: """ return any(self._coordinates.values()) + def __eq__(self, other): + """ + Return True if two coordinate systems are equal. + """ + if isinstance(other, self.__class__): + return self._coordinates == other._coordinates + return NotImplemented + def __hash__(self): return hash(tuple(self.coordinates())) @@ -206,14 +214,6 @@ class Point(Coordinates, GeometricObject): return Point(coordinates) return NotImplemented - def __eq__(self, other): - """ - Test whether two points are equal. - """ - if isinstance(other, Point): - return self._coordinates == other._coordinates - return NotImplemented - def aspolyhedron(self): from .polyhedra import Polyhedron equalities = [] @@ -301,14 +301,6 @@ class Vector(Coordinates): return Vector(coordinates) return NotImplemented - def __eq__(self, other): - """ - Test whether two vectors are equal. - """ - if isinstance(other, Vector): - return self._coordinates == other._coordinates - return NotImplemented - def angle(self, other): """ Retrieve the angle required to rotate the vector into the vector passed