Switch to setuptools
[linpy.git] / linpy / geometry.py
index cc19a72..0b05493 100644 (file)
@@ -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