GeometryBase ============ .. py:module:: rhino3dm .. py:class:: GeometryBase .. py:attribute:: ObjectType ObjectType: Useful for switch statements that need to differentiate between basic object types like points, curves, surfaces, and so on. .. py:attribute:: IsDeformable bool: True if object can be accurately modified with "squishy" transformations like projections, shears, and non-uniform scaling. .. py:attribute:: HasBrepForm bool: Returns True if the Brep.TryConvertBrep function will be successful for this object .. py:method:: Transform(xform) Transforms the geometry. If the input Transform has a SimilarityType of OrientationReversing, you may want to consider flipping the transformed geometry after calling this function when it makes sense. For example, you may want to call Flip() on a Brep after transforming it. :param Transform xform: Transformation to apply to geometry. :return: True if geometry successfully transformed. :rtype: bool .. py:method:: Translate(translationVector) Translates the object along the specified vector. :param rhino3dm.Vector3d translationVector: A moving vector. :return: True if geometry successfully translated. :rtype: bool .. py:method:: Scale(scaleFactor) Scales the object by the specified factor. The scale is centered at the origin. :param float scaleFactor: The uniform scaling factor. :return: True if geometry successfully scaled. :rtype: bool .. py:method:: Rotate(rotationAngle, rotationAxis, rotationCenter) Rotates the object about the specified axis. A positive rotation angle results in a counter-clockwise rotation about the axis (right hand rule). :param float angleRadians: Angle of rotation in radians. :param rhino3dm.Vector3d rotationAxis: Direction of the axis of rotation. :param rhino3dm.Point3d rotationCenter: Point on the axis of rotation. :return: True if geometry successfully rotated. :rtype: bool .. py:method:: GetBoundingBox() Bounding box solver. Gets the world axis aligned bounding box for the geometry. :param bool accurate: If true, a physically accurate bounding box will be computed. \ If not, a bounding box estimate will be computed. For some geometry types there is no \ difference between the estimate and the accurate bounding box. Estimated bounding boxes \ can be computed much (much) faster than accurate (or "tight") bounding boxes. \ Estimated bounding boxes are always similar to or larger than accurate bounding boxes. :return: The bounding box of the geometry in world coordinates or BoundingBox.Empty \ if not bounding box could be found. :rtype: rhino3dm.BoundingBox .. py:method:: MakeDeformable() If possible, converts the object into a form that can be accurately modified with "squishy" transformations like projections, shears, an non-uniform scaling. :return: False if object cannot be converted to a deformable object. True if object was \ already deformable or was converted into a deformable object. :rtype: bool .. py:method:: Duplicate() Constructs a deep (full) copy of this object. :return: An object of the same type as this, with the same properties and behavior. :rtype: rhino3dm.GeometryBase