from __future__ import absolute_import
from __future__ import division
from __future__ import print_function

from compas.data import Data


class Primitive(Data):
    """Base class for geometric primitives."""

    def __ne__(self, other):
        # this is not obvious to ironpython
        return not self.__eq__(other)

    def transform(self, transformation):
        """Transform the primitive.

        Parameters
        ----------
        transformation : :class:`Transformation`
            The transformation used to transform the Box.

        Returns
        -------
        None

        """
        raise NotImplementedError

    def transformed(self, transformation):
        """Returns a transformed copy of this primitive.

        Parameters
        ----------
        transformation : :class:`Transformation`
            The transformation used to transform the primitive.

        Returns
        -------
        :class:`Primitive`
            The transformed primitive.
        """
        primitive = self.copy()
        primitive.transform(transformation)
        return primitive

@@ -112,994 +112,107 @@
 rom 
-compas.data import Data%0A%0A%0Aclass Primitive(Data):%0A    %22%22%22Base class for geometric primitives.%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 primitive.%0A%0A        Parameters%0A        ----------%0A        transformation : :class:%60Transformation%60%0A            The transformation used to transform the Box.%0A%0A        Returns%0A        -------%0A        None%0A%0A        %22%22%22%0A        raise NotImplementedError%0A%0A    def transformed(self, transformation
+..geometry import Geometry%0A%0A%0Aclass Primitive(Geometry
 ):%0A    
-  
-  
 %22%22%22
-Returns a transformed copy of this primitive.%0A%0A        Parameters%0A        ----------%0A        transformation : :class:%60Transformation%60%0A            The transformation used to transform the primitive.%0A%0A        Returns%0A        -------%0A        :class:%60Primitive%60%0A            The transformed primitive.%0A        %22%22%22%0A        primitive = self.copy()%0A        primitive.transform(transformation)%0A        return primitive
+Base class for geometric primitives.%22%22%22
 %0A

rebase primitive