@@ -0,0 +1,1105 @@
+from __future__ import absolute_import%0Afrom __future__ import division%0Afrom __future__ import print_function%0A%0Afrom compas.data import Data%0A%0A%0Aclass Geometry(Data):%0A    %22%22%22Base class for all geometric objects.%22%22%22%0A%0A    def __ne__(self, other):%0A        # this is not obvious to ironpython%0A        return not self.__eq__(other)%0A%0A    def transform(self, transformation):%0A        %22%22%22Transform the geometry.%0A%0A        Parameters%0A        ----------%0A        transformation : :class:%60Transformation%60%0A            The transformation used to transform the geometry.%0A%0A        Returns%0A        -------%0A        None%0A%0A        %22%22%22%0A        raise NotImplementedError%0A%0A    def transformed(self, transformation):%0A        %22%22%22Returns a transformed copy of this geometry.%0A%0A        Parameters%0A        ----------%0A        transformation : :class:%60Transformation%60%0A            The transformation used to transform the geometry.%0A%0A        Returns%0A        -------%0A        :class:%60Geometry%60%0A            The transformed geometry.%0A        %22%22%22%0A        primitive = self.copy()%0A        primitive.transform(transformation)%0A        return primitive%0A

add geometry as base class