# This file was automatically generated by SWIG (http://www.swig.org).
# Version 4.0.1
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.

"""
StepGeom module, see official documentation at
https://www.opencascade.com/doc/occt-7.4.0/refman/html/package_stepgeom.html
"""

from sys import version_info as _swig_python_version_info
if _swig_python_version_info < (2, 7, 0):
    raise RuntimeError("Python 2.7 or later required")

# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _StepGeom
else:
    import _StepGeom

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

_swig_new_instance_method = _StepGeom.SWIG_PyInstanceMethod_New
_swig_new_static_method = _StepGeom.SWIG_PyStaticMethod_New

def _swig_repr(self):
    try:
        strthis = "proxy of " + self.this.__repr__()
    except __builtin__.Exception:
        strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)


def _swig_setattr_nondynamic_instance_variable(set):
    def set_instance_attr(self, name, value):
        if name == "thisown":
            self.this.own(value)
        elif name == "this":
            set(self, name, value)
        elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
            set(self, name, value)
        else:
            raise AttributeError("You cannot add instance attributes to %s" % self)
    return set_instance_attr


def _swig_setattr_nondynamic_class_variable(set):
    def set_class_attr(cls, name, value):
        if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
            set(cls, name, value)
        else:
            raise AttributeError("You cannot add class attributes to %s" % cls)
    return set_class_attr


def _swig_add_metaclass(metaclass):
    """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
    def wrapper(cls):
        return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
    return wrapper


class _SwigNonDynamicMeta(type):
    """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
    __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)


class SwigPyIterator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _StepGeom.delete_SwigPyIterator
    value = _swig_new_instance_method(_StepGeom.SwigPyIterator_value)
    incr = _swig_new_instance_method(_StepGeom.SwigPyIterator_incr)
    decr = _swig_new_instance_method(_StepGeom.SwigPyIterator_decr)
    distance = _swig_new_instance_method(_StepGeom.SwigPyIterator_distance)
    equal = _swig_new_instance_method(_StepGeom.SwigPyIterator_equal)
    copy = _swig_new_instance_method(_StepGeom.SwigPyIterator_copy)
    next = _swig_new_instance_method(_StepGeom.SwigPyIterator_next)
    __next__ = _swig_new_instance_method(_StepGeom.SwigPyIterator___next__)
    previous = _swig_new_instance_method(_StepGeom.SwigPyIterator_previous)
    advance = _swig_new_instance_method(_StepGeom.SwigPyIterator_advance)
    __eq__ = _swig_new_instance_method(_StepGeom.SwigPyIterator___eq__)
    __ne__ = _swig_new_instance_method(_StepGeom.SwigPyIterator___ne__)
    __iadd__ = _swig_new_instance_method(_StepGeom.SwigPyIterator___iadd__)
    __isub__ = _swig_new_instance_method(_StepGeom.SwigPyIterator___isub__)
    __add__ = _swig_new_instance_method(_StepGeom.SwigPyIterator___add__)
    __sub__ = _swig_new_instance_method(_StepGeom.SwigPyIterator___sub__)
    def __iter__(self):
        return self

# Register SwigPyIterator in _StepGeom:
_StepGeom.SwigPyIterator_swigregister(SwigPyIterator)


def _dumps_object(klass):
    """ Overwrite default string output for any wrapped object.
    By default, __repr__ method returns something like:
    <OCC.Core.TopoDS.TopoDS_Shape; proxy of <Swig Object of type 'TopoDS_Shape *' at 0x02BB0758> >
    This is too much verbose.
    We prefer :
    <class 'gp_Pnt'>
    or
    <class 'TopoDS_Shape'>
    """
    klass_name = str(klass.__class__).split(".")[3].split("'")[0]
    repr_string = "<class '" + klass_name + "'"
# for TopoDS_Shape, we also look for the base type
    if klass_name == "TopoDS_Shape":
        if klass.IsNull():
            repr_string += ": Null>"
            return repr_string
        st = klass.ShapeType()
        types = {OCC.Core.TopAbs.TopAbs_VERTEX: "Vertex",
                 OCC.Core.TopAbs.TopAbs_SOLID: "Solid",
                 OCC.Core.TopAbs.TopAbs_EDGE: "Edge",
                 OCC.Core.TopAbs.TopAbs_FACE: "Face",
                 OCC.Core.TopAbs.TopAbs_SHELL: "Shell",
                 OCC.Core.TopAbs.TopAbs_WIRE: "Wire",
                 OCC.Core.TopAbs.TopAbs_COMPOUND: "Compound",
                 OCC.Core.TopAbs.TopAbs_COMPSOLID: "Compsolid"}
        repr_string += "; Type:%s" % types[st]        
    elif hasattr(klass, "IsNull"):
        if klass.IsNull():
            repr_string += "; Null"
    repr_string += ">"
    return repr_string


from six import with_metaclass
import warnings
from OCC.Wrapper.wrapper_utils import Proxy, deprecated

import OCC.Core.Standard
import OCC.Core.NCollection
import OCC.Core.StepData
import OCC.Core.Interface
import OCC.Core.TCollection
import OCC.Core.TColStd
import OCC.Core.Message
import OCC.Core.MoniTool
import OCC.Core.TopoDS
import OCC.Core.TopAbs
import OCC.Core.TopLoc
import OCC.Core.gp
import OCC.Core.OSD
import OCC.Core.StepRepr
import OCC.Core.StepBasic
StepGeom_ktUniformKnots = _StepGeom.StepGeom_ktUniformKnots
StepGeom_ktUnspecified = _StepGeom.StepGeom_ktUnspecified
StepGeom_ktQuasiUniformKnots = _StepGeom.StepGeom_ktQuasiUniformKnots
StepGeom_ktPiecewiseBezierKnots = _StepGeom.StepGeom_ktPiecewiseBezierKnots
StepGeom_bssfPlaneSurf = _StepGeom.StepGeom_bssfPlaneSurf
StepGeom_bssfCylindricalSurf = _StepGeom.StepGeom_bssfCylindricalSurf
StepGeom_bssfConicalSurf = _StepGeom.StepGeom_bssfConicalSurf
StepGeom_bssfSphericalSurf = _StepGeom.StepGeom_bssfSphericalSurf
StepGeom_bssfToroidalSurf = _StepGeom.StepGeom_bssfToroidalSurf
StepGeom_bssfSurfOfRevolution = _StepGeom.StepGeom_bssfSurfOfRevolution
StepGeom_bssfRuledSurf = _StepGeom.StepGeom_bssfRuledSurf
StepGeom_bssfGeneralisedCone = _StepGeom.StepGeom_bssfGeneralisedCone
StepGeom_bssfQuadricSurf = _StepGeom.StepGeom_bssfQuadricSurf
StepGeom_bssfSurfOfLinearExtrusion = _StepGeom.StepGeom_bssfSurfOfLinearExtrusion
StepGeom_bssfUnspecified = _StepGeom.StepGeom_bssfUnspecified
StepGeom_bscfPolylineForm = _StepGeom.StepGeom_bscfPolylineForm
StepGeom_bscfCircularArc = _StepGeom.StepGeom_bscfCircularArc
StepGeom_bscfEllipticArc = _StepGeom.StepGeom_bscfEllipticArc
StepGeom_bscfParabolicArc = _StepGeom.StepGeom_bscfParabolicArc
StepGeom_bscfHyperbolicArc = _StepGeom.StepGeom_bscfHyperbolicArc
StepGeom_bscfUnspecified = _StepGeom.StepGeom_bscfUnspecified
StepGeom_tpCartesian = _StepGeom.StepGeom_tpCartesian
StepGeom_tpParameter = _StepGeom.StepGeom_tpParameter
StepGeom_tpUnspecified = _StepGeom.StepGeom_tpUnspecified
StepGeom_pscrCurve3d = _StepGeom.StepGeom_pscrCurve3d
StepGeom_pscrPcurveS1 = _StepGeom.StepGeom_pscrPcurveS1
StepGeom_pscrPcurveS2 = _StepGeom.StepGeom_pscrPcurveS2
StepGeom_tcDiscontinuous = _StepGeom.StepGeom_tcDiscontinuous
StepGeom_tcContinuous = _StepGeom.StepGeom_tcContinuous
StepGeom_tcContSameGradient = _StepGeom.StepGeom_tcContSameGradient
StepGeom_tcContSameGradientSameCurvature = _StepGeom.StepGeom_tcContSameGradientSameCurvature
Handle_StepGeom_CompositeCurveSegment_Create = _StepGeom.Handle_StepGeom_CompositeCurveSegment_Create
Handle_StepGeom_CompositeCurveSegment_DownCast = _StepGeom.Handle_StepGeom_CompositeCurveSegment_DownCast
Handle_StepGeom_CompositeCurveSegment_IsNull = _StepGeom.Handle_StepGeom_CompositeCurveSegment_IsNull
Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_Create = _StepGeom.Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_Create
Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_DownCast = _StepGeom.Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_DownCast
Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_IsNull = _StepGeom.Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_IsNull
Handle_StepGeom_GeometricRepresentationContext_Create = _StepGeom.Handle_StepGeom_GeometricRepresentationContext_Create
Handle_StepGeom_GeometricRepresentationContext_DownCast = _StepGeom.Handle_StepGeom_GeometricRepresentationContext_DownCast
Handle_StepGeom_GeometricRepresentationContext_IsNull = _StepGeom.Handle_StepGeom_GeometricRepresentationContext_IsNull
Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_Create = _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_Create
Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_DownCast = _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_DownCast
Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_IsNull = _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_IsNull
Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_Create = _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_Create
Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_DownCast = _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_DownCast
Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_IsNull = _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_IsNull
Handle_StepGeom_GeometricRepresentationItem_Create = _StepGeom.Handle_StepGeom_GeometricRepresentationItem_Create
Handle_StepGeom_GeometricRepresentationItem_DownCast = _StepGeom.Handle_StepGeom_GeometricRepresentationItem_DownCast
Handle_StepGeom_GeometricRepresentationItem_IsNull = _StepGeom.Handle_StepGeom_GeometricRepresentationItem_IsNull
Handle_StepGeom_SurfacePatch_Create = _StepGeom.Handle_StepGeom_SurfacePatch_Create
Handle_StepGeom_SurfacePatch_DownCast = _StepGeom.Handle_StepGeom_SurfacePatch_DownCast
Handle_StepGeom_SurfacePatch_IsNull = _StepGeom.Handle_StepGeom_SurfacePatch_IsNull
Handle_StepGeom_TrimmingMember_Create = _StepGeom.Handle_StepGeom_TrimmingMember_Create
Handle_StepGeom_TrimmingMember_DownCast = _StepGeom.Handle_StepGeom_TrimmingMember_DownCast
Handle_StepGeom_TrimmingMember_IsNull = _StepGeom.Handle_StepGeom_TrimmingMember_IsNull
Handle_StepGeom_CartesianTransformationOperator_Create = _StepGeom.Handle_StepGeom_CartesianTransformationOperator_Create
Handle_StepGeom_CartesianTransformationOperator_DownCast = _StepGeom.Handle_StepGeom_CartesianTransformationOperator_DownCast
Handle_StepGeom_CartesianTransformationOperator_IsNull = _StepGeom.Handle_StepGeom_CartesianTransformationOperator_IsNull
Handle_StepGeom_Curve_Create = _StepGeom.Handle_StepGeom_Curve_Create
Handle_StepGeom_Curve_DownCast = _StepGeom.Handle_StepGeom_Curve_DownCast
Handle_StepGeom_Curve_IsNull = _StepGeom.Handle_StepGeom_Curve_IsNull
Handle_StepGeom_Direction_Create = _StepGeom.Handle_StepGeom_Direction_Create
Handle_StepGeom_Direction_DownCast = _StepGeom.Handle_StepGeom_Direction_DownCast
Handle_StepGeom_Direction_IsNull = _StepGeom.Handle_StepGeom_Direction_IsNull
Handle_StepGeom_Placement_Create = _StepGeom.Handle_StepGeom_Placement_Create
Handle_StepGeom_Placement_DownCast = _StepGeom.Handle_StepGeom_Placement_DownCast
Handle_StepGeom_Placement_IsNull = _StepGeom.Handle_StepGeom_Placement_IsNull
Handle_StepGeom_Point_Create = _StepGeom.Handle_StepGeom_Point_Create
Handle_StepGeom_Point_DownCast = _StepGeom.Handle_StepGeom_Point_DownCast
Handle_StepGeom_Point_IsNull = _StepGeom.Handle_StepGeom_Point_IsNull
Handle_StepGeom_ReparametrisedCompositeCurveSegment_Create = _StepGeom.Handle_StepGeom_ReparametrisedCompositeCurveSegment_Create
Handle_StepGeom_ReparametrisedCompositeCurveSegment_DownCast = _StepGeom.Handle_StepGeom_ReparametrisedCompositeCurveSegment_DownCast
Handle_StepGeom_ReparametrisedCompositeCurveSegment_IsNull = _StepGeom.Handle_StepGeom_ReparametrisedCompositeCurveSegment_IsNull
Handle_StepGeom_Surface_Create = _StepGeom.Handle_StepGeom_Surface_Create
Handle_StepGeom_Surface_DownCast = _StepGeom.Handle_StepGeom_Surface_DownCast
Handle_StepGeom_Surface_IsNull = _StepGeom.Handle_StepGeom_Surface_IsNull
Handle_StepGeom_Vector_Create = _StepGeom.Handle_StepGeom_Vector_Create
Handle_StepGeom_Vector_DownCast = _StepGeom.Handle_StepGeom_Vector_DownCast
Handle_StepGeom_Vector_IsNull = _StepGeom.Handle_StepGeom_Vector_IsNull
Handle_StepGeom_Axis1Placement_Create = _StepGeom.Handle_StepGeom_Axis1Placement_Create
Handle_StepGeom_Axis1Placement_DownCast = _StepGeom.Handle_StepGeom_Axis1Placement_DownCast
Handle_StepGeom_Axis1Placement_IsNull = _StepGeom.Handle_StepGeom_Axis1Placement_IsNull
Handle_StepGeom_Axis2Placement2d_Create = _StepGeom.Handle_StepGeom_Axis2Placement2d_Create
Handle_StepGeom_Axis2Placement2d_DownCast = _StepGeom.Handle_StepGeom_Axis2Placement2d_DownCast
Handle_StepGeom_Axis2Placement2d_IsNull = _StepGeom.Handle_StepGeom_Axis2Placement2d_IsNull
Handle_StepGeom_Axis2Placement3d_Create = _StepGeom.Handle_StepGeom_Axis2Placement3d_Create
Handle_StepGeom_Axis2Placement3d_DownCast = _StepGeom.Handle_StepGeom_Axis2Placement3d_DownCast
Handle_StepGeom_Axis2Placement3d_IsNull = _StepGeom.Handle_StepGeom_Axis2Placement3d_IsNull
Handle_StepGeom_BoundedCurve_Create = _StepGeom.Handle_StepGeom_BoundedCurve_Create
Handle_StepGeom_BoundedCurve_DownCast = _StepGeom.Handle_StepGeom_BoundedCurve_DownCast
Handle_StepGeom_BoundedCurve_IsNull = _StepGeom.Handle_StepGeom_BoundedCurve_IsNull
Handle_StepGeom_BoundedSurface_Create = _StepGeom.Handle_StepGeom_BoundedSurface_Create
Handle_StepGeom_BoundedSurface_DownCast = _StepGeom.Handle_StepGeom_BoundedSurface_DownCast
Handle_StepGeom_BoundedSurface_IsNull = _StepGeom.Handle_StepGeom_BoundedSurface_IsNull
Handle_StepGeom_CartesianPoint_Create = _StepGeom.Handle_StepGeom_CartesianPoint_Create
Handle_StepGeom_CartesianPoint_DownCast = _StepGeom.Handle_StepGeom_CartesianPoint_DownCast
Handle_StepGeom_CartesianPoint_IsNull = _StepGeom.Handle_StepGeom_CartesianPoint_IsNull
Handle_StepGeom_CartesianTransformationOperator2d_Create = _StepGeom.Handle_StepGeom_CartesianTransformationOperator2d_Create
Handle_StepGeom_CartesianTransformationOperator2d_DownCast = _StepGeom.Handle_StepGeom_CartesianTransformationOperator2d_DownCast
Handle_StepGeom_CartesianTransformationOperator2d_IsNull = _StepGeom.Handle_StepGeom_CartesianTransformationOperator2d_IsNull
Handle_StepGeom_CartesianTransformationOperator3d_Create = _StepGeom.Handle_StepGeom_CartesianTransformationOperator3d_Create
Handle_StepGeom_CartesianTransformationOperator3d_DownCast = _StepGeom.Handle_StepGeom_CartesianTransformationOperator3d_DownCast
Handle_StepGeom_CartesianTransformationOperator3d_IsNull = _StepGeom.Handle_StepGeom_CartesianTransformationOperator3d_IsNull
Handle_StepGeom_Conic_Create = _StepGeom.Handle_StepGeom_Conic_Create
Handle_StepGeom_Conic_DownCast = _StepGeom.Handle_StepGeom_Conic_DownCast
Handle_StepGeom_Conic_IsNull = _StepGeom.Handle_StepGeom_Conic_IsNull
Handle_StepGeom_CurveReplica_Create = _StepGeom.Handle_StepGeom_CurveReplica_Create
Handle_StepGeom_CurveReplica_DownCast = _StepGeom.Handle_StepGeom_CurveReplica_DownCast
Handle_StepGeom_CurveReplica_IsNull = _StepGeom.Handle_StepGeom_CurveReplica_IsNull
Handle_StepGeom_DegeneratePcurve_Create = _StepGeom.Handle_StepGeom_DegeneratePcurve_Create
Handle_StepGeom_DegeneratePcurve_DownCast = _StepGeom.Handle_StepGeom_DegeneratePcurve_DownCast
Handle_StepGeom_DegeneratePcurve_IsNull = _StepGeom.Handle_StepGeom_DegeneratePcurve_IsNull
Handle_StepGeom_ElementarySurface_Create = _StepGeom.Handle_StepGeom_ElementarySurface_Create
Handle_StepGeom_ElementarySurface_DownCast = _StepGeom.Handle_StepGeom_ElementarySurface_DownCast
Handle_StepGeom_ElementarySurface_IsNull = _StepGeom.Handle_StepGeom_ElementarySurface_IsNull
Handle_StepGeom_Line_Create = _StepGeom.Handle_StepGeom_Line_Create
Handle_StepGeom_Line_DownCast = _StepGeom.Handle_StepGeom_Line_DownCast
Handle_StepGeom_Line_IsNull = _StepGeom.Handle_StepGeom_Line_IsNull
Handle_StepGeom_OffsetCurve3d_Create = _StepGeom.Handle_StepGeom_OffsetCurve3d_Create
Handle_StepGeom_OffsetCurve3d_DownCast = _StepGeom.Handle_StepGeom_OffsetCurve3d_DownCast
Handle_StepGeom_OffsetCurve3d_IsNull = _StepGeom.Handle_StepGeom_OffsetCurve3d_IsNull
Handle_StepGeom_OffsetSurface_Create = _StepGeom.Handle_StepGeom_OffsetSurface_Create
Handle_StepGeom_OffsetSurface_DownCast = _StepGeom.Handle_StepGeom_OffsetSurface_DownCast
Handle_StepGeom_OffsetSurface_IsNull = _StepGeom.Handle_StepGeom_OffsetSurface_IsNull
Handle_StepGeom_OrientedSurface_Create = _StepGeom.Handle_StepGeom_OrientedSurface_Create
Handle_StepGeom_OrientedSurface_DownCast = _StepGeom.Handle_StepGeom_OrientedSurface_DownCast
Handle_StepGeom_OrientedSurface_IsNull = _StepGeom.Handle_StepGeom_OrientedSurface_IsNull
Handle_StepGeom_Pcurve_Create = _StepGeom.Handle_StepGeom_Pcurve_Create
Handle_StepGeom_Pcurve_DownCast = _StepGeom.Handle_StepGeom_Pcurve_DownCast
Handle_StepGeom_Pcurve_IsNull = _StepGeom.Handle_StepGeom_Pcurve_IsNull
Handle_StepGeom_PointOnCurve_Create = _StepGeom.Handle_StepGeom_PointOnCurve_Create
Handle_StepGeom_PointOnCurve_DownCast = _StepGeom.Handle_StepGeom_PointOnCurve_DownCast
Handle_StepGeom_PointOnCurve_IsNull = _StepGeom.Handle_StepGeom_PointOnCurve_IsNull
Handle_StepGeom_PointOnSurface_Create = _StepGeom.Handle_StepGeom_PointOnSurface_Create
Handle_StepGeom_PointOnSurface_DownCast = _StepGeom.Handle_StepGeom_PointOnSurface_DownCast
Handle_StepGeom_PointOnSurface_IsNull = _StepGeom.Handle_StepGeom_PointOnSurface_IsNull
Handle_StepGeom_PointReplica_Create = _StepGeom.Handle_StepGeom_PointReplica_Create
Handle_StepGeom_PointReplica_DownCast = _StepGeom.Handle_StepGeom_PointReplica_DownCast
Handle_StepGeom_PointReplica_IsNull = _StepGeom.Handle_StepGeom_PointReplica_IsNull
Handle_StepGeom_SurfaceCurve_Create = _StepGeom.Handle_StepGeom_SurfaceCurve_Create
Handle_StepGeom_SurfaceCurve_DownCast = _StepGeom.Handle_StepGeom_SurfaceCurve_DownCast
Handle_StepGeom_SurfaceCurve_IsNull = _StepGeom.Handle_StepGeom_SurfaceCurve_IsNull
Handle_StepGeom_SurfaceReplica_Create = _StepGeom.Handle_StepGeom_SurfaceReplica_Create
Handle_StepGeom_SurfaceReplica_DownCast = _StepGeom.Handle_StepGeom_SurfaceReplica_DownCast
Handle_StepGeom_SurfaceReplica_IsNull = _StepGeom.Handle_StepGeom_SurfaceReplica_IsNull
Handle_StepGeom_SweptSurface_Create = _StepGeom.Handle_StepGeom_SweptSurface_Create
Handle_StepGeom_SweptSurface_DownCast = _StepGeom.Handle_StepGeom_SweptSurface_DownCast
Handle_StepGeom_SweptSurface_IsNull = _StepGeom.Handle_StepGeom_SweptSurface_IsNull
Handle_StepGeom_BSplineCurve_Create = _StepGeom.Handle_StepGeom_BSplineCurve_Create
Handle_StepGeom_BSplineCurve_DownCast = _StepGeom.Handle_StepGeom_BSplineCurve_DownCast
Handle_StepGeom_BSplineCurve_IsNull = _StepGeom.Handle_StepGeom_BSplineCurve_IsNull
Handle_StepGeom_BSplineSurface_Create = _StepGeom.Handle_StepGeom_BSplineSurface_Create
Handle_StepGeom_BSplineSurface_DownCast = _StepGeom.Handle_StepGeom_BSplineSurface_DownCast
Handle_StepGeom_BSplineSurface_IsNull = _StepGeom.Handle_StepGeom_BSplineSurface_IsNull
Handle_StepGeom_Circle_Create = _StepGeom.Handle_StepGeom_Circle_Create
Handle_StepGeom_Circle_DownCast = _StepGeom.Handle_StepGeom_Circle_DownCast
Handle_StepGeom_Circle_IsNull = _StepGeom.Handle_StepGeom_Circle_IsNull
Handle_StepGeom_CompositeCurve_Create = _StepGeom.Handle_StepGeom_CompositeCurve_Create
Handle_StepGeom_CompositeCurve_DownCast = _StepGeom.Handle_StepGeom_CompositeCurve_DownCast
Handle_StepGeom_CompositeCurve_IsNull = _StepGeom.Handle_StepGeom_CompositeCurve_IsNull
Handle_StepGeom_ConicalSurface_Create = _StepGeom.Handle_StepGeom_ConicalSurface_Create
Handle_StepGeom_ConicalSurface_DownCast = _StepGeom.Handle_StepGeom_ConicalSurface_DownCast
Handle_StepGeom_ConicalSurface_IsNull = _StepGeom.Handle_StepGeom_ConicalSurface_IsNull
Handle_StepGeom_CurveBoundedSurface_Create = _StepGeom.Handle_StepGeom_CurveBoundedSurface_Create
Handle_StepGeom_CurveBoundedSurface_DownCast = _StepGeom.Handle_StepGeom_CurveBoundedSurface_DownCast
Handle_StepGeom_CurveBoundedSurface_IsNull = _StepGeom.Handle_StepGeom_CurveBoundedSurface_IsNull
Handle_StepGeom_CylindricalSurface_Create = _StepGeom.Handle_StepGeom_CylindricalSurface_Create
Handle_StepGeom_CylindricalSurface_DownCast = _StepGeom.Handle_StepGeom_CylindricalSurface_DownCast
Handle_StepGeom_CylindricalSurface_IsNull = _StepGeom.Handle_StepGeom_CylindricalSurface_IsNull
Handle_StepGeom_Ellipse_Create = _StepGeom.Handle_StepGeom_Ellipse_Create
Handle_StepGeom_Ellipse_DownCast = _StepGeom.Handle_StepGeom_Ellipse_DownCast
Handle_StepGeom_Ellipse_IsNull = _StepGeom.Handle_StepGeom_Ellipse_IsNull
Handle_StepGeom_EvaluatedDegeneratePcurve_Create = _StepGeom.Handle_StepGeom_EvaluatedDegeneratePcurve_Create
Handle_StepGeom_EvaluatedDegeneratePcurve_DownCast = _StepGeom.Handle_StepGeom_EvaluatedDegeneratePcurve_DownCast
Handle_StepGeom_EvaluatedDegeneratePcurve_IsNull = _StepGeom.Handle_StepGeom_EvaluatedDegeneratePcurve_IsNull
Handle_StepGeom_Hyperbola_Create = _StepGeom.Handle_StepGeom_Hyperbola_Create
Handle_StepGeom_Hyperbola_DownCast = _StepGeom.Handle_StepGeom_Hyperbola_DownCast
Handle_StepGeom_Hyperbola_IsNull = _StepGeom.Handle_StepGeom_Hyperbola_IsNull
Handle_StepGeom_IntersectionCurve_Create = _StepGeom.Handle_StepGeom_IntersectionCurve_Create
Handle_StepGeom_IntersectionCurve_DownCast = _StepGeom.Handle_StepGeom_IntersectionCurve_DownCast
Handle_StepGeom_IntersectionCurve_IsNull = _StepGeom.Handle_StepGeom_IntersectionCurve_IsNull
Handle_StepGeom_Parabola_Create = _StepGeom.Handle_StepGeom_Parabola_Create
Handle_StepGeom_Parabola_DownCast = _StepGeom.Handle_StepGeom_Parabola_DownCast
Handle_StepGeom_Parabola_IsNull = _StepGeom.Handle_StepGeom_Parabola_IsNull
Handle_StepGeom_Plane_Create = _StepGeom.Handle_StepGeom_Plane_Create
Handle_StepGeom_Plane_DownCast = _StepGeom.Handle_StepGeom_Plane_DownCast
Handle_StepGeom_Plane_IsNull = _StepGeom.Handle_StepGeom_Plane_IsNull
Handle_StepGeom_Polyline_Create = _StepGeom.Handle_StepGeom_Polyline_Create
Handle_StepGeom_Polyline_DownCast = _StepGeom.Handle_StepGeom_Polyline_DownCast
Handle_StepGeom_Polyline_IsNull = _StepGeom.Handle_StepGeom_Polyline_IsNull
Handle_StepGeom_RectangularCompositeSurface_Create = _StepGeom.Handle_StepGeom_RectangularCompositeSurface_Create
Handle_StepGeom_RectangularCompositeSurface_DownCast = _StepGeom.Handle_StepGeom_RectangularCompositeSurface_DownCast
Handle_StepGeom_RectangularCompositeSurface_IsNull = _StepGeom.Handle_StepGeom_RectangularCompositeSurface_IsNull
Handle_StepGeom_RectangularTrimmedSurface_Create = _StepGeom.Handle_StepGeom_RectangularTrimmedSurface_Create
Handle_StepGeom_RectangularTrimmedSurface_DownCast = _StepGeom.Handle_StepGeom_RectangularTrimmedSurface_DownCast
Handle_StepGeom_RectangularTrimmedSurface_IsNull = _StepGeom.Handle_StepGeom_RectangularTrimmedSurface_IsNull
Handle_StepGeom_SeamCurve_Create = _StepGeom.Handle_StepGeom_SeamCurve_Create
Handle_StepGeom_SeamCurve_DownCast = _StepGeom.Handle_StepGeom_SeamCurve_DownCast
Handle_StepGeom_SeamCurve_IsNull = _StepGeom.Handle_StepGeom_SeamCurve_IsNull
Handle_StepGeom_SphericalSurface_Create = _StepGeom.Handle_StepGeom_SphericalSurface_Create
Handle_StepGeom_SphericalSurface_DownCast = _StepGeom.Handle_StepGeom_SphericalSurface_DownCast
Handle_StepGeom_SphericalSurface_IsNull = _StepGeom.Handle_StepGeom_SphericalSurface_IsNull
Handle_StepGeom_SurfaceCurveAndBoundedCurve_Create = _StepGeom.Handle_StepGeom_SurfaceCurveAndBoundedCurve_Create
Handle_StepGeom_SurfaceCurveAndBoundedCurve_DownCast = _StepGeom.Handle_StepGeom_SurfaceCurveAndBoundedCurve_DownCast
Handle_StepGeom_SurfaceCurveAndBoundedCurve_IsNull = _StepGeom.Handle_StepGeom_SurfaceCurveAndBoundedCurve_IsNull
Handle_StepGeom_SurfaceOfLinearExtrusion_Create = _StepGeom.Handle_StepGeom_SurfaceOfLinearExtrusion_Create
Handle_StepGeom_SurfaceOfLinearExtrusion_DownCast = _StepGeom.Handle_StepGeom_SurfaceOfLinearExtrusion_DownCast
Handle_StepGeom_SurfaceOfLinearExtrusion_IsNull = _StepGeom.Handle_StepGeom_SurfaceOfLinearExtrusion_IsNull
Handle_StepGeom_SurfaceOfRevolution_Create = _StepGeom.Handle_StepGeom_SurfaceOfRevolution_Create
Handle_StepGeom_SurfaceOfRevolution_DownCast = _StepGeom.Handle_StepGeom_SurfaceOfRevolution_DownCast
Handle_StepGeom_SurfaceOfRevolution_IsNull = _StepGeom.Handle_StepGeom_SurfaceOfRevolution_IsNull
Handle_StepGeom_ToroidalSurface_Create = _StepGeom.Handle_StepGeom_ToroidalSurface_Create
Handle_StepGeom_ToroidalSurface_DownCast = _StepGeom.Handle_StepGeom_ToroidalSurface_DownCast
Handle_StepGeom_ToroidalSurface_IsNull = _StepGeom.Handle_StepGeom_ToroidalSurface_IsNull
Handle_StepGeom_TrimmedCurve_Create = _StepGeom.Handle_StepGeom_TrimmedCurve_Create
Handle_StepGeom_TrimmedCurve_DownCast = _StepGeom.Handle_StepGeom_TrimmedCurve_DownCast
Handle_StepGeom_TrimmedCurve_IsNull = _StepGeom.Handle_StepGeom_TrimmedCurve_IsNull
Handle_StepGeom_BSplineCurveWithKnots_Create = _StepGeom.Handle_StepGeom_BSplineCurveWithKnots_Create
Handle_StepGeom_BSplineCurveWithKnots_DownCast = _StepGeom.Handle_StepGeom_BSplineCurveWithKnots_DownCast
Handle_StepGeom_BSplineCurveWithKnots_IsNull = _StepGeom.Handle_StepGeom_BSplineCurveWithKnots_IsNull
Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_Create = _StepGeom.Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_Create
Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_DownCast = _StepGeom.Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_DownCast
Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_IsNull = _StepGeom.Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_IsNull
Handle_StepGeom_BSplineSurfaceWithKnots_Create = _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnots_Create
Handle_StepGeom_BSplineSurfaceWithKnots_DownCast = _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnots_DownCast
Handle_StepGeom_BSplineSurfaceWithKnots_IsNull = _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnots_IsNull
Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_Create = _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_Create
Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_DownCast = _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_DownCast
Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_IsNull = _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_IsNull
Handle_StepGeom_BezierCurve_Create = _StepGeom.Handle_StepGeom_BezierCurve_Create
Handle_StepGeom_BezierCurve_DownCast = _StepGeom.Handle_StepGeom_BezierCurve_DownCast
Handle_StepGeom_BezierCurve_IsNull = _StepGeom.Handle_StepGeom_BezierCurve_IsNull
Handle_StepGeom_BezierCurveAndRationalBSplineCurve_Create = _StepGeom.Handle_StepGeom_BezierCurveAndRationalBSplineCurve_Create
Handle_StepGeom_BezierCurveAndRationalBSplineCurve_DownCast = _StepGeom.Handle_StepGeom_BezierCurveAndRationalBSplineCurve_DownCast
Handle_StepGeom_BezierCurveAndRationalBSplineCurve_IsNull = _StepGeom.Handle_StepGeom_BezierCurveAndRationalBSplineCurve_IsNull
Handle_StepGeom_BezierSurface_Create = _StepGeom.Handle_StepGeom_BezierSurface_Create
Handle_StepGeom_BezierSurface_DownCast = _StepGeom.Handle_StepGeom_BezierSurface_DownCast
Handle_StepGeom_BezierSurface_IsNull = _StepGeom.Handle_StepGeom_BezierSurface_IsNull
Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_Create = _StepGeom.Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_Create
Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_DownCast = _StepGeom.Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_DownCast
Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_IsNull = _StepGeom.Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_IsNull
Handle_StepGeom_CompositeCurveOnSurface_Create = _StepGeom.Handle_StepGeom_CompositeCurveOnSurface_Create
Handle_StepGeom_CompositeCurveOnSurface_DownCast = _StepGeom.Handle_StepGeom_CompositeCurveOnSurface_DownCast
Handle_StepGeom_CompositeCurveOnSurface_IsNull = _StepGeom.Handle_StepGeom_CompositeCurveOnSurface_IsNull
Handle_StepGeom_DegenerateToroidalSurface_Create = _StepGeom.Handle_StepGeom_DegenerateToroidalSurface_Create
Handle_StepGeom_DegenerateToroidalSurface_DownCast = _StepGeom.Handle_StepGeom_DegenerateToroidalSurface_DownCast
Handle_StepGeom_DegenerateToroidalSurface_IsNull = _StepGeom.Handle_StepGeom_DegenerateToroidalSurface_IsNull
Handle_StepGeom_QuasiUniformCurve_Create = _StepGeom.Handle_StepGeom_QuasiUniformCurve_Create
Handle_StepGeom_QuasiUniformCurve_DownCast = _StepGeom.Handle_StepGeom_QuasiUniformCurve_DownCast
Handle_StepGeom_QuasiUniformCurve_IsNull = _StepGeom.Handle_StepGeom_QuasiUniformCurve_IsNull
Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_Create = _StepGeom.Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_Create
Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_DownCast = _StepGeom.Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_DownCast
Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_IsNull = _StepGeom.Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_IsNull
Handle_StepGeom_QuasiUniformSurface_Create = _StepGeom.Handle_StepGeom_QuasiUniformSurface_Create
Handle_StepGeom_QuasiUniformSurface_DownCast = _StepGeom.Handle_StepGeom_QuasiUniformSurface_DownCast
Handle_StepGeom_QuasiUniformSurface_IsNull = _StepGeom.Handle_StepGeom_QuasiUniformSurface_IsNull
Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_Create = _StepGeom.Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_Create
Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_DownCast = _StepGeom.Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_DownCast
Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_IsNull = _StepGeom.Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_IsNull
Handle_StepGeom_RationalBSplineCurve_Create = _StepGeom.Handle_StepGeom_RationalBSplineCurve_Create
Handle_StepGeom_RationalBSplineCurve_DownCast = _StepGeom.Handle_StepGeom_RationalBSplineCurve_DownCast
Handle_StepGeom_RationalBSplineCurve_IsNull = _StepGeom.Handle_StepGeom_RationalBSplineCurve_IsNull
Handle_StepGeom_RationalBSplineSurface_Create = _StepGeom.Handle_StepGeom_RationalBSplineSurface_Create
Handle_StepGeom_RationalBSplineSurface_DownCast = _StepGeom.Handle_StepGeom_RationalBSplineSurface_DownCast
Handle_StepGeom_RationalBSplineSurface_IsNull = _StepGeom.Handle_StepGeom_RationalBSplineSurface_IsNull
Handle_StepGeom_UniformCurve_Create = _StepGeom.Handle_StepGeom_UniformCurve_Create
Handle_StepGeom_UniformCurve_DownCast = _StepGeom.Handle_StepGeom_UniformCurve_DownCast
Handle_StepGeom_UniformCurve_IsNull = _StepGeom.Handle_StepGeom_UniformCurve_IsNull
Handle_StepGeom_UniformCurveAndRationalBSplineCurve_Create = _StepGeom.Handle_StepGeom_UniformCurveAndRationalBSplineCurve_Create
Handle_StepGeom_UniformCurveAndRationalBSplineCurve_DownCast = _StepGeom.Handle_StepGeom_UniformCurveAndRationalBSplineCurve_DownCast
Handle_StepGeom_UniformCurveAndRationalBSplineCurve_IsNull = _StepGeom.Handle_StepGeom_UniformCurveAndRationalBSplineCurve_IsNull
Handle_StepGeom_UniformSurface_Create = _StepGeom.Handle_StepGeom_UniformSurface_Create
Handle_StepGeom_UniformSurface_DownCast = _StepGeom.Handle_StepGeom_UniformSurface_DownCast
Handle_StepGeom_UniformSurface_IsNull = _StepGeom.Handle_StepGeom_UniformSurface_IsNull
Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_Create = _StepGeom.Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_Create
Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_DownCast = _StepGeom.Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_DownCast
Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_IsNull = _StepGeom.Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_IsNull
Handle_StepGeom_BoundaryCurve_Create = _StepGeom.Handle_StepGeom_BoundaryCurve_Create
Handle_StepGeom_BoundaryCurve_DownCast = _StepGeom.Handle_StepGeom_BoundaryCurve_DownCast
Handle_StepGeom_BoundaryCurve_IsNull = _StepGeom.Handle_StepGeom_BoundaryCurve_IsNull
Handle_StepGeom_OuterBoundaryCurve_Create = _StepGeom.Handle_StepGeom_OuterBoundaryCurve_Create
Handle_StepGeom_OuterBoundaryCurve_DownCast = _StepGeom.Handle_StepGeom_OuterBoundaryCurve_DownCast
Handle_StepGeom_OuterBoundaryCurve_IsNull = _StepGeom.Handle_StepGeom_OuterBoundaryCurve_IsNull
Handle_StepGeom_HArray1OfCartesianPoint_Create = _StepGeom.Handle_StepGeom_HArray1OfCartesianPoint_Create
Handle_StepGeom_HArray1OfCartesianPoint_DownCast = _StepGeom.Handle_StepGeom_HArray1OfCartesianPoint_DownCast
Handle_StepGeom_HArray1OfCartesianPoint_IsNull = _StepGeom.Handle_StepGeom_HArray1OfCartesianPoint_IsNull
Handle_StepGeom_HArray1OfPcurveOrSurface_Create = _StepGeom.Handle_StepGeom_HArray1OfPcurveOrSurface_Create
Handle_StepGeom_HArray1OfPcurveOrSurface_DownCast = _StepGeom.Handle_StepGeom_HArray1OfPcurveOrSurface_DownCast
Handle_StepGeom_HArray1OfPcurveOrSurface_IsNull = _StepGeom.Handle_StepGeom_HArray1OfPcurveOrSurface_IsNull
Handle_StepGeom_HArray1OfSurfaceBoundary_Create = _StepGeom.Handle_StepGeom_HArray1OfSurfaceBoundary_Create
Handle_StepGeom_HArray1OfSurfaceBoundary_DownCast = _StepGeom.Handle_StepGeom_HArray1OfSurfaceBoundary_DownCast
Handle_StepGeom_HArray1OfSurfaceBoundary_IsNull = _StepGeom.Handle_StepGeom_HArray1OfSurfaceBoundary_IsNull
Handle_StepGeom_HArray1OfBoundaryCurve_Create = _StepGeom.Handle_StepGeom_HArray1OfBoundaryCurve_Create
Handle_StepGeom_HArray1OfBoundaryCurve_DownCast = _StepGeom.Handle_StepGeom_HArray1OfBoundaryCurve_DownCast
Handle_StepGeom_HArray1OfBoundaryCurve_IsNull = _StepGeom.Handle_StepGeom_HArray1OfBoundaryCurve_IsNull
Handle_StepGeom_HArray1OfCompositeCurveSegment_Create = _StepGeom.Handle_StepGeom_HArray1OfCompositeCurveSegment_Create
Handle_StepGeom_HArray1OfCompositeCurveSegment_DownCast = _StepGeom.Handle_StepGeom_HArray1OfCompositeCurveSegment_DownCast
Handle_StepGeom_HArray1OfCompositeCurveSegment_IsNull = _StepGeom.Handle_StepGeom_HArray1OfCompositeCurveSegment_IsNull
Handle_StepGeom_HArray1OfCurve_Create = _StepGeom.Handle_StepGeom_HArray1OfCurve_Create
Handle_StepGeom_HArray1OfCurve_DownCast = _StepGeom.Handle_StepGeom_HArray1OfCurve_DownCast
Handle_StepGeom_HArray1OfCurve_IsNull = _StepGeom.Handle_StepGeom_HArray1OfCurve_IsNull
Handle_StepGeom_HArray1OfTrimmingSelect_Create = _StepGeom.Handle_StepGeom_HArray1OfTrimmingSelect_Create
Handle_StepGeom_HArray1OfTrimmingSelect_DownCast = _StepGeom.Handle_StepGeom_HArray1OfTrimmingSelect_DownCast
Handle_StepGeom_HArray1OfTrimmingSelect_IsNull = _StepGeom.Handle_StepGeom_HArray1OfTrimmingSelect_IsNull
Handle_StepGeom_HArray2OfSurfacePatch_Create = _StepGeom.Handle_StepGeom_HArray2OfSurfacePatch_Create
Handle_StepGeom_HArray2OfSurfacePatch_DownCast = _StepGeom.Handle_StepGeom_HArray2OfSurfacePatch_DownCast
Handle_StepGeom_HArray2OfSurfacePatch_IsNull = _StepGeom.Handle_StepGeom_HArray2OfSurfacePatch_IsNull
Handle_StepGeom_HArray2OfCartesianPoint_Create = _StepGeom.Handle_StepGeom_HArray2OfCartesianPoint_Create
Handle_StepGeom_HArray2OfCartesianPoint_DownCast = _StepGeom.Handle_StepGeom_HArray2OfCartesianPoint_DownCast
Handle_StepGeom_HArray2OfCartesianPoint_IsNull = _StepGeom.Handle_StepGeom_HArray2OfCartesianPoint_IsNull
class StepGeom_Array1OfCurve(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_begin)
    end = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_end)
    cbegin = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_cbegin)
    cend = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_cend)

    def __init__(self, *args):
        _StepGeom.StepGeom_Array1OfCurve_swiginit(self, _StepGeom.new_StepGeom_Array1OfCurve(*args))
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_Init)
    Size = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_Size)
    Length = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_Length)
    IsEmpty = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_IsEmpty)
    Lower = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_Lower)
    Upper = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_Upper)
    IsDeletable = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_IsDeletable)
    IsAllocated = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_IsAllocated)
    Assign = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_Assign)
    Move = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_Move)
    Set = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_Set)
    First = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_First)
    ChangeFirst = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_ChangeFirst)
    Last = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_Last)
    ChangeLast = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_ChangeLast)
    Value = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_Value)
    ChangeValue = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_ChangeValue)
    __call__ = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve___call__)
    SetValue = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_SetValue)
    Resize = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCurve_Resize)
    __swig_destroy__ = _StepGeom.delete_StepGeom_Array1OfCurve

    def __getitem__(self, index):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            return self.Value(index + self.Lower())

    def __setitem__(self, index, value):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            self.SetValue(index + self.Lower(), value)

    def __len__(self):
        return self.Length()

    def __iter__(self):
        self.low = self.Lower()
        self.up = self.Upper()
        self.current = self.Lower() - 1
        return self

    def next(self):
        if self.current >= self.Upper():
            raise StopIteration
        else:
            self.current += 1
        return self.Value(self.current)

    __next__ = next


# Register StepGeom_Array1OfCurve in _StepGeom:
_StepGeom.StepGeom_Array1OfCurve_swigregister(StepGeom_Array1OfCurve)

class StepGeom_Array1OfPcurveOrSurface(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_begin)
    end = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_end)
    cbegin = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_cbegin)
    cend = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_cend)

    def __init__(self, *args):
        _StepGeom.StepGeom_Array1OfPcurveOrSurface_swiginit(self, _StepGeom.new_StepGeom_Array1OfPcurveOrSurface(*args))
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_Init)
    Size = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_Size)
    Length = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_Length)
    IsEmpty = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_IsEmpty)
    Lower = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_Lower)
    Upper = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_Upper)
    IsDeletable = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_IsDeletable)
    IsAllocated = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_IsAllocated)
    Assign = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_Assign)
    Move = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_Move)
    Set = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_Set)
    First = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_First)
    ChangeFirst = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_ChangeFirst)
    Last = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_Last)
    ChangeLast = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_ChangeLast)
    Value = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_Value)
    ChangeValue = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_ChangeValue)
    __call__ = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface___call__)
    SetValue = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_SetValue)
    Resize = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfPcurveOrSurface_Resize)
    __swig_destroy__ = _StepGeom.delete_StepGeom_Array1OfPcurveOrSurface

    def __getitem__(self, index):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            return self.Value(index + self.Lower())

    def __setitem__(self, index, value):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            self.SetValue(index + self.Lower(), value)

    def __len__(self):
        return self.Length()

    def __iter__(self):
        self.low = self.Lower()
        self.up = self.Upper()
        self.current = self.Lower() - 1
        return self

    def next(self):
        if self.current >= self.Upper():
            raise StopIteration
        else:
            self.current += 1
        return self.Value(self.current)

    __next__ = next


# Register StepGeom_Array1OfPcurveOrSurface in _StepGeom:
_StepGeom.StepGeom_Array1OfPcurveOrSurface_swigregister(StepGeom_Array1OfPcurveOrSurface)

class StepGeom_Array1OfBoundaryCurve(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_begin)
    end = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_end)
    cbegin = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_cbegin)
    cend = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_cend)

    def __init__(self, *args):
        _StepGeom.StepGeom_Array1OfBoundaryCurve_swiginit(self, _StepGeom.new_StepGeom_Array1OfBoundaryCurve(*args))
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_Init)
    Size = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_Size)
    Length = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_Length)
    IsEmpty = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_IsEmpty)
    Lower = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_Lower)
    Upper = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_Upper)
    IsDeletable = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_IsDeletable)
    IsAllocated = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_IsAllocated)
    Assign = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_Assign)
    Move = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_Move)
    Set = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_Set)
    First = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_First)
    ChangeFirst = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_ChangeFirst)
    Last = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_Last)
    ChangeLast = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_ChangeLast)
    Value = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_Value)
    ChangeValue = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_ChangeValue)
    __call__ = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve___call__)
    SetValue = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_SetValue)
    Resize = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfBoundaryCurve_Resize)
    __swig_destroy__ = _StepGeom.delete_StepGeom_Array1OfBoundaryCurve

    def __getitem__(self, index):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            return self.Value(index + self.Lower())

    def __setitem__(self, index, value):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            self.SetValue(index + self.Lower(), value)

    def __len__(self):
        return self.Length()

    def __iter__(self):
        self.low = self.Lower()
        self.up = self.Upper()
        self.current = self.Lower() - 1
        return self

    def next(self):
        if self.current >= self.Upper():
            raise StopIteration
        else:
            self.current += 1
        return self.Value(self.current)

    __next__ = next


# Register StepGeom_Array1OfBoundaryCurve in _StepGeom:
_StepGeom.StepGeom_Array1OfBoundaryCurve_swigregister(StepGeom_Array1OfBoundaryCurve)

class StepGeom_Array2OfCartesianPoint(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _StepGeom.StepGeom_Array2OfCartesianPoint_swiginit(self, _StepGeom.new_StepGeom_Array2OfCartesianPoint(*args))
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_Init)
    Size = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_Size)
    Length = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_Length)
    NbRows = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_NbRows)
    NbColumns = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_NbColumns)
    RowLength = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_RowLength)
    ColLength = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_ColLength)
    LowerRow = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_LowerRow)
    UpperRow = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_UpperRow)
    LowerCol = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_LowerCol)
    UpperCol = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_UpperCol)
    IsDeletable = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_IsDeletable)
    Assign = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_Assign)
    Move = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_Move)
    Set = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_Set)
    Value = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_Value)
    ChangeValue = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_ChangeValue)
    __call__ = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint___call__)
    SetValue = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_SetValue)
    Resize = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfCartesianPoint_Resize)
    __swig_destroy__ = _StepGeom.delete_StepGeom_Array2OfCartesianPoint

# Register StepGeom_Array2OfCartesianPoint in _StepGeom:
_StepGeom.StepGeom_Array2OfCartesianPoint_swigregister(StepGeom_Array2OfCartesianPoint)

class StepGeom_Array2OfSurfacePatch(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _StepGeom.StepGeom_Array2OfSurfacePatch_swiginit(self, _StepGeom.new_StepGeom_Array2OfSurfacePatch(*args))
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_Init)
    Size = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_Size)
    Length = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_Length)
    NbRows = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_NbRows)
    NbColumns = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_NbColumns)
    RowLength = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_RowLength)
    ColLength = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_ColLength)
    LowerRow = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_LowerRow)
    UpperRow = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_UpperRow)
    LowerCol = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_LowerCol)
    UpperCol = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_UpperCol)
    IsDeletable = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_IsDeletable)
    Assign = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_Assign)
    Move = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_Move)
    Set = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_Set)
    Value = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_Value)
    ChangeValue = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_ChangeValue)
    __call__ = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch___call__)
    SetValue = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_SetValue)
    Resize = _swig_new_instance_method(_StepGeom.StepGeom_Array2OfSurfacePatch_Resize)
    __swig_destroy__ = _StepGeom.delete_StepGeom_Array2OfSurfacePatch

# Register StepGeom_Array2OfSurfacePatch in _StepGeom:
_StepGeom.StepGeom_Array2OfSurfacePatch_swigregister(StepGeom_Array2OfSurfacePatch)

class StepGeom_Array1OfSurfaceBoundary(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_begin)
    end = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_end)
    cbegin = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_cbegin)
    cend = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_cend)

    def __init__(self, *args):
        _StepGeom.StepGeom_Array1OfSurfaceBoundary_swiginit(self, _StepGeom.new_StepGeom_Array1OfSurfaceBoundary(*args))
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_Init)
    Size = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_Size)
    Length = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_Length)
    IsEmpty = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_IsEmpty)
    Lower = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_Lower)
    Upper = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_Upper)
    IsDeletable = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_IsDeletable)
    IsAllocated = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_IsAllocated)
    Assign = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_Assign)
    Move = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_Move)
    Set = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_Set)
    First = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_First)
    ChangeFirst = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_ChangeFirst)
    Last = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_Last)
    ChangeLast = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_ChangeLast)
    Value = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_Value)
    ChangeValue = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_ChangeValue)
    __call__ = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary___call__)
    SetValue = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_SetValue)
    Resize = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfSurfaceBoundary_Resize)
    __swig_destroy__ = _StepGeom.delete_StepGeom_Array1OfSurfaceBoundary

    def __getitem__(self, index):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            return self.Value(index + self.Lower())

    def __setitem__(self, index, value):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            self.SetValue(index + self.Lower(), value)

    def __len__(self):
        return self.Length()

    def __iter__(self):
        self.low = self.Lower()
        self.up = self.Upper()
        self.current = self.Lower() - 1
        return self

    def next(self):
        if self.current >= self.Upper():
            raise StopIteration
        else:
            self.current += 1
        return self.Value(self.current)

    __next__ = next


# Register StepGeom_Array1OfSurfaceBoundary in _StepGeom:
_StepGeom.StepGeom_Array1OfSurfaceBoundary_swigregister(StepGeom_Array1OfSurfaceBoundary)

class StepGeom_Array1OfCompositeCurveSegment(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_begin)
    end = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_end)
    cbegin = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_cbegin)
    cend = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_cend)

    def __init__(self, *args):
        _StepGeom.StepGeom_Array1OfCompositeCurveSegment_swiginit(self, _StepGeom.new_StepGeom_Array1OfCompositeCurveSegment(*args))
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_Init)
    Size = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_Size)
    Length = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_Length)
    IsEmpty = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_IsEmpty)
    Lower = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_Lower)
    Upper = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_Upper)
    IsDeletable = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_IsDeletable)
    IsAllocated = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_IsAllocated)
    Assign = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_Assign)
    Move = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_Move)
    Set = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_Set)
    First = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_First)
    ChangeFirst = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_ChangeFirst)
    Last = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_Last)
    ChangeLast = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_ChangeLast)
    Value = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_Value)
    ChangeValue = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_ChangeValue)
    __call__ = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment___call__)
    SetValue = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_SetValue)
    Resize = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCompositeCurveSegment_Resize)
    __swig_destroy__ = _StepGeom.delete_StepGeom_Array1OfCompositeCurveSegment

    def __getitem__(self, index):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            return self.Value(index + self.Lower())

    def __setitem__(self, index, value):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            self.SetValue(index + self.Lower(), value)

    def __len__(self):
        return self.Length()

    def __iter__(self):
        self.low = self.Lower()
        self.up = self.Upper()
        self.current = self.Lower() - 1
        return self

    def next(self):
        if self.current >= self.Upper():
            raise StopIteration
        else:
            self.current += 1
        return self.Value(self.current)

    __next__ = next


# Register StepGeom_Array1OfCompositeCurveSegment in _StepGeom:
_StepGeom.StepGeom_Array1OfCompositeCurveSegment_swigregister(StepGeom_Array1OfCompositeCurveSegment)

class StepGeom_Array1OfTrimmingSelect(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_begin)
    end = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_end)
    cbegin = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_cbegin)
    cend = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_cend)

    def __init__(self, *args):
        _StepGeom.StepGeom_Array1OfTrimmingSelect_swiginit(self, _StepGeom.new_StepGeom_Array1OfTrimmingSelect(*args))
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_Init)
    Size = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_Size)
    Length = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_Length)
    IsEmpty = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_IsEmpty)
    Lower = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_Lower)
    Upper = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_Upper)
    IsDeletable = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_IsDeletable)
    IsAllocated = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_IsAllocated)
    Assign = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_Assign)
    Move = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_Move)
    Set = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_Set)
    First = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_First)
    ChangeFirst = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_ChangeFirst)
    Last = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_Last)
    ChangeLast = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_ChangeLast)
    Value = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_Value)
    ChangeValue = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_ChangeValue)
    __call__ = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect___call__)
    SetValue = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_SetValue)
    Resize = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfTrimmingSelect_Resize)
    __swig_destroy__ = _StepGeom.delete_StepGeom_Array1OfTrimmingSelect

    def __getitem__(self, index):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            return self.Value(index + self.Lower())

    def __setitem__(self, index, value):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            self.SetValue(index + self.Lower(), value)

    def __len__(self):
        return self.Length()

    def __iter__(self):
        self.low = self.Lower()
        self.up = self.Upper()
        self.current = self.Lower() - 1
        return self

    def next(self):
        if self.current >= self.Upper():
            raise StopIteration
        else:
            self.current += 1
        return self.Value(self.current)

    __next__ = next


# Register StepGeom_Array1OfTrimmingSelect in _StepGeom:
_StepGeom.StepGeom_Array1OfTrimmingSelect_swigregister(StepGeom_Array1OfTrimmingSelect)

class StepGeom_Array1OfCartesianPoint(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_begin)
    end = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_end)
    cbegin = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_cbegin)
    cend = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_cend)

    def __init__(self, *args):
        _StepGeom.StepGeom_Array1OfCartesianPoint_swiginit(self, _StepGeom.new_StepGeom_Array1OfCartesianPoint(*args))
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_Init)
    Size = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_Size)
    Length = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_Length)
    IsEmpty = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_IsEmpty)
    Lower = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_Lower)
    Upper = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_Upper)
    IsDeletable = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_IsDeletable)
    IsAllocated = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_IsAllocated)
    Assign = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_Assign)
    Move = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_Move)
    Set = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_Set)
    First = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_First)
    ChangeFirst = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_ChangeFirst)
    Last = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_Last)
    ChangeLast = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_ChangeLast)
    Value = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_Value)
    ChangeValue = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_ChangeValue)
    __call__ = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint___call__)
    SetValue = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_SetValue)
    Resize = _swig_new_instance_method(_StepGeom.StepGeom_Array1OfCartesianPoint_Resize)
    __swig_destroy__ = _StepGeom.delete_StepGeom_Array1OfCartesianPoint

    def __getitem__(self, index):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            return self.Value(index + self.Lower())

    def __setitem__(self, index, value):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            self.SetValue(index + self.Lower(), value)

    def __len__(self):
        return self.Length()

    def __iter__(self):
        self.low = self.Lower()
        self.up = self.Upper()
        self.current = self.Lower() - 1
        return self

    def next(self):
        if self.current >= self.Upper():
            raise StopIteration
        else:
            self.current += 1
        return self.Value(self.current)

    __next__ = next


# Register StepGeom_Array1OfCartesianPoint in _StepGeom:
_StepGeom.StepGeom_Array1OfCartesianPoint_swigregister(StepGeom_Array1OfCartesianPoint)

class StepGeom_Axis2Placement(OCC.Core.StepData.StepData_SelectType):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Axis2Placement2d = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement_Axis2Placement2d)
    Axis2Placement3d = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement_Axis2Placement3d)

    def __init__(self, *args):
        r"""
        * Returns a Axis2Placement SelectType
        	:rtype: None
        """
        _StepGeom.StepGeom_Axis2Placement_swiginit(self, _StepGeom.new_StepGeom_Axis2Placement(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Axis2Placement

# Register StepGeom_Axis2Placement in _StepGeom:
_StepGeom.StepGeom_Axis2Placement_swigregister(StepGeom_Axis2Placement)

class StepGeom_CompositeCurveSegment(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_CompositeCurveSegment_Init)
    ParentCurve = _swig_new_instance_method(_StepGeom.StepGeom_CompositeCurveSegment_ParentCurve)
    SameSense = _swig_new_instance_method(_StepGeom.StepGeom_CompositeCurveSegment_SameSense)
    SetParentCurve = _swig_new_instance_method(_StepGeom.StepGeom_CompositeCurveSegment_SetParentCurve)
    SetSameSense = _swig_new_instance_method(_StepGeom.StepGeom_CompositeCurveSegment_SetSameSense)
    SetTransition = _swig_new_instance_method(_StepGeom.StepGeom_CompositeCurveSegment_SetTransition)

    def __init__(self, *args):
        r"""
        * Returns a CompositeCurveSegment
        	:rtype: None
        """
        _StepGeom.StepGeom_CompositeCurveSegment_swiginit(self, _StepGeom.new_StepGeom_CompositeCurveSegment(*args))
    Transition = _swig_new_instance_method(_StepGeom.StepGeom_CompositeCurveSegment_Transition)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_CompositeCurveSegment_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_CompositeCurveSegment

# Register StepGeom_CompositeCurveSegment in _StepGeom:
_StepGeom.StepGeom_CompositeCurveSegment_swigregister(StepGeom_CompositeCurveSegment)

class StepGeom_CurveOnSurface(OCC.Core.StepData.StepData_SelectType):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    CompositeCurveOnSurface = _swig_new_instance_method(_StepGeom.StepGeom_CurveOnSurface_CompositeCurveOnSurface)
    Pcurve = _swig_new_instance_method(_StepGeom.StepGeom_CurveOnSurface_Pcurve)

    def __init__(self, *args):
        r"""
        * Returns a CurveOnSurface SelectType
        	:rtype: None
        """
        _StepGeom.StepGeom_CurveOnSurface_swiginit(self, _StepGeom.new_StepGeom_CurveOnSurface(*args))
    SurfaceCurve = _swig_new_instance_method(_StepGeom.StepGeom_CurveOnSurface_SurfaceCurve)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_CurveOnSurface

# Register StepGeom_CurveOnSurface in _StepGeom:
_StepGeom.StepGeom_CurveOnSurface_swigregister(StepGeom_CurveOnSurface)

class StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx(OCC.Core.StepRepr.StepRepr_RepresentationContext):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    CoordinateSpaceDimension = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_CoordinateSpaceDimension)
    GeometricRepresentationContext = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_GeometricRepresentationContext)
    GlobalUncertaintyAssignedContext = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_GlobalUncertaintyAssignedContext)
    GlobalUnitAssignedContext = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_GlobalUnitAssignedContext)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_Init)
    NbUncertainty = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_NbUncertainty)
    NbUnits = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_NbUnits)
    SetCoordinateSpaceDimension = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_SetCoordinateSpaceDimension)
    SetGeometricRepresentationContext = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_SetGeometricRepresentationContext)
    SetGlobalUncertaintyAssignedContext = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_SetGlobalUncertaintyAssignedContext)
    SetGlobalUnitAssignedContext = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_SetGlobalUnitAssignedContext)
    SetUncertainty = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_SetUncertainty)
    SetUnits = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_SetUnits)

    def __init__(self, *args):
        r""":rtype: None"""
        _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_swiginit(self, _StepGeom.new_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx(*args))
    Uncertainty = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_Uncertainty)
    UncertaintyValue = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_UncertaintyValue)
    Units = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_Units)
    UnitsValue = _swig_new_instance_method(_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_UnitsValue)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx

# Register StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx in _StepGeom:
_StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_swigregister(StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx)

class StepGeom_GeometricRepresentationContext(OCC.Core.StepRepr.StepRepr_RepresentationContext):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    CoordinateSpaceDimension = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContext_CoordinateSpaceDimension)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContext_Init)
    SetCoordinateSpaceDimension = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContext_SetCoordinateSpaceDimension)

    def __init__(self, *args):
        r"""
        * Returns a GeometricRepresentationContext
        	:rtype: None
        """
        _StepGeom.StepGeom_GeometricRepresentationContext_swiginit(self, _StepGeom.new_StepGeom_GeometricRepresentationContext(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_GeometricRepresentationContext_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_GeometricRepresentationContext

# Register StepGeom_GeometricRepresentationContext in _StepGeom:
_StepGeom.StepGeom_GeometricRepresentationContext_swigregister(StepGeom_GeometricRepresentationContext)

class StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext(OCC.Core.StepRepr.StepRepr_RepresentationContext):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    CoordinateSpaceDimension = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_CoordinateSpaceDimension)
    GeometricRepresentationContext = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_GeometricRepresentationContext)
    GlobalUnitAssignedContext = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_GlobalUnitAssignedContext)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_Init)
    NbUnits = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_NbUnits)
    SetCoordinateSpaceDimension = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_SetCoordinateSpaceDimension)
    SetGeometricRepresentationContext = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_SetGeometricRepresentationContext)
    SetGlobalUnitAssignedContext = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_SetGlobalUnitAssignedContext)
    SetUnits = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_SetUnits)

    def __init__(self, *args):
        r"""
        * Returns a GeometricRepresentationContextAndGlobalUnitAssignedContext
        	:rtype: None
        """
        _StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_swiginit(self, _StepGeom.new_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext(*args))
    Units = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_Units)
    UnitsValue = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_UnitsValue)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext

# Register StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext in _StepGeom:
_StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_swigregister(StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext)

class StepGeom_GeometricRepresentationContextAndParametricRepresentationContext(OCC.Core.StepRepr.StepRepr_RepresentationContext):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    CoordinateSpaceDimension = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_CoordinateSpaceDimension)
    GeometricRepresentationContext = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_GeometricRepresentationContext)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_Init)
    ParametricRepresentationContext = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_ParametricRepresentationContext)
    SetCoordinateSpaceDimension = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_SetCoordinateSpaceDimension)
    SetGeometricRepresentationContext = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_SetGeometricRepresentationContext)
    SetParametricRepresentationContext = _swig_new_instance_method(_StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_SetParametricRepresentationContext)

    def __init__(self, *args):
        r"""
        * empty constructor
        	:rtype: None
        """
        _StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_swiginit(self, _StepGeom.new_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext

# Register StepGeom_GeometricRepresentationContextAndParametricRepresentationContext in _StepGeom:
_StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_swigregister(StepGeom_GeometricRepresentationContextAndParametricRepresentationContext)

class StepGeom_GeometricRepresentationItem(OCC.Core.StepRepr.StepRepr_RepresentationItem):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a GeometricRepresentationItem
        	:rtype: None
        """
        _StepGeom.StepGeom_GeometricRepresentationItem_swiginit(self, _StepGeom.new_StepGeom_GeometricRepresentationItem(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_GeometricRepresentationItem_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_GeometricRepresentationItem

# Register StepGeom_GeometricRepresentationItem in _StepGeom:
_StepGeom.StepGeom_GeometricRepresentationItem_swigregister(StepGeom_GeometricRepresentationItem)

class StepGeom_PcurveOrSurface(OCC.Core.StepData.StepData_SelectType):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Pcurve = _swig_new_instance_method(_StepGeom.StepGeom_PcurveOrSurface_Pcurve)

    def __init__(self, *args):
        r"""
        * Returns a PcurveOrSurface SelectType
        	:rtype: None
        """
        _StepGeom.StepGeom_PcurveOrSurface_swiginit(self, _StepGeom.new_StepGeom_PcurveOrSurface(*args))
    Surface = _swig_new_instance_method(_StepGeom.StepGeom_PcurveOrSurface_Surface)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_PcurveOrSurface

# Register StepGeom_PcurveOrSurface in _StepGeom:
_StepGeom.StepGeom_PcurveOrSurface_swigregister(StepGeom_PcurveOrSurface)

class StepGeom_SurfaceBoundary(OCC.Core.StepData.StepData_SelectType):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BoundaryCurve = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceBoundary_BoundaryCurve)
    DegeneratePcurve = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceBoundary_DegeneratePcurve)

    def __init__(self, *args):
        r"""
        * Empty constructor
        	:rtype: None
        """
        _StepGeom.StepGeom_SurfaceBoundary_swiginit(self, _StepGeom.new_StepGeom_SurfaceBoundary(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_SurfaceBoundary

# Register StepGeom_SurfaceBoundary in _StepGeom:
_StepGeom.StepGeom_SurfaceBoundary_swigregister(StepGeom_SurfaceBoundary)

class StepGeom_SurfacePatch(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_SurfacePatch_Init)
    ParentSurface = _swig_new_instance_method(_StepGeom.StepGeom_SurfacePatch_ParentSurface)
    SetParentSurface = _swig_new_instance_method(_StepGeom.StepGeom_SurfacePatch_SetParentSurface)
    SetUSense = _swig_new_instance_method(_StepGeom.StepGeom_SurfacePatch_SetUSense)
    SetUTransition = _swig_new_instance_method(_StepGeom.StepGeom_SurfacePatch_SetUTransition)
    SetVSense = _swig_new_instance_method(_StepGeom.StepGeom_SurfacePatch_SetVSense)
    SetVTransition = _swig_new_instance_method(_StepGeom.StepGeom_SurfacePatch_SetVTransition)

    def __init__(self, *args):
        r"""
        * Returns a SurfacePatch
        	:rtype: None
        """
        _StepGeom.StepGeom_SurfacePatch_swiginit(self, _StepGeom.new_StepGeom_SurfacePatch(*args))
    USense = _swig_new_instance_method(_StepGeom.StepGeom_SurfacePatch_USense)
    UTransition = _swig_new_instance_method(_StepGeom.StepGeom_SurfacePatch_UTransition)
    VSense = _swig_new_instance_method(_StepGeom.StepGeom_SurfacePatch_VSense)
    VTransition = _swig_new_instance_method(_StepGeom.StepGeom_SurfacePatch_VTransition)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_SurfacePatch_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_SurfacePatch

# Register StepGeom_SurfacePatch in _StepGeom:
_StepGeom.StepGeom_SurfacePatch_swigregister(StepGeom_SurfacePatch)

class StepGeom_TrimmingMember(OCC.Core.StepData.StepData_SelectReal):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r""":rtype: None"""
        _StepGeom.StepGeom_TrimmingMember_swiginit(self, _StepGeom.new_StepGeom_TrimmingMember(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_TrimmingMember_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_TrimmingMember

# Register StepGeom_TrimmingMember in _StepGeom:
_StepGeom.StepGeom_TrimmingMember_swigregister(StepGeom_TrimmingMember)

class StepGeom_TrimmingSelect(OCC.Core.StepData.StepData_SelectType):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    CartesianPoint = _swig_new_instance_method(_StepGeom.StepGeom_TrimmingSelect_CartesianPoint)
    ParameterValue = _swig_new_instance_method(_StepGeom.StepGeom_TrimmingSelect_ParameterValue)
    SetParameterValue = _swig_new_instance_method(_StepGeom.StepGeom_TrimmingSelect_SetParameterValue)

    def __init__(self, *args):
        r"""
        * Returns a TrimmingSelect SelectType
        	:rtype: None
        """
        _StepGeom.StepGeom_TrimmingSelect_swiginit(self, _StepGeom.new_StepGeom_TrimmingSelect(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_TrimmingSelect

# Register StepGeom_TrimmingSelect in _StepGeom:
_StepGeom.StepGeom_TrimmingSelect_swigregister(StepGeom_TrimmingSelect)

class StepGeom_VectorOrDirection(OCC.Core.StepData.StepData_SelectType):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Direction = _swig_new_instance_method(_StepGeom.StepGeom_VectorOrDirection_Direction)

    def __init__(self, *args):
        r"""
        * Returns a VectorOrDirection SelectType
        	:rtype: None
        """
        _StepGeom.StepGeom_VectorOrDirection_swiginit(self, _StepGeom.new_StepGeom_VectorOrDirection(*args))
    Vector = _swig_new_instance_method(_StepGeom.StepGeom_VectorOrDirection_Vector)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_VectorOrDirection

# Register StepGeom_VectorOrDirection in _StepGeom:
_StepGeom.StepGeom_VectorOrDirection_swigregister(StepGeom_VectorOrDirection)

class StepGeom_CartesianTransformationOperator(StepGeom_GeometricRepresentationItem):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Axis1 = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_Axis1)
    Axis2 = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_Axis2)
    HasAxis1 = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_HasAxis1)
    HasAxis2 = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_HasAxis2)
    HasScale = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_HasScale)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_Init)
    LocalOrigin = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_LocalOrigin)
    Scale = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_Scale)
    SetAxis1 = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_SetAxis1)
    SetAxis2 = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_SetAxis2)
    SetLocalOrigin = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_SetLocalOrigin)
    SetScale = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_SetScale)

    def __init__(self, *args):
        r"""
        * Returns a CartesianTransformationOperator
        	:rtype: None
        """
        _StepGeom.StepGeom_CartesianTransformationOperator_swiginit(self, _StepGeom.new_StepGeom_CartesianTransformationOperator(*args))
    UnSetAxis1 = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_UnSetAxis1)
    UnSetAxis2 = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_UnSetAxis2)
    UnSetScale = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator_UnSetScale)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_CartesianTransformationOperator_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_CartesianTransformationOperator

# Register StepGeom_CartesianTransformationOperator in _StepGeom:
_StepGeom.StepGeom_CartesianTransformationOperator_swigregister(StepGeom_CartesianTransformationOperator)

class StepGeom_Curve(StepGeom_GeometricRepresentationItem):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a Curve
        	:rtype: None
        """
        _StepGeom.StepGeom_Curve_swiginit(self, _StepGeom.new_StepGeom_Curve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Curve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Curve

# Register StepGeom_Curve in _StepGeom:
_StepGeom.StepGeom_Curve_swigregister(StepGeom_Curve)

class StepGeom_Direction(StepGeom_GeometricRepresentationItem):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    DirectionRatios = _swig_new_instance_method(_StepGeom.StepGeom_Direction_DirectionRatios)
    DirectionRatiosValue = _swig_new_instance_method(_StepGeom.StepGeom_Direction_DirectionRatiosValue)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Direction_Init)
    NbDirectionRatios = _swig_new_instance_method(_StepGeom.StepGeom_Direction_NbDirectionRatios)
    SetDirectionRatios = _swig_new_instance_method(_StepGeom.StepGeom_Direction_SetDirectionRatios)

    def __init__(self, *args):
        r"""
        * Returns a Direction
        	:rtype: None
        """
        _StepGeom.StepGeom_Direction_swiginit(self, _StepGeom.new_StepGeom_Direction(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Direction_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Direction

# Register StepGeom_Direction in _StepGeom:
_StepGeom.StepGeom_Direction_swigregister(StepGeom_Direction)

class StepGeom_Placement(StepGeom_GeometricRepresentationItem):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Placement_Init)
    Location = _swig_new_instance_method(_StepGeom.StepGeom_Placement_Location)
    SetLocation = _swig_new_instance_method(_StepGeom.StepGeom_Placement_SetLocation)

    def __init__(self, *args):
        r"""
        * Returns a Placement
        	:rtype: None
        """
        _StepGeom.StepGeom_Placement_swiginit(self, _StepGeom.new_StepGeom_Placement(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Placement_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Placement

# Register StepGeom_Placement in _StepGeom:
_StepGeom.StepGeom_Placement_swigregister(StepGeom_Placement)

class StepGeom_Point(StepGeom_GeometricRepresentationItem):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a Point
        	:rtype: None
        """
        _StepGeom.StepGeom_Point_swiginit(self, _StepGeom.new_StepGeom_Point(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Point_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Point

# Register StepGeom_Point in _StepGeom:
_StepGeom.StepGeom_Point_swigregister(StepGeom_Point)

class StepGeom_ReparametrisedCompositeCurveSegment(StepGeom_CompositeCurveSegment):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_ReparametrisedCompositeCurveSegment_Init)
    ParamLength = _swig_new_instance_method(_StepGeom.StepGeom_ReparametrisedCompositeCurveSegment_ParamLength)
    SetParamLength = _swig_new_instance_method(_StepGeom.StepGeom_ReparametrisedCompositeCurveSegment_SetParamLength)

    def __init__(self, *args):
        r"""
        * Returns a ReparametrisedCompositeCurveSegment
        	:rtype: None
        """
        _StepGeom.StepGeom_ReparametrisedCompositeCurveSegment_swiginit(self, _StepGeom.new_StepGeom_ReparametrisedCompositeCurveSegment(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_ReparametrisedCompositeCurveSegment_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_ReparametrisedCompositeCurveSegment

# Register StepGeom_ReparametrisedCompositeCurveSegment in _StepGeom:
_StepGeom.StepGeom_ReparametrisedCompositeCurveSegment_swigregister(StepGeom_ReparametrisedCompositeCurveSegment)

class StepGeom_Surface(StepGeom_GeometricRepresentationItem):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a Surface
        	:rtype: None
        """
        _StepGeom.StepGeom_Surface_swiginit(self, _StepGeom.new_StepGeom_Surface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Surface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Surface

# Register StepGeom_Surface in _StepGeom:
_StepGeom.StepGeom_Surface_swigregister(StepGeom_Surface)

class StepGeom_Vector(StepGeom_GeometricRepresentationItem):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Vector_Init)
    Magnitude = _swig_new_instance_method(_StepGeom.StepGeom_Vector_Magnitude)
    Orientation = _swig_new_instance_method(_StepGeom.StepGeom_Vector_Orientation)
    SetMagnitude = _swig_new_instance_method(_StepGeom.StepGeom_Vector_SetMagnitude)
    SetOrientation = _swig_new_instance_method(_StepGeom.StepGeom_Vector_SetOrientation)

    def __init__(self, *args):
        r"""
        * Returns a Vector
        	:rtype: None
        """
        _StepGeom.StepGeom_Vector_swiginit(self, _StepGeom.new_StepGeom_Vector(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Vector_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Vector

# Register StepGeom_Vector in _StepGeom:
_StepGeom.StepGeom_Vector_swigregister(StepGeom_Vector)

class StepGeom_Axis1Placement(StepGeom_Placement):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Axis = _swig_new_instance_method(_StepGeom.StepGeom_Axis1Placement_Axis)
    HasAxis = _swig_new_instance_method(_StepGeom.StepGeom_Axis1Placement_HasAxis)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Axis1Placement_Init)
    SetAxis = _swig_new_instance_method(_StepGeom.StepGeom_Axis1Placement_SetAxis)

    def __init__(self, *args):
        r"""
        * Returns a Axis1Placement
        	:rtype: None
        """
        _StepGeom.StepGeom_Axis1Placement_swiginit(self, _StepGeom.new_StepGeom_Axis1Placement(*args))
    UnSetAxis = _swig_new_instance_method(_StepGeom.StepGeom_Axis1Placement_UnSetAxis)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Axis1Placement_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Axis1Placement

# Register StepGeom_Axis1Placement in _StepGeom:
_StepGeom.StepGeom_Axis1Placement_swigregister(StepGeom_Axis1Placement)

class StepGeom_Axis2Placement2d(StepGeom_Placement):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    HasRefDirection = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement2d_HasRefDirection)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement2d_Init)
    RefDirection = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement2d_RefDirection)
    SetRefDirection = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement2d_SetRefDirection)

    def __init__(self, *args):
        r"""
        * Returns a Axis2Placement2d
        	:rtype: None
        """
        _StepGeom.StepGeom_Axis2Placement2d_swiginit(self, _StepGeom.new_StepGeom_Axis2Placement2d(*args))
    UnSetRefDirection = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement2d_UnSetRefDirection)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Axis2Placement2d_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Axis2Placement2d

# Register StepGeom_Axis2Placement2d in _StepGeom:
_StepGeom.StepGeom_Axis2Placement2d_swigregister(StepGeom_Axis2Placement2d)

class StepGeom_Axis2Placement3d(StepGeom_Placement):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Axis = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement3d_Axis)
    HasAxis = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement3d_HasAxis)
    HasRefDirection = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement3d_HasRefDirection)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement3d_Init)
    RefDirection = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement3d_RefDirection)
    SetAxis = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement3d_SetAxis)
    SetRefDirection = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement3d_SetRefDirection)

    def __init__(self, *args):
        r"""
        * Returns a Axis2Placement3d
        	:rtype: None
        """
        _StepGeom.StepGeom_Axis2Placement3d_swiginit(self, _StepGeom.new_StepGeom_Axis2Placement3d(*args))
    UnSetAxis = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement3d_UnSetAxis)
    UnSetRefDirection = _swig_new_instance_method(_StepGeom.StepGeom_Axis2Placement3d_UnSetRefDirection)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Axis2Placement3d_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Axis2Placement3d

# Register StepGeom_Axis2Placement3d in _StepGeom:
_StepGeom.StepGeom_Axis2Placement3d_swigregister(StepGeom_Axis2Placement3d)

class StepGeom_BoundedCurve(StepGeom_Curve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a BoundedCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_BoundedCurve_swiginit(self, _StepGeom.new_StepGeom_BoundedCurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_BoundedCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BoundedCurve

# Register StepGeom_BoundedCurve in _StepGeom:
_StepGeom.StepGeom_BoundedCurve_swigregister(StepGeom_BoundedCurve)

class StepGeom_BoundedSurface(StepGeom_Surface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a BoundedSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_BoundedSurface_swiginit(self, _StepGeom.new_StepGeom_BoundedSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_BoundedSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BoundedSurface

# Register StepGeom_BoundedSurface in _StepGeom:
_StepGeom.StepGeom_BoundedSurface_swigregister(StepGeom_BoundedSurface)

class StepGeom_CartesianPoint(StepGeom_Point):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Coordinates = _swig_new_instance_method(_StepGeom.StepGeom_CartesianPoint_Coordinates)
    CoordinatesValue = _swig_new_instance_method(_StepGeom.StepGeom_CartesianPoint_CoordinatesValue)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_CartesianPoint_Init)
    Init2D = _swig_new_instance_method(_StepGeom.StepGeom_CartesianPoint_Init2D)
    Init3D = _swig_new_instance_method(_StepGeom.StepGeom_CartesianPoint_Init3D)
    NbCoordinates = _swig_new_instance_method(_StepGeom.StepGeom_CartesianPoint_NbCoordinates)
    SetCoordinates = _swig_new_instance_method(_StepGeom.StepGeom_CartesianPoint_SetCoordinates)

    def __init__(self, *args):
        r"""
        * Returns a CartesianPoint
        	:rtype: None
        """
        _StepGeom.StepGeom_CartesianPoint_swiginit(self, _StepGeom.new_StepGeom_CartesianPoint(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_CartesianPoint_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_CartesianPoint

# Register StepGeom_CartesianPoint in _StepGeom:
_StepGeom.StepGeom_CartesianPoint_swigregister(StepGeom_CartesianPoint)

class StepGeom_CartesianTransformationOperator2d(StepGeom_CartesianTransformationOperator):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r""":rtype: None"""
        _StepGeom.StepGeom_CartesianTransformationOperator2d_swiginit(self, _StepGeom.new_StepGeom_CartesianTransformationOperator2d(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_CartesianTransformationOperator2d_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_CartesianTransformationOperator2d

# Register StepGeom_CartesianTransformationOperator2d in _StepGeom:
_StepGeom.StepGeom_CartesianTransformationOperator2d_swigregister(StepGeom_CartesianTransformationOperator2d)

class StepGeom_CartesianTransformationOperator3d(StepGeom_CartesianTransformationOperator):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Axis3 = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator3d_Axis3)
    HasAxis3 = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator3d_HasAxis3)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator3d_Init)
    SetAxis3 = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator3d_SetAxis3)

    def __init__(self, *args):
        r"""
        * Returns a CartesianTransformationOperator3d
        	:rtype: None
        """
        _StepGeom.StepGeom_CartesianTransformationOperator3d_swiginit(self, _StepGeom.new_StepGeom_CartesianTransformationOperator3d(*args))
    UnSetAxis3 = _swig_new_instance_method(_StepGeom.StepGeom_CartesianTransformationOperator3d_UnSetAxis3)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_CartesianTransformationOperator3d_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_CartesianTransformationOperator3d

# Register StepGeom_CartesianTransformationOperator3d in _StepGeom:
_StepGeom.StepGeom_CartesianTransformationOperator3d_swigregister(StepGeom_CartesianTransformationOperator3d)

class StepGeom_Conic(StepGeom_Curve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Conic_Init)
    Position = _swig_new_instance_method(_StepGeom.StepGeom_Conic_Position)
    SetPosition = _swig_new_instance_method(_StepGeom.StepGeom_Conic_SetPosition)

    def __init__(self, *args):
        r"""
        * Returns a Conic
        	:rtype: None
        """
        _StepGeom.StepGeom_Conic_swiginit(self, _StepGeom.new_StepGeom_Conic(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Conic_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Conic

# Register StepGeom_Conic in _StepGeom:
_StepGeom.StepGeom_Conic_swigregister(StepGeom_Conic)

class StepGeom_CurveReplica(StepGeom_Curve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_CurveReplica_Init)
    ParentCurve = _swig_new_instance_method(_StepGeom.StepGeom_CurveReplica_ParentCurve)
    SetParentCurve = _swig_new_instance_method(_StepGeom.StepGeom_CurveReplica_SetParentCurve)
    SetTransformation = _swig_new_instance_method(_StepGeom.StepGeom_CurveReplica_SetTransformation)

    def __init__(self, *args):
        r"""
        * Returns a CurveReplica
        	:rtype: None
        """
        _StepGeom.StepGeom_CurveReplica_swiginit(self, _StepGeom.new_StepGeom_CurveReplica(*args))
    Transformation = _swig_new_instance_method(_StepGeom.StepGeom_CurveReplica_Transformation)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_CurveReplica_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_CurveReplica

# Register StepGeom_CurveReplica in _StepGeom:
_StepGeom.StepGeom_CurveReplica_swigregister(StepGeom_CurveReplica)

class StepGeom_DegeneratePcurve(StepGeom_Point):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BasisSurface = _swig_new_instance_method(_StepGeom.StepGeom_DegeneratePcurve_BasisSurface)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_DegeneratePcurve_Init)
    ReferenceToCurve = _swig_new_instance_method(_StepGeom.StepGeom_DegeneratePcurve_ReferenceToCurve)
    SetBasisSurface = _swig_new_instance_method(_StepGeom.StepGeom_DegeneratePcurve_SetBasisSurface)
    SetReferenceToCurve = _swig_new_instance_method(_StepGeom.StepGeom_DegeneratePcurve_SetReferenceToCurve)

    def __init__(self, *args):
        r"""
        * Returns a DegeneratePcurve
        	:rtype: None
        """
        _StepGeom.StepGeom_DegeneratePcurve_swiginit(self, _StepGeom.new_StepGeom_DegeneratePcurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_DegeneratePcurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_DegeneratePcurve

# Register StepGeom_DegeneratePcurve in _StepGeom:
_StepGeom.StepGeom_DegeneratePcurve_swigregister(StepGeom_DegeneratePcurve)

class StepGeom_ElementarySurface(StepGeom_Surface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_ElementarySurface_Init)
    Position = _swig_new_instance_method(_StepGeom.StepGeom_ElementarySurface_Position)
    SetPosition = _swig_new_instance_method(_StepGeom.StepGeom_ElementarySurface_SetPosition)

    def __init__(self, *args):
        r"""
        * Returns a ElementarySurface
        	:rtype: None
        """
        _StepGeom.StepGeom_ElementarySurface_swiginit(self, _StepGeom.new_StepGeom_ElementarySurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_ElementarySurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_ElementarySurface

# Register StepGeom_ElementarySurface in _StepGeom:
_StepGeom.StepGeom_ElementarySurface_swigregister(StepGeom_ElementarySurface)

class StepGeom_Line(StepGeom_Curve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Dir = _swig_new_instance_method(_StepGeom.StepGeom_Line_Dir)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Line_Init)
    Pnt = _swig_new_instance_method(_StepGeom.StepGeom_Line_Pnt)
    SetDir = _swig_new_instance_method(_StepGeom.StepGeom_Line_SetDir)
    SetPnt = _swig_new_instance_method(_StepGeom.StepGeom_Line_SetPnt)

    def __init__(self, *args):
        r"""
        * Returns a Line
        	:rtype: None
        """
        _StepGeom.StepGeom_Line_swiginit(self, _StepGeom.new_StepGeom_Line(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Line_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Line

# Register StepGeom_Line in _StepGeom:
_StepGeom.StepGeom_Line_swigregister(StepGeom_Line)

class StepGeom_OffsetCurve3d(StepGeom_Curve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BasisCurve = _swig_new_instance_method(_StepGeom.StepGeom_OffsetCurve3d_BasisCurve)
    Distance = _swig_new_instance_method(_StepGeom.StepGeom_OffsetCurve3d_Distance)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_OffsetCurve3d_Init)
    RefDirection = _swig_new_instance_method(_StepGeom.StepGeom_OffsetCurve3d_RefDirection)
    SelfIntersect = _swig_new_instance_method(_StepGeom.StepGeom_OffsetCurve3d_SelfIntersect)
    SetBasisCurve = _swig_new_instance_method(_StepGeom.StepGeom_OffsetCurve3d_SetBasisCurve)
    SetDistance = _swig_new_instance_method(_StepGeom.StepGeom_OffsetCurve3d_SetDistance)
    SetRefDirection = _swig_new_instance_method(_StepGeom.StepGeom_OffsetCurve3d_SetRefDirection)
    SetSelfIntersect = _swig_new_instance_method(_StepGeom.StepGeom_OffsetCurve3d_SetSelfIntersect)

    def __init__(self, *args):
        r"""
        * Returns a OffsetCurve3d
        	:rtype: None
        """
        _StepGeom.StepGeom_OffsetCurve3d_swiginit(self, _StepGeom.new_StepGeom_OffsetCurve3d(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_OffsetCurve3d_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_OffsetCurve3d

# Register StepGeom_OffsetCurve3d in _StepGeom:
_StepGeom.StepGeom_OffsetCurve3d_swigregister(StepGeom_OffsetCurve3d)

class StepGeom_OffsetSurface(StepGeom_Surface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BasisSurface = _swig_new_instance_method(_StepGeom.StepGeom_OffsetSurface_BasisSurface)
    Distance = _swig_new_instance_method(_StepGeom.StepGeom_OffsetSurface_Distance)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_OffsetSurface_Init)
    SelfIntersect = _swig_new_instance_method(_StepGeom.StepGeom_OffsetSurface_SelfIntersect)
    SetBasisSurface = _swig_new_instance_method(_StepGeom.StepGeom_OffsetSurface_SetBasisSurface)
    SetDistance = _swig_new_instance_method(_StepGeom.StepGeom_OffsetSurface_SetDistance)
    SetSelfIntersect = _swig_new_instance_method(_StepGeom.StepGeom_OffsetSurface_SetSelfIntersect)

    def __init__(self, *args):
        r"""
        * Returns a OffsetSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_OffsetSurface_swiginit(self, _StepGeom.new_StepGeom_OffsetSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_OffsetSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_OffsetSurface

# Register StepGeom_OffsetSurface in _StepGeom:
_StepGeom.StepGeom_OffsetSurface_swigregister(StepGeom_OffsetSurface)

class StepGeom_OrientedSurface(StepGeom_Surface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_OrientedSurface_Init)
    Orientation = _swig_new_instance_method(_StepGeom.StepGeom_OrientedSurface_Orientation)
    SetOrientation = _swig_new_instance_method(_StepGeom.StepGeom_OrientedSurface_SetOrientation)

    def __init__(self, *args):
        r"""
        * Empty constructor
        	:rtype: None
        """
        _StepGeom.StepGeom_OrientedSurface_swiginit(self, _StepGeom.new_StepGeom_OrientedSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_OrientedSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_OrientedSurface

# Register StepGeom_OrientedSurface in _StepGeom:
_StepGeom.StepGeom_OrientedSurface_swigregister(StepGeom_OrientedSurface)

class StepGeom_Pcurve(StepGeom_Curve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BasisSurface = _swig_new_instance_method(_StepGeom.StepGeom_Pcurve_BasisSurface)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Pcurve_Init)
    ReferenceToCurve = _swig_new_instance_method(_StepGeom.StepGeom_Pcurve_ReferenceToCurve)
    SetBasisSurface = _swig_new_instance_method(_StepGeom.StepGeom_Pcurve_SetBasisSurface)
    SetReferenceToCurve = _swig_new_instance_method(_StepGeom.StepGeom_Pcurve_SetReferenceToCurve)

    def __init__(self, *args):
        r"""
        * Returns a Pcurve
        	:rtype: None
        """
        _StepGeom.StepGeom_Pcurve_swiginit(self, _StepGeom.new_StepGeom_Pcurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Pcurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Pcurve

# Register StepGeom_Pcurve in _StepGeom:
_StepGeom.StepGeom_Pcurve_swigregister(StepGeom_Pcurve)

class StepGeom_PointOnCurve(StepGeom_Point):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BasisCurve = _swig_new_instance_method(_StepGeom.StepGeom_PointOnCurve_BasisCurve)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_PointOnCurve_Init)
    PointParameter = _swig_new_instance_method(_StepGeom.StepGeom_PointOnCurve_PointParameter)
    SetBasisCurve = _swig_new_instance_method(_StepGeom.StepGeom_PointOnCurve_SetBasisCurve)
    SetPointParameter = _swig_new_instance_method(_StepGeom.StepGeom_PointOnCurve_SetPointParameter)

    def __init__(self, *args):
        r"""
        * Returns a PointOnCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_PointOnCurve_swiginit(self, _StepGeom.new_StepGeom_PointOnCurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_PointOnCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_PointOnCurve

# Register StepGeom_PointOnCurve in _StepGeom:
_StepGeom.StepGeom_PointOnCurve_swigregister(StepGeom_PointOnCurve)

class StepGeom_PointOnSurface(StepGeom_Point):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BasisSurface = _swig_new_instance_method(_StepGeom.StepGeom_PointOnSurface_BasisSurface)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_PointOnSurface_Init)
    PointParameterU = _swig_new_instance_method(_StepGeom.StepGeom_PointOnSurface_PointParameterU)
    PointParameterV = _swig_new_instance_method(_StepGeom.StepGeom_PointOnSurface_PointParameterV)
    SetBasisSurface = _swig_new_instance_method(_StepGeom.StepGeom_PointOnSurface_SetBasisSurface)
    SetPointParameterU = _swig_new_instance_method(_StepGeom.StepGeom_PointOnSurface_SetPointParameterU)
    SetPointParameterV = _swig_new_instance_method(_StepGeom.StepGeom_PointOnSurface_SetPointParameterV)

    def __init__(self, *args):
        r"""
        * Returns a PointOnSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_PointOnSurface_swiginit(self, _StepGeom.new_StepGeom_PointOnSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_PointOnSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_PointOnSurface

# Register StepGeom_PointOnSurface in _StepGeom:
_StepGeom.StepGeom_PointOnSurface_swigregister(StepGeom_PointOnSurface)

class StepGeom_PointReplica(StepGeom_Point):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_PointReplica_Init)
    ParentPt = _swig_new_instance_method(_StepGeom.StepGeom_PointReplica_ParentPt)
    SetParentPt = _swig_new_instance_method(_StepGeom.StepGeom_PointReplica_SetParentPt)
    SetTransformation = _swig_new_instance_method(_StepGeom.StepGeom_PointReplica_SetTransformation)

    def __init__(self, *args):
        r"""
        * Returns a PointReplica
        	:rtype: None
        """
        _StepGeom.StepGeom_PointReplica_swiginit(self, _StepGeom.new_StepGeom_PointReplica(*args))
    Transformation = _swig_new_instance_method(_StepGeom.StepGeom_PointReplica_Transformation)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_PointReplica_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_PointReplica

# Register StepGeom_PointReplica in _StepGeom:
_StepGeom.StepGeom_PointReplica_swigregister(StepGeom_PointReplica)

class StepGeom_SurfaceCurve(StepGeom_Curve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    AssociatedGeometry = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceCurve_AssociatedGeometry)
    AssociatedGeometryValue = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceCurve_AssociatedGeometryValue)
    Curve3d = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceCurve_Curve3d)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceCurve_Init)
    MasterRepresentation = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceCurve_MasterRepresentation)
    NbAssociatedGeometry = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceCurve_NbAssociatedGeometry)
    SetAssociatedGeometry = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceCurve_SetAssociatedGeometry)
    SetCurve3d = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceCurve_SetCurve3d)
    SetMasterRepresentation = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceCurve_SetMasterRepresentation)

    def __init__(self, *args):
        r"""
        * Returns a SurfaceCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_SurfaceCurve_swiginit(self, _StepGeom.new_StepGeom_SurfaceCurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_SurfaceCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_SurfaceCurve

# Register StepGeom_SurfaceCurve in _StepGeom:
_StepGeom.StepGeom_SurfaceCurve_swigregister(StepGeom_SurfaceCurve)

class StepGeom_SurfaceReplica(StepGeom_Surface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceReplica_Init)
    ParentSurface = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceReplica_ParentSurface)
    SetParentSurface = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceReplica_SetParentSurface)
    SetTransformation = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceReplica_SetTransformation)

    def __init__(self, *args):
        r"""
        * Returns a SurfaceReplica
        	:rtype: None
        """
        _StepGeom.StepGeom_SurfaceReplica_swiginit(self, _StepGeom.new_StepGeom_SurfaceReplica(*args))
    Transformation = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceReplica_Transformation)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_SurfaceReplica_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_SurfaceReplica

# Register StepGeom_SurfaceReplica in _StepGeom:
_StepGeom.StepGeom_SurfaceReplica_swigregister(StepGeom_SurfaceReplica)

class StepGeom_SweptSurface(StepGeom_Surface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_SweptSurface_Init)
    SetSweptCurve = _swig_new_instance_method(_StepGeom.StepGeom_SweptSurface_SetSweptCurve)

    def __init__(self, *args):
        r"""
        * Returns a SweptSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_SweptSurface_swiginit(self, _StepGeom.new_StepGeom_SweptSurface(*args))
    SweptCurve = _swig_new_instance_method(_StepGeom.StepGeom_SweptSurface_SweptCurve)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_SweptSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_SweptSurface

# Register StepGeom_SweptSurface in _StepGeom:
_StepGeom.StepGeom_SweptSurface_swigregister(StepGeom_SweptSurface)

class StepGeom_BSplineCurve(StepGeom_BoundedCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ClosedCurve = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurve_ClosedCurve)
    ControlPointsList = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurve_ControlPointsList)
    ControlPointsListValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurve_ControlPointsListValue)
    CurveForm = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurve_CurveForm)
    Degree = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurve_Degree)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurve_Init)
    NbControlPointsList = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurve_NbControlPointsList)
    SelfIntersect = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurve_SelfIntersect)
    SetClosedCurve = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurve_SetClosedCurve)
    SetControlPointsList = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurve_SetControlPointsList)
    SetCurveForm = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurve_SetCurveForm)
    SetDegree = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurve_SetDegree)
    SetSelfIntersect = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurve_SetSelfIntersect)

    def __init__(self, *args):
        r"""
        * Returns a BSplineCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_BSplineCurve_swiginit(self, _StepGeom.new_StepGeom_BSplineCurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_BSplineCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BSplineCurve

# Register StepGeom_BSplineCurve in _StepGeom:
_StepGeom.StepGeom_BSplineCurve_swigregister(StepGeom_BSplineCurve)

class StepGeom_BSplineSurface(StepGeom_BoundedSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ControlPointsList = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_ControlPointsList)
    ControlPointsListValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_ControlPointsListValue)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_Init)
    NbControlPointsListI = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_NbControlPointsListI)
    NbControlPointsListJ = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_NbControlPointsListJ)
    SelfIntersect = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_SelfIntersect)
    SetControlPointsList = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_SetControlPointsList)
    SetSelfIntersect = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_SetSelfIntersect)
    SetSurfaceForm = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_SetSurfaceForm)
    SetUClosed = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_SetUClosed)
    SetUDegree = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_SetUDegree)
    SetVClosed = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_SetVClosed)
    SetVDegree = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_SetVDegree)

    def __init__(self, *args):
        r"""
        * Returns a BSplineSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_BSplineSurface_swiginit(self, _StepGeom.new_StepGeom_BSplineSurface(*args))
    SurfaceForm = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_SurfaceForm)
    UClosed = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_UClosed)
    UDegree = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_UDegree)
    VClosed = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_VClosed)
    VDegree = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurface_VDegree)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_BSplineSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BSplineSurface

# Register StepGeom_BSplineSurface in _StepGeom:
_StepGeom.StepGeom_BSplineSurface_swigregister(StepGeom_BSplineSurface)

class StepGeom_Circle(StepGeom_Conic):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Circle_Init)
    Radius = _swig_new_instance_method(_StepGeom.StepGeom_Circle_Radius)
    SetRadius = _swig_new_instance_method(_StepGeom.StepGeom_Circle_SetRadius)

    def __init__(self, *args):
        r"""
        * Returns a Circle
        	:rtype: None
        """
        _StepGeom.StepGeom_Circle_swiginit(self, _StepGeom.new_StepGeom_Circle(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Circle_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Circle

# Register StepGeom_Circle in _StepGeom:
_StepGeom.StepGeom_Circle_swigregister(StepGeom_Circle)

class StepGeom_CompositeCurve(StepGeom_BoundedCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_CompositeCurve_Init)
    NbSegments = _swig_new_instance_method(_StepGeom.StepGeom_CompositeCurve_NbSegments)
    Segments = _swig_new_instance_method(_StepGeom.StepGeom_CompositeCurve_Segments)
    SegmentsValue = _swig_new_instance_method(_StepGeom.StepGeom_CompositeCurve_SegmentsValue)
    SelfIntersect = _swig_new_instance_method(_StepGeom.StepGeom_CompositeCurve_SelfIntersect)
    SetSegments = _swig_new_instance_method(_StepGeom.StepGeom_CompositeCurve_SetSegments)
    SetSelfIntersect = _swig_new_instance_method(_StepGeom.StepGeom_CompositeCurve_SetSelfIntersect)

    def __init__(self, *args):
        r"""
        * Returns a CompositeCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_CompositeCurve_swiginit(self, _StepGeom.new_StepGeom_CompositeCurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_CompositeCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_CompositeCurve

# Register StepGeom_CompositeCurve in _StepGeom:
_StepGeom.StepGeom_CompositeCurve_swigregister(StepGeom_CompositeCurve)

class StepGeom_ConicalSurface(StepGeom_ElementarySurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_ConicalSurface_Init)
    Radius = _swig_new_instance_method(_StepGeom.StepGeom_ConicalSurface_Radius)
    SemiAngle = _swig_new_instance_method(_StepGeom.StepGeom_ConicalSurface_SemiAngle)
    SetRadius = _swig_new_instance_method(_StepGeom.StepGeom_ConicalSurface_SetRadius)
    SetSemiAngle = _swig_new_instance_method(_StepGeom.StepGeom_ConicalSurface_SetSemiAngle)

    def __init__(self, *args):
        r"""
        * Returns a ConicalSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_ConicalSurface_swiginit(self, _StepGeom.new_StepGeom_ConicalSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_ConicalSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_ConicalSurface

# Register StepGeom_ConicalSurface in _StepGeom:
_StepGeom.StepGeom_ConicalSurface_swigregister(StepGeom_ConicalSurface)

class StepGeom_CurveBoundedSurface(StepGeom_BoundedSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BasisSurface = _swig_new_instance_method(_StepGeom.StepGeom_CurveBoundedSurface_BasisSurface)
    Boundaries = _swig_new_instance_method(_StepGeom.StepGeom_CurveBoundedSurface_Boundaries)
    ImplicitOuter = _swig_new_instance_method(_StepGeom.StepGeom_CurveBoundedSurface_ImplicitOuter)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_CurveBoundedSurface_Init)
    SetBasisSurface = _swig_new_instance_method(_StepGeom.StepGeom_CurveBoundedSurface_SetBasisSurface)
    SetBoundaries = _swig_new_instance_method(_StepGeom.StepGeom_CurveBoundedSurface_SetBoundaries)
    SetImplicitOuter = _swig_new_instance_method(_StepGeom.StepGeom_CurveBoundedSurface_SetImplicitOuter)

    def __init__(self, *args):
        r"""
        * Empty constructor
        	:rtype: None
        """
        _StepGeom.StepGeom_CurveBoundedSurface_swiginit(self, _StepGeom.new_StepGeom_CurveBoundedSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_CurveBoundedSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_CurveBoundedSurface

# Register StepGeom_CurveBoundedSurface in _StepGeom:
_StepGeom.StepGeom_CurveBoundedSurface_swigregister(StepGeom_CurveBoundedSurface)

class StepGeom_CylindricalSurface(StepGeom_ElementarySurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_CylindricalSurface_Init)
    Radius = _swig_new_instance_method(_StepGeom.StepGeom_CylindricalSurface_Radius)
    SetRadius = _swig_new_instance_method(_StepGeom.StepGeom_CylindricalSurface_SetRadius)

    def __init__(self, *args):
        r"""
        * Returns a CylindricalSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_CylindricalSurface_swiginit(self, _StepGeom.new_StepGeom_CylindricalSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_CylindricalSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_CylindricalSurface

# Register StepGeom_CylindricalSurface in _StepGeom:
_StepGeom.StepGeom_CylindricalSurface_swigregister(StepGeom_CylindricalSurface)

class StepGeom_Ellipse(StepGeom_Conic):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Ellipse_Init)
    SemiAxis1 = _swig_new_instance_method(_StepGeom.StepGeom_Ellipse_SemiAxis1)
    SemiAxis2 = _swig_new_instance_method(_StepGeom.StepGeom_Ellipse_SemiAxis2)
    SetSemiAxis1 = _swig_new_instance_method(_StepGeom.StepGeom_Ellipse_SetSemiAxis1)
    SetSemiAxis2 = _swig_new_instance_method(_StepGeom.StepGeom_Ellipse_SetSemiAxis2)

    def __init__(self, *args):
        r"""
        * Returns a Ellipse
        	:rtype: None
        """
        _StepGeom.StepGeom_Ellipse_swiginit(self, _StepGeom.new_StepGeom_Ellipse(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Ellipse_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Ellipse

# Register StepGeom_Ellipse in _StepGeom:
_StepGeom.StepGeom_Ellipse_swigregister(StepGeom_Ellipse)

class StepGeom_EvaluatedDegeneratePcurve(StepGeom_DegeneratePcurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    EquivalentPoint = _swig_new_instance_method(_StepGeom.StepGeom_EvaluatedDegeneratePcurve_EquivalentPoint)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_EvaluatedDegeneratePcurve_Init)
    SetEquivalentPoint = _swig_new_instance_method(_StepGeom.StepGeom_EvaluatedDegeneratePcurve_SetEquivalentPoint)

    def __init__(self, *args):
        r"""
        * Returns a EvaluatedDegeneratePcurve
        	:rtype: None
        """
        _StepGeom.StepGeom_EvaluatedDegeneratePcurve_swiginit(self, _StepGeom.new_StepGeom_EvaluatedDegeneratePcurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_EvaluatedDegeneratePcurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_EvaluatedDegeneratePcurve

# Register StepGeom_EvaluatedDegeneratePcurve in _StepGeom:
_StepGeom.StepGeom_EvaluatedDegeneratePcurve_swigregister(StepGeom_EvaluatedDegeneratePcurve)

class StepGeom_Hyperbola(StepGeom_Conic):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Hyperbola_Init)
    SemiAxis = _swig_new_instance_method(_StepGeom.StepGeom_Hyperbola_SemiAxis)
    SemiImagAxis = _swig_new_instance_method(_StepGeom.StepGeom_Hyperbola_SemiImagAxis)
    SetSemiAxis = _swig_new_instance_method(_StepGeom.StepGeom_Hyperbola_SetSemiAxis)
    SetSemiImagAxis = _swig_new_instance_method(_StepGeom.StepGeom_Hyperbola_SetSemiImagAxis)

    def __init__(self, *args):
        r"""
        * Returns a Hyperbola
        	:rtype: None
        """
        _StepGeom.StepGeom_Hyperbola_swiginit(self, _StepGeom.new_StepGeom_Hyperbola(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Hyperbola_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Hyperbola

# Register StepGeom_Hyperbola in _StepGeom:
_StepGeom.StepGeom_Hyperbola_swigregister(StepGeom_Hyperbola)

class StepGeom_IntersectionCurve(StepGeom_SurfaceCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a IntersectionCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_IntersectionCurve_swiginit(self, _StepGeom.new_StepGeom_IntersectionCurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_IntersectionCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_IntersectionCurve

# Register StepGeom_IntersectionCurve in _StepGeom:
_StepGeom.StepGeom_IntersectionCurve_swigregister(StepGeom_IntersectionCurve)

class StepGeom_Parabola(StepGeom_Conic):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    FocalDist = _swig_new_instance_method(_StepGeom.StepGeom_Parabola_FocalDist)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Parabola_Init)
    SetFocalDist = _swig_new_instance_method(_StepGeom.StepGeom_Parabola_SetFocalDist)

    def __init__(self, *args):
        r"""
        * Returns a Parabola
        	:rtype: None
        """
        _StepGeom.StepGeom_Parabola_swiginit(self, _StepGeom.new_StepGeom_Parabola(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Parabola_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Parabola

# Register StepGeom_Parabola in _StepGeom:
_StepGeom.StepGeom_Parabola_swigregister(StepGeom_Parabola)

class StepGeom_Plane(StepGeom_ElementarySurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a Plane
        	:rtype: None
        """
        _StepGeom.StepGeom_Plane_swiginit(self, _StepGeom.new_StepGeom_Plane(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Plane_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Plane

# Register StepGeom_Plane in _StepGeom:
_StepGeom.StepGeom_Plane_swigregister(StepGeom_Plane)

class StepGeom_Polyline(StepGeom_BoundedCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_Polyline_Init)
    NbPoints = _swig_new_instance_method(_StepGeom.StepGeom_Polyline_NbPoints)
    Points = _swig_new_instance_method(_StepGeom.StepGeom_Polyline_Points)
    PointsValue = _swig_new_instance_method(_StepGeom.StepGeom_Polyline_PointsValue)
    SetPoints = _swig_new_instance_method(_StepGeom.StepGeom_Polyline_SetPoints)

    def __init__(self, *args):
        r"""
        * Returns a Polyline
        	:rtype: None
        """
        _StepGeom.StepGeom_Polyline_swiginit(self, _StepGeom.new_StepGeom_Polyline(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_Polyline_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Polyline

# Register StepGeom_Polyline in _StepGeom:
_StepGeom.StepGeom_Polyline_swigregister(StepGeom_Polyline)

class StepGeom_RectangularCompositeSurface(StepGeom_BoundedSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_RectangularCompositeSurface_Init)
    NbSegmentsI = _swig_new_instance_method(_StepGeom.StepGeom_RectangularCompositeSurface_NbSegmentsI)
    NbSegmentsJ = _swig_new_instance_method(_StepGeom.StepGeom_RectangularCompositeSurface_NbSegmentsJ)
    Segments = _swig_new_instance_method(_StepGeom.StepGeom_RectangularCompositeSurface_Segments)
    SegmentsValue = _swig_new_instance_method(_StepGeom.StepGeom_RectangularCompositeSurface_SegmentsValue)
    SetSegments = _swig_new_instance_method(_StepGeom.StepGeom_RectangularCompositeSurface_SetSegments)

    def __init__(self, *args):
        r"""
        * Returns a RectangularCompositeSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_RectangularCompositeSurface_swiginit(self, _StepGeom.new_StepGeom_RectangularCompositeSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_RectangularCompositeSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_RectangularCompositeSurface

# Register StepGeom_RectangularCompositeSurface in _StepGeom:
_StepGeom.StepGeom_RectangularCompositeSurface_swigregister(StepGeom_RectangularCompositeSurface)

class StepGeom_RectangularTrimmedSurface(StepGeom_BoundedSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BasisSurface = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_BasisSurface)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_Init)
    SetBasisSurface = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_SetBasisSurface)
    SetU1 = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_SetU1)
    SetU2 = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_SetU2)
    SetUsense = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_SetUsense)
    SetV1 = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_SetV1)
    SetV2 = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_SetV2)
    SetVsense = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_SetVsense)

    def __init__(self, *args):
        r"""
        * Returns a RectangularTrimmedSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_RectangularTrimmedSurface_swiginit(self, _StepGeom.new_StepGeom_RectangularTrimmedSurface(*args))
    U1 = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_U1)
    U2 = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_U2)
    Usense = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_Usense)
    V1 = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_V1)
    V2 = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_V2)
    Vsense = _swig_new_instance_method(_StepGeom.StepGeom_RectangularTrimmedSurface_Vsense)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_RectangularTrimmedSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_RectangularTrimmedSurface

# Register StepGeom_RectangularTrimmedSurface in _StepGeom:
_StepGeom.StepGeom_RectangularTrimmedSurface_swigregister(StepGeom_RectangularTrimmedSurface)

class StepGeom_SeamCurve(StepGeom_SurfaceCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a SeamCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_SeamCurve_swiginit(self, _StepGeom.new_StepGeom_SeamCurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_SeamCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_SeamCurve

# Register StepGeom_SeamCurve in _StepGeom:
_StepGeom.StepGeom_SeamCurve_swigregister(StepGeom_SeamCurve)

class StepGeom_SphericalSurface(StepGeom_ElementarySurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_SphericalSurface_Init)
    Radius = _swig_new_instance_method(_StepGeom.StepGeom_SphericalSurface_Radius)
    SetRadius = _swig_new_instance_method(_StepGeom.StepGeom_SphericalSurface_SetRadius)

    def __init__(self, *args):
        r"""
        * Returns a SphericalSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_SphericalSurface_swiginit(self, _StepGeom.new_StepGeom_SphericalSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_SphericalSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_SphericalSurface

# Register StepGeom_SphericalSurface in _StepGeom:
_StepGeom.StepGeom_SphericalSurface_swigregister(StepGeom_SphericalSurface)

class StepGeom_SurfaceCurveAndBoundedCurve(StepGeom_SurfaceCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BoundedCurve = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceCurveAndBoundedCurve_BoundedCurve)

    def __init__(self, *args):
        r"""
        * creates empty object
        	:rtype: None
        """
        _StepGeom.StepGeom_SurfaceCurveAndBoundedCurve_swiginit(self, _StepGeom.new_StepGeom_SurfaceCurveAndBoundedCurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_SurfaceCurveAndBoundedCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_SurfaceCurveAndBoundedCurve

# Register StepGeom_SurfaceCurveAndBoundedCurve in _StepGeom:
_StepGeom.StepGeom_SurfaceCurveAndBoundedCurve_swigregister(StepGeom_SurfaceCurveAndBoundedCurve)

class StepGeom_SurfaceOfLinearExtrusion(StepGeom_SweptSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ExtrusionAxis = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceOfLinearExtrusion_ExtrusionAxis)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceOfLinearExtrusion_Init)
    SetExtrusionAxis = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceOfLinearExtrusion_SetExtrusionAxis)

    def __init__(self, *args):
        r"""
        * Returns a SurfaceOfLinearExtrusion
        	:rtype: None
        """
        _StepGeom.StepGeom_SurfaceOfLinearExtrusion_swiginit(self, _StepGeom.new_StepGeom_SurfaceOfLinearExtrusion(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_SurfaceOfLinearExtrusion_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_SurfaceOfLinearExtrusion

# Register StepGeom_SurfaceOfLinearExtrusion in _StepGeom:
_StepGeom.StepGeom_SurfaceOfLinearExtrusion_swigregister(StepGeom_SurfaceOfLinearExtrusion)

class StepGeom_SurfaceOfRevolution(StepGeom_SweptSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    AxisPosition = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceOfRevolution_AxisPosition)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceOfRevolution_Init)
    SetAxisPosition = _swig_new_instance_method(_StepGeom.StepGeom_SurfaceOfRevolution_SetAxisPosition)

    def __init__(self, *args):
        r"""
        * Returns a SurfaceOfRevolution
        	:rtype: None
        """
        _StepGeom.StepGeom_SurfaceOfRevolution_swiginit(self, _StepGeom.new_StepGeom_SurfaceOfRevolution(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_SurfaceOfRevolution_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_SurfaceOfRevolution

# Register StepGeom_SurfaceOfRevolution in _StepGeom:
_StepGeom.StepGeom_SurfaceOfRevolution_swigregister(StepGeom_SurfaceOfRevolution)

class StepGeom_ToroidalSurface(StepGeom_ElementarySurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_ToroidalSurface_Init)
    MajorRadius = _swig_new_instance_method(_StepGeom.StepGeom_ToroidalSurface_MajorRadius)
    MinorRadius = _swig_new_instance_method(_StepGeom.StepGeom_ToroidalSurface_MinorRadius)
    SetMajorRadius = _swig_new_instance_method(_StepGeom.StepGeom_ToroidalSurface_SetMajorRadius)
    SetMinorRadius = _swig_new_instance_method(_StepGeom.StepGeom_ToroidalSurface_SetMinorRadius)

    def __init__(self, *args):
        r"""
        * Returns a ToroidalSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_ToroidalSurface_swiginit(self, _StepGeom.new_StepGeom_ToroidalSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_ToroidalSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_ToroidalSurface

# Register StepGeom_ToroidalSurface in _StepGeom:
_StepGeom.StepGeom_ToroidalSurface_swigregister(StepGeom_ToroidalSurface)

class StepGeom_TrimmedCurve(StepGeom_BoundedCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BasisCurve = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_BasisCurve)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_Init)
    MasterRepresentation = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_MasterRepresentation)
    NbTrim1 = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_NbTrim1)
    NbTrim2 = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_NbTrim2)
    SenseAgreement = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_SenseAgreement)
    SetBasisCurve = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_SetBasisCurve)
    SetMasterRepresentation = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_SetMasterRepresentation)
    SetSenseAgreement = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_SetSenseAgreement)
    SetTrim1 = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_SetTrim1)
    SetTrim2 = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_SetTrim2)

    def __init__(self, *args):
        r"""
        * Returns a TrimmedCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_TrimmedCurve_swiginit(self, _StepGeom.new_StepGeom_TrimmedCurve(*args))
    Trim1 = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_Trim1)
    Trim1Value = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_Trim1Value)
    Trim2 = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_Trim2)
    Trim2Value = _swig_new_instance_method(_StepGeom.StepGeom_TrimmedCurve_Trim2Value)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_TrimmedCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_TrimmedCurve

# Register StepGeom_TrimmedCurve in _StepGeom:
_StepGeom.StepGeom_TrimmedCurve_swigregister(StepGeom_TrimmedCurve)

class StepGeom_BSplineCurveWithKnots(StepGeom_BSplineCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnots_Init)
    KnotMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnots_KnotMultiplicities)
    KnotMultiplicitiesValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnots_KnotMultiplicitiesValue)
    KnotSpec = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnots_KnotSpec)
    Knots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnots_Knots)
    KnotsValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnots_KnotsValue)
    NbKnotMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnots_NbKnotMultiplicities)
    NbKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnots_NbKnots)
    SetKnotMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnots_SetKnotMultiplicities)
    SetKnotSpec = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnots_SetKnotSpec)
    SetKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnots_SetKnots)

    def __init__(self, *args):
        r"""
        * Returns a BSplineCurveWithKnots
        	:rtype: None
        """
        _StepGeom.StepGeom_BSplineCurveWithKnots_swiginit(self, _StepGeom.new_StepGeom_BSplineCurveWithKnots(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_BSplineCurveWithKnots_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BSplineCurveWithKnots

# Register StepGeom_BSplineCurveWithKnots in _StepGeom:
_StepGeom.StepGeom_BSplineCurveWithKnots_swigregister(StepGeom_BSplineCurveWithKnots)

class StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve(StepGeom_BSplineCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BSplineCurveWithKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_BSplineCurveWithKnots)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_Init)
    KnotMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_KnotMultiplicities)
    KnotMultiplicitiesValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_KnotMultiplicitiesValue)
    KnotSpec = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_KnotSpec)
    Knots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_Knots)
    KnotsValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_KnotsValue)
    NbKnotMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_NbKnotMultiplicities)
    NbKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_NbKnots)
    NbWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_NbWeightsData)
    RationalBSplineCurve = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_RationalBSplineCurve)
    SetBSplineCurveWithKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_SetBSplineCurveWithKnots)
    SetKnotMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_SetKnotMultiplicities)
    SetKnotSpec = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_SetKnotSpec)
    SetKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_SetKnots)
    SetRationalBSplineCurve = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_SetRationalBSplineCurve)
    SetWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_SetWeightsData)

    def __init__(self, *args):
        r"""
        * Returns a BSplineCurveWithKnotsAndRationalBSplineCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve(*args))
    WeightsData = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_WeightsData)
    WeightsDataValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_WeightsDataValue)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve

# Register StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve in _StepGeom:
_StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_swigregister(StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve)

class StepGeom_BSplineSurfaceWithKnots(StepGeom_BSplineSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_Init)
    KnotSpec = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_KnotSpec)
    NbUKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_NbUKnots)
    NbUMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_NbUMultiplicities)
    NbVKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_NbVKnots)
    NbVMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_NbVMultiplicities)
    SetKnotSpec = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_SetKnotSpec)
    SetUKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_SetUKnots)
    SetUMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_SetUMultiplicities)
    SetVKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_SetVKnots)
    SetVMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_SetVMultiplicities)

    def __init__(self, *args):
        r"""
        * Returns a BSplineSurfaceWithKnots
        	:rtype: None
        """
        _StepGeom.StepGeom_BSplineSurfaceWithKnots_swiginit(self, _StepGeom.new_StepGeom_BSplineSurfaceWithKnots(*args))
    UKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_UKnots)
    UKnotsValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_UKnotsValue)
    UMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_UMultiplicities)
    UMultiplicitiesValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_UMultiplicitiesValue)
    VKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_VKnots)
    VKnotsValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_VKnotsValue)
    VMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_VMultiplicities)
    VMultiplicitiesValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnots_VMultiplicitiesValue)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_BSplineSurfaceWithKnots_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BSplineSurfaceWithKnots

# Register StepGeom_BSplineSurfaceWithKnots in _StepGeom:
_StepGeom.StepGeom_BSplineSurfaceWithKnots_swigregister(StepGeom_BSplineSurfaceWithKnots)

class StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface(StepGeom_BSplineSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BSplineSurfaceWithKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_BSplineSurfaceWithKnots)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_Init)
    KnotSpec = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_KnotSpec)
    NbUKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_NbUKnots)
    NbUMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_NbUMultiplicities)
    NbVKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_NbVKnots)
    NbVMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_NbVMultiplicities)
    NbWeightsDataI = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_NbWeightsDataI)
    NbWeightsDataJ = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_NbWeightsDataJ)
    RationalBSplineSurface = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_RationalBSplineSurface)
    SetBSplineSurfaceWithKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetBSplineSurfaceWithKnots)
    SetKnotSpec = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetKnotSpec)
    SetRationalBSplineSurface = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetRationalBSplineSurface)
    SetUKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetUKnots)
    SetUMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetUMultiplicities)
    SetVKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetVKnots)
    SetVMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetVMultiplicities)
    SetWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetWeightsData)

    def __init__(self, *args):
        r"""
        * Returns a BSplineSurfaceWithKnotsAndRationalBSplineSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface(*args))
    UKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_UKnots)
    UKnotsValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_UKnotsValue)
    UMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_UMultiplicities)
    UMultiplicitiesValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_UMultiplicitiesValue)
    VKnots = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_VKnots)
    VKnotsValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_VKnotsValue)
    VMultiplicities = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_VMultiplicities)
    VMultiplicitiesValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_VMultiplicitiesValue)
    WeightsData = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_WeightsData)
    WeightsDataValue = _swig_new_instance_method(_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_WeightsDataValue)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface

# Register StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface in _StepGeom:
_StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_swigregister(StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface)

class StepGeom_BezierCurve(StepGeom_BSplineCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a BezierCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_BezierCurve_swiginit(self, _StepGeom.new_StepGeom_BezierCurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_BezierCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BezierCurve

# Register StepGeom_BezierCurve in _StepGeom:
_StepGeom.StepGeom_BezierCurve_swigregister(StepGeom_BezierCurve)

class StepGeom_BezierCurveAndRationalBSplineCurve(StepGeom_BSplineCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BezierCurve = _swig_new_instance_method(_StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_BezierCurve)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_Init)
    NbWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_NbWeightsData)
    RationalBSplineCurve = _swig_new_instance_method(_StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_RationalBSplineCurve)
    SetBezierCurve = _swig_new_instance_method(_StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_SetBezierCurve)
    SetRationalBSplineCurve = _swig_new_instance_method(_StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_SetRationalBSplineCurve)
    SetWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_SetWeightsData)

    def __init__(self, *args):
        r"""
        * Returns a BezierCurveAndRationalBSplineCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_BezierCurveAndRationalBSplineCurve(*args))
    WeightsData = _swig_new_instance_method(_StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_WeightsData)
    WeightsDataValue = _swig_new_instance_method(_StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_WeightsDataValue)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_BezierCurveAndRationalBSplineCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BezierCurveAndRationalBSplineCurve

# Register StepGeom_BezierCurveAndRationalBSplineCurve in _StepGeom:
_StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_swigregister(StepGeom_BezierCurveAndRationalBSplineCurve)

class StepGeom_BezierSurface(StepGeom_BSplineSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a BezierSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_BezierSurface_swiginit(self, _StepGeom.new_StepGeom_BezierSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_BezierSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BezierSurface

# Register StepGeom_BezierSurface in _StepGeom:
_StepGeom.StepGeom_BezierSurface_swigregister(StepGeom_BezierSurface)

class StepGeom_BezierSurfaceAndRationalBSplineSurface(StepGeom_BSplineSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    BezierSurface = _swig_new_instance_method(_StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_BezierSurface)
    Init = _swig_new_instance_method(_StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_Init)
    NbWeightsDataI = _swig_new_instance_method(_StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_NbWeightsDataI)
    NbWeightsDataJ = _swig_new_instance_method(_StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_NbWeightsDataJ)
    RationalBSplineSurface = _swig_new_instance_method(_StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_RationalBSplineSurface)
    SetBezierSurface = _swig_new_instance_method(_StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_SetBezierSurface)
    SetRationalBSplineSurface = _swig_new_instance_method(_StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_SetRationalBSplineSurface)
    SetWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_SetWeightsData)

    def __init__(self, *args):
        r"""
        * Returns a BezierSurfaceAndRationalBSplineSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_BezierSurfaceAndRationalBSplineSurface(*args))
    WeightsData = _swig_new_instance_method(_StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_WeightsData)
    WeightsDataValue = _swig_new_instance_method(_StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_WeightsDataValue)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BezierSurfaceAndRationalBSplineSurface

# Register StepGeom_BezierSurfaceAndRationalBSplineSurface in _StepGeom:
_StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_swigregister(StepGeom_BezierSurfaceAndRationalBSplineSurface)

class StepGeom_CompositeCurveOnSurface(StepGeom_CompositeCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a CompositeCurveOnSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_CompositeCurveOnSurface_swiginit(self, _StepGeom.new_StepGeom_CompositeCurveOnSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_CompositeCurveOnSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_CompositeCurveOnSurface

# Register StepGeom_CompositeCurveOnSurface in _StepGeom:
_StepGeom.StepGeom_CompositeCurveOnSurface_swigregister(StepGeom_CompositeCurveOnSurface)

class StepGeom_DegenerateToroidalSurface(StepGeom_ToroidalSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_DegenerateToroidalSurface_Init)
    SelectOuter = _swig_new_instance_method(_StepGeom.StepGeom_DegenerateToroidalSurface_SelectOuter)
    SetSelectOuter = _swig_new_instance_method(_StepGeom.StepGeom_DegenerateToroidalSurface_SetSelectOuter)

    def __init__(self, *args):
        r"""
        * Returns a DegenerateToroidalSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_DegenerateToroidalSurface_swiginit(self, _StepGeom.new_StepGeom_DegenerateToroidalSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_DegenerateToroidalSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_DegenerateToroidalSurface

# Register StepGeom_DegenerateToroidalSurface in _StepGeom:
_StepGeom.StepGeom_DegenerateToroidalSurface_swigregister(StepGeom_DegenerateToroidalSurface)

class StepGeom_QuasiUniformCurve(StepGeom_BSplineCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a QuasiUniformCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_QuasiUniformCurve_swiginit(self, _StepGeom.new_StepGeom_QuasiUniformCurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_QuasiUniformCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_QuasiUniformCurve

# Register StepGeom_QuasiUniformCurve in _StepGeom:
_StepGeom.StepGeom_QuasiUniformCurve_swigregister(StepGeom_QuasiUniformCurve)

class StepGeom_QuasiUniformCurveAndRationalBSplineCurve(StepGeom_BSplineCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_Init)
    NbWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_NbWeightsData)
    QuasiUniformCurve = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_QuasiUniformCurve)
    RationalBSplineCurve = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_RationalBSplineCurve)
    SetQuasiUniformCurve = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_SetQuasiUniformCurve)
    SetRationalBSplineCurve = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_SetRationalBSplineCurve)
    SetWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_SetWeightsData)

    def __init__(self, *args):
        r"""
        * Returns a QuasiUniformCurveAndRationalBSplineCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_QuasiUniformCurveAndRationalBSplineCurve(*args))
    WeightsData = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_WeightsData)
    WeightsDataValue = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_WeightsDataValue)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_QuasiUniformCurveAndRationalBSplineCurve

# Register StepGeom_QuasiUniformCurveAndRationalBSplineCurve in _StepGeom:
_StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_swigregister(StepGeom_QuasiUniformCurveAndRationalBSplineCurve)

class StepGeom_QuasiUniformSurface(StepGeom_BSplineSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a QuasiUniformSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_QuasiUniformSurface_swiginit(self, _StepGeom.new_StepGeom_QuasiUniformSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_QuasiUniformSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_QuasiUniformSurface

# Register StepGeom_QuasiUniformSurface in _StepGeom:
_StepGeom.StepGeom_QuasiUniformSurface_swigregister(StepGeom_QuasiUniformSurface)

class StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface(StepGeom_BSplineSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_Init)
    NbWeightsDataI = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_NbWeightsDataI)
    NbWeightsDataJ = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_NbWeightsDataJ)
    QuasiUniformSurface = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_QuasiUniformSurface)
    RationalBSplineSurface = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_RationalBSplineSurface)
    SetQuasiUniformSurface = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_SetQuasiUniformSurface)
    SetRationalBSplineSurface = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_SetRationalBSplineSurface)
    SetWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_SetWeightsData)

    def __init__(self, *args):
        r"""
        * Returns a QuasiUniformSurfaceAndRationalBSplineSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface(*args))
    WeightsData = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_WeightsData)
    WeightsDataValue = _swig_new_instance_method(_StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_WeightsDataValue)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface

# Register StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface in _StepGeom:
_StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_swigregister(StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface)

class StepGeom_RationalBSplineCurve(StepGeom_BSplineCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_RationalBSplineCurve_Init)
    NbWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_RationalBSplineCurve_NbWeightsData)
    SetWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_RationalBSplineCurve_SetWeightsData)

    def __init__(self, *args):
        r"""
        * Returns a RationalBSplineCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_RationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_RationalBSplineCurve(*args))
    WeightsData = _swig_new_instance_method(_StepGeom.StepGeom_RationalBSplineCurve_WeightsData)
    WeightsDataValue = _swig_new_instance_method(_StepGeom.StepGeom_RationalBSplineCurve_WeightsDataValue)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_RationalBSplineCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_RationalBSplineCurve

# Register StepGeom_RationalBSplineCurve in _StepGeom:
_StepGeom.StepGeom_RationalBSplineCurve_swigregister(StepGeom_RationalBSplineCurve)

class StepGeom_RationalBSplineSurface(StepGeom_BSplineSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_RationalBSplineSurface_Init)
    NbWeightsDataI = _swig_new_instance_method(_StepGeom.StepGeom_RationalBSplineSurface_NbWeightsDataI)
    NbWeightsDataJ = _swig_new_instance_method(_StepGeom.StepGeom_RationalBSplineSurface_NbWeightsDataJ)
    SetWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_RationalBSplineSurface_SetWeightsData)

    def __init__(self, *args):
        r"""
        * Returns a RationalBSplineSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_RationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_RationalBSplineSurface(*args))
    WeightsData = _swig_new_instance_method(_StepGeom.StepGeom_RationalBSplineSurface_WeightsData)
    WeightsDataValue = _swig_new_instance_method(_StepGeom.StepGeom_RationalBSplineSurface_WeightsDataValue)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_RationalBSplineSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_RationalBSplineSurface

# Register StepGeom_RationalBSplineSurface in _StepGeom:
_StepGeom.StepGeom_RationalBSplineSurface_swigregister(StepGeom_RationalBSplineSurface)

class StepGeom_UniformCurve(StepGeom_BSplineCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a UniformCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_UniformCurve_swiginit(self, _StepGeom.new_StepGeom_UniformCurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_UniformCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_UniformCurve

# Register StepGeom_UniformCurve in _StepGeom:
_StepGeom.StepGeom_UniformCurve_swigregister(StepGeom_UniformCurve)

class StepGeom_UniformCurveAndRationalBSplineCurve(StepGeom_BSplineCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_Init)
    NbWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_NbWeightsData)
    RationalBSplineCurve = _swig_new_instance_method(_StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_RationalBSplineCurve)
    SetRationalBSplineCurve = _swig_new_instance_method(_StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_SetRationalBSplineCurve)
    SetUniformCurve = _swig_new_instance_method(_StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_SetUniformCurve)
    SetWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_SetWeightsData)

    def __init__(self, *args):
        r"""
        * Returns a UniformCurveAndRationalBSplineCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_UniformCurveAndRationalBSplineCurve(*args))
    UniformCurve = _swig_new_instance_method(_StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_UniformCurve)
    WeightsData = _swig_new_instance_method(_StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_WeightsData)
    WeightsDataValue = _swig_new_instance_method(_StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_WeightsDataValue)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_UniformCurveAndRationalBSplineCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_UniformCurveAndRationalBSplineCurve

# Register StepGeom_UniformCurveAndRationalBSplineCurve in _StepGeom:
_StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_swigregister(StepGeom_UniformCurveAndRationalBSplineCurve)

class StepGeom_UniformSurface(StepGeom_BSplineSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a UniformSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_UniformSurface_swiginit(self, _StepGeom.new_StepGeom_UniformSurface(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_UniformSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_UniformSurface

# Register StepGeom_UniformSurface in _StepGeom:
_StepGeom.StepGeom_UniformSurface_swigregister(StepGeom_UniformSurface)

class StepGeom_UniformSurfaceAndRationalBSplineSurface(StepGeom_BSplineSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Init = _swig_new_instance_method(_StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_Init)
    NbWeightsDataI = _swig_new_instance_method(_StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_NbWeightsDataI)
    NbWeightsDataJ = _swig_new_instance_method(_StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_NbWeightsDataJ)
    RationalBSplineSurface = _swig_new_instance_method(_StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_RationalBSplineSurface)
    SetRationalBSplineSurface = _swig_new_instance_method(_StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_SetRationalBSplineSurface)
    SetUniformSurface = _swig_new_instance_method(_StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_SetUniformSurface)
    SetWeightsData = _swig_new_instance_method(_StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_SetWeightsData)

    def __init__(self, *args):
        r"""
        * Returns a UniformSurfaceAndRationalBSplineSurface
        	:rtype: None
        """
        _StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_UniformSurfaceAndRationalBSplineSurface(*args))
    UniformSurface = _swig_new_instance_method(_StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_UniformSurface)
    WeightsData = _swig_new_instance_method(_StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_WeightsData)
    WeightsDataValue = _swig_new_instance_method(_StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_WeightsDataValue)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_UniformSurfaceAndRationalBSplineSurface

# Register StepGeom_UniformSurfaceAndRationalBSplineSurface in _StepGeom:
_StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_swigregister(StepGeom_UniformSurfaceAndRationalBSplineSurface)

class StepGeom_BoundaryCurve(StepGeom_CompositeCurveOnSurface):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a BoundaryCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_BoundaryCurve_swiginit(self, _StepGeom.new_StepGeom_BoundaryCurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_BoundaryCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BoundaryCurve

# Register StepGeom_BoundaryCurve in _StepGeom:
_StepGeom.StepGeom_BoundaryCurve_swigregister(StepGeom_BoundaryCurve)

class StepGeom_OuterBoundaryCurve(StepGeom_BoundaryCurve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        * Returns a OuterBoundaryCurve
        	:rtype: None
        """
        _StepGeom.StepGeom_OuterBoundaryCurve_swiginit(self, _StepGeom.new_StepGeom_OuterBoundaryCurve(*args))


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_OuterBoundaryCurve_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_OuterBoundaryCurve

# Register StepGeom_OuterBoundaryCurve in _StepGeom:
_StepGeom.StepGeom_OuterBoundaryCurve_swigregister(StepGeom_OuterBoundaryCurve)

class StepGeom_HArray1OfCartesianPoint(StepGeom_Array1OfCartesianPoint, OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _StepGeom.StepGeom_HArray1OfCartesianPoint_swiginit(self, _StepGeom.new_StepGeom_HArray1OfCartesianPoint(*args))
    Array1 = _swig_new_instance_method(_StepGeom.StepGeom_HArray1OfCartesianPoint_Array1)
    ChangeArray1 = _swig_new_instance_method(_StepGeom.StepGeom_HArray1OfCartesianPoint_ChangeArray1)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_HArray1OfCartesianPoint_DownCast(t)

    __swig_destroy__ = _StepGeom.delete_StepGeom_HArray1OfCartesianPoint

# Register StepGeom_HArray1OfCartesianPoint in _StepGeom:
_StepGeom.StepGeom_HArray1OfCartesianPoint_swigregister(StepGeom_HArray1OfCartesianPoint)

class StepGeom_HArray1OfPcurveOrSurface(StepGeom_Array1OfPcurveOrSurface, OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _StepGeom.StepGeom_HArray1OfPcurveOrSurface_swiginit(self, _StepGeom.new_StepGeom_HArray1OfPcurveOrSurface(*args))
    Array1 = _swig_new_instance_method(_StepGeom.StepGeom_HArray1OfPcurveOrSurface_Array1)
    ChangeArray1 = _swig_new_instance_method(_StepGeom.StepGeom_HArray1OfPcurveOrSurface_ChangeArray1)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_HArray1OfPcurveOrSurface_DownCast(t)

    __swig_destroy__ = _StepGeom.delete_StepGeom_HArray1OfPcurveOrSurface

# Register StepGeom_HArray1OfPcurveOrSurface in _StepGeom:
_StepGeom.StepGeom_HArray1OfPcurveOrSurface_swigregister(StepGeom_HArray1OfPcurveOrSurface)

class StepGeom_HArray1OfSurfaceBoundary(StepGeom_Array1OfSurfaceBoundary, OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _StepGeom.StepGeom_HArray1OfSurfaceBoundary_swiginit(self, _StepGeom.new_StepGeom_HArray1OfSurfaceBoundary(*args))
    Array1 = _swig_new_instance_method(_StepGeom.StepGeom_HArray1OfSurfaceBoundary_Array1)
    ChangeArray1 = _swig_new_instance_method(_StepGeom.StepGeom_HArray1OfSurfaceBoundary_ChangeArray1)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_HArray1OfSurfaceBoundary_DownCast(t)

    __swig_destroy__ = _StepGeom.delete_StepGeom_HArray1OfSurfaceBoundary

# Register StepGeom_HArray1OfSurfaceBoundary in _StepGeom:
_StepGeom.StepGeom_HArray1OfSurfaceBoundary_swigregister(StepGeom_HArray1OfSurfaceBoundary)

class StepGeom_HArray1OfBoundaryCurve(StepGeom_Array1OfBoundaryCurve, OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _StepGeom.StepGeom_HArray1OfBoundaryCurve_swiginit(self, _StepGeom.new_StepGeom_HArray1OfBoundaryCurve(*args))
    Array1 = _swig_new_instance_method(_StepGeom.StepGeom_HArray1OfBoundaryCurve_Array1)
    ChangeArray1 = _swig_new_instance_method(_StepGeom.StepGeom_HArray1OfBoundaryCurve_ChangeArray1)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_HArray1OfBoundaryCurve_DownCast(t)

    __swig_destroy__ = _StepGeom.delete_StepGeom_HArray1OfBoundaryCurve

# Register StepGeom_HArray1OfBoundaryCurve in _StepGeom:
_StepGeom.StepGeom_HArray1OfBoundaryCurve_swigregister(StepGeom_HArray1OfBoundaryCurve)

class StepGeom_HArray1OfCompositeCurveSegment(StepGeom_Array1OfCompositeCurveSegment, OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _StepGeom.StepGeom_HArray1OfCompositeCurveSegment_swiginit(self, _StepGeom.new_StepGeom_HArray1OfCompositeCurveSegment(*args))
    Array1 = _swig_new_instance_method(_StepGeom.StepGeom_HArray1OfCompositeCurveSegment_Array1)
    ChangeArray1 = _swig_new_instance_method(_StepGeom.StepGeom_HArray1OfCompositeCurveSegment_ChangeArray1)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_HArray1OfCompositeCurveSegment_DownCast(t)

    __swig_destroy__ = _StepGeom.delete_StepGeom_HArray1OfCompositeCurveSegment

# Register StepGeom_HArray1OfCompositeCurveSegment in _StepGeom:
_StepGeom.StepGeom_HArray1OfCompositeCurveSegment_swigregister(StepGeom_HArray1OfCompositeCurveSegment)

class StepGeom_HArray1OfCurve(StepGeom_Array1OfCurve, OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _StepGeom.StepGeom_HArray1OfCurve_swiginit(self, _StepGeom.new_StepGeom_HArray1OfCurve(*args))
    Array1 = _swig_new_instance_method(_StepGeom.StepGeom_HArray1OfCurve_Array1)
    ChangeArray1 = _swig_new_instance_method(_StepGeom.StepGeom_HArray1OfCurve_ChangeArray1)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_HArray1OfCurve_DownCast(t)

    __swig_destroy__ = _StepGeom.delete_StepGeom_HArray1OfCurve

# Register StepGeom_HArray1OfCurve in _StepGeom:
_StepGeom.StepGeom_HArray1OfCurve_swigregister(StepGeom_HArray1OfCurve)

class StepGeom_HArray1OfTrimmingSelect(StepGeom_Array1OfTrimmingSelect, OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _StepGeom.StepGeom_HArray1OfTrimmingSelect_swiginit(self, _StepGeom.new_StepGeom_HArray1OfTrimmingSelect(*args))
    Array1 = _swig_new_instance_method(_StepGeom.StepGeom_HArray1OfTrimmingSelect_Array1)
    ChangeArray1 = _swig_new_instance_method(_StepGeom.StepGeom_HArray1OfTrimmingSelect_ChangeArray1)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_HArray1OfTrimmingSelect_DownCast(t)

    __swig_destroy__ = _StepGeom.delete_StepGeom_HArray1OfTrimmingSelect

# Register StepGeom_HArray1OfTrimmingSelect in _StepGeom:
_StepGeom.StepGeom_HArray1OfTrimmingSelect_swigregister(StepGeom_HArray1OfTrimmingSelect)

class StepGeom_HArray2OfSurfacePatch(StepGeom_Array2OfSurfacePatch, OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _StepGeom.StepGeom_HArray2OfSurfacePatch_swiginit(self, _StepGeom.new_StepGeom_HArray2OfSurfacePatch(*args))
    Array2 = _swig_new_instance_method(_StepGeom.StepGeom_HArray2OfSurfacePatch_Array2)
    ChangeArray2 = _swig_new_instance_method(_StepGeom.StepGeom_HArray2OfSurfacePatch_ChangeArray2)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_HArray2OfSurfacePatch_DownCast(t)

    __swig_destroy__ = _StepGeom.delete_StepGeom_HArray2OfSurfacePatch

# Register StepGeom_HArray2OfSurfacePatch in _StepGeom:
_StepGeom.StepGeom_HArray2OfSurfacePatch_swigregister(StepGeom_HArray2OfSurfacePatch)

class StepGeom_HArray2OfCartesianPoint(StepGeom_Array2OfCartesianPoint, OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _StepGeom.StepGeom_HArray2OfCartesianPoint_swiginit(self, _StepGeom.new_StepGeom_HArray2OfCartesianPoint(*args))
    Array2 = _swig_new_instance_method(_StepGeom.StepGeom_HArray2OfCartesianPoint_Array2)
    ChangeArray2 = _swig_new_instance_method(_StepGeom.StepGeom_HArray2OfCartesianPoint_ChangeArray2)


    @staticmethod
    def DownCast(t):
      return Handle_StepGeom_HArray2OfCartesianPoint_DownCast(t)

    __swig_destroy__ = _StepGeom.delete_StepGeom_HArray2OfCartesianPoint

# Register StepGeom_HArray2OfCartesianPoint in _StepGeom:
_StepGeom.StepGeom_HArray2OfCartesianPoint_swigregister(StepGeom_HArray2OfCartesianPoint)



