# This file was automatically generated by SWIG (https://www.swig.org).
# Version 4.2.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.7.0/refman/html/package_stepgeom.html
"""

from sys import version_info as _swig_python_version_info
# 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__

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 == "this":
            set(self, name, value)
        elif name == "thisown":
            self.this.own(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

    def value(self):
        return _StepGeom.SwigPyIterator_value(self)

    def incr(self, n=1):
        return _StepGeom.SwigPyIterator_incr(self, n)

    def decr(self, n=1):
        return _StepGeom.SwigPyIterator_decr(self, n)

    def distance(self, x):
        return _StepGeom.SwigPyIterator_distance(self, x)

    def equal(self, x):
        return _StepGeom.SwigPyIterator_equal(self, x)

    def copy(self):
        return _StepGeom.SwigPyIterator_copy(self)

    def next(self):
        return _StepGeom.SwigPyIterator_next(self)

    def __next__(self):
        return _StepGeom.SwigPyIterator___next__(self)

    def previous(self):
        return _StepGeom.SwigPyIterator_previous(self)

    def advance(self, n):
        return _StepGeom.SwigPyIterator_advance(self, n)

    def __eq__(self, x):
        return _StepGeom.SwigPyIterator___eq__(self, x)

    def __ne__(self, x):
        return _StepGeom.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n):
        return _StepGeom.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n):
        return _StepGeom.SwigPyIterator___isub__(self, n)

    def __add__(self, n):
        return _StepGeom.SwigPyIterator___add__(self, n)

    def __sub__(self, *args):
        return _StepGeom.SwigPyIterator___sub__(self, *args)
    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


def process_exception(error, method_name, class_name):
    return _StepGeom.process_exception(error, method_name, class_name)

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.Message
import OCC.Core.OSD
import OCC.Core.TColStd
import OCC.Core.MoniTool
import OCC.Core.TopoDS
import OCC.Core.TopAbs
import OCC.Core.TopLoc
import OCC.Core.gp
import OCC.Core.Resource
import OCC.Core.StepRepr
import OCC.Core.StepBasic

from enum import IntEnum
from OCC.Core.Exception import *

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_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_ktUniformKnots = _StepGeom.StepGeom_ktUniformKnots
StepGeom_ktUnspecified = _StepGeom.StepGeom_ktUnspecified
StepGeom_ktQuasiUniformKnots = _StepGeom.StepGeom_ktQuasiUniformKnots
StepGeom_ktPiecewiseBezierKnots = _StepGeom.StepGeom_ktPiecewiseBezierKnots
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
StepGeom_tpCartesian = _StepGeom.StepGeom_tpCartesian
StepGeom_tpParameter = _StepGeom.StepGeom_tpParameter
StepGeom_tpUnspecified = _StepGeom.StepGeom_tpUnspecified


class StepGeom_BSplineCurveForm(IntEnum):
	StepGeom_bscfPolylineForm = 0
	StepGeom_bscfCircularArc = 1
	StepGeom_bscfEllipticArc = 2
	StepGeom_bscfParabolicArc = 3
	StepGeom_bscfHyperbolicArc = 4
	StepGeom_bscfUnspecified = 5
StepGeom_bscfPolylineForm = StepGeom_BSplineCurveForm.StepGeom_bscfPolylineForm
StepGeom_bscfCircularArc = StepGeom_BSplineCurveForm.StepGeom_bscfCircularArc
StepGeom_bscfEllipticArc = StepGeom_BSplineCurveForm.StepGeom_bscfEllipticArc
StepGeom_bscfParabolicArc = StepGeom_BSplineCurveForm.StepGeom_bscfParabolicArc
StepGeom_bscfHyperbolicArc = StepGeom_BSplineCurveForm.StepGeom_bscfHyperbolicArc
StepGeom_bscfUnspecified = StepGeom_BSplineCurveForm.StepGeom_bscfUnspecified

class StepGeom_BSplineSurfaceForm(IntEnum):
	StepGeom_bssfPlaneSurf = 0
	StepGeom_bssfCylindricalSurf = 1
	StepGeom_bssfConicalSurf = 2
	StepGeom_bssfSphericalSurf = 3
	StepGeom_bssfToroidalSurf = 4
	StepGeom_bssfSurfOfRevolution = 5
	StepGeom_bssfRuledSurf = 6
	StepGeom_bssfGeneralisedCone = 7
	StepGeom_bssfQuadricSurf = 8
	StepGeom_bssfSurfOfLinearExtrusion = 9
	StepGeom_bssfUnspecified = 10
StepGeom_bssfPlaneSurf = StepGeom_BSplineSurfaceForm.StepGeom_bssfPlaneSurf
StepGeom_bssfCylindricalSurf = StepGeom_BSplineSurfaceForm.StepGeom_bssfCylindricalSurf
StepGeom_bssfConicalSurf = StepGeom_BSplineSurfaceForm.StepGeom_bssfConicalSurf
StepGeom_bssfSphericalSurf = StepGeom_BSplineSurfaceForm.StepGeom_bssfSphericalSurf
StepGeom_bssfToroidalSurf = StepGeom_BSplineSurfaceForm.StepGeom_bssfToroidalSurf
StepGeom_bssfSurfOfRevolution = StepGeom_BSplineSurfaceForm.StepGeom_bssfSurfOfRevolution
StepGeom_bssfRuledSurf = StepGeom_BSplineSurfaceForm.StepGeom_bssfRuledSurf
StepGeom_bssfGeneralisedCone = StepGeom_BSplineSurfaceForm.StepGeom_bssfGeneralisedCone
StepGeom_bssfQuadricSurf = StepGeom_BSplineSurfaceForm.StepGeom_bssfQuadricSurf
StepGeom_bssfSurfOfLinearExtrusion = StepGeom_BSplineSurfaceForm.StepGeom_bssfSurfOfLinearExtrusion
StepGeom_bssfUnspecified = StepGeom_BSplineSurfaceForm.StepGeom_bssfUnspecified

class StepGeom_KnotType(IntEnum):
	StepGeom_ktUniformKnots = 0
	StepGeom_ktUnspecified = 1
	StepGeom_ktQuasiUniformKnots = 2
	StepGeom_ktPiecewiseBezierKnots = 3
StepGeom_ktUniformKnots = StepGeom_KnotType.StepGeom_ktUniformKnots
StepGeom_ktUnspecified = StepGeom_KnotType.StepGeom_ktUnspecified
StepGeom_ktQuasiUniformKnots = StepGeom_KnotType.StepGeom_ktQuasiUniformKnots
StepGeom_ktPiecewiseBezierKnots = StepGeom_KnotType.StepGeom_ktPiecewiseBezierKnots

class StepGeom_PreferredSurfaceCurveRepresentation(IntEnum):
	StepGeom_pscrCurve3d = 0
	StepGeom_pscrPcurveS1 = 1
	StepGeom_pscrPcurveS2 = 2
StepGeom_pscrCurve3d = StepGeom_PreferredSurfaceCurveRepresentation.StepGeom_pscrCurve3d
StepGeom_pscrPcurveS1 = StepGeom_PreferredSurfaceCurveRepresentation.StepGeom_pscrPcurveS1
StepGeom_pscrPcurveS2 = StepGeom_PreferredSurfaceCurveRepresentation.StepGeom_pscrPcurveS2

class StepGeom_TransitionCode(IntEnum):
	StepGeom_tcDiscontinuous = 0
	StepGeom_tcContinuous = 1
	StepGeom_tcContSameGradient = 2
	StepGeom_tcContSameGradientSameCurvature = 3
StepGeom_tcDiscontinuous = StepGeom_TransitionCode.StepGeom_tcDiscontinuous
StepGeom_tcContinuous = StepGeom_TransitionCode.StepGeom_tcContinuous
StepGeom_tcContSameGradient = StepGeom_TransitionCode.StepGeom_tcContSameGradient
StepGeom_tcContSameGradientSameCurvature = StepGeom_TransitionCode.StepGeom_tcContSameGradientSameCurvature

class StepGeom_TrimmingPreference(IntEnum):
	StepGeom_tpCartesian = 0
	StepGeom_tpParameter = 1
	StepGeom_tpUnspecified = 2
StepGeom_tpCartesian = StepGeom_TrimmingPreference.StepGeom_tpCartesian
StepGeom_tpParameter = StepGeom_TrimmingPreference.StepGeom_tpParameter
StepGeom_tpUnspecified = StepGeom_TrimmingPreference.StepGeom_tpUnspecified


def Handle_StepGeom_CompositeCurveSegment_Create():
    return _StepGeom.Handle_StepGeom_CompositeCurveSegment_Create()

def Handle_StepGeom_CompositeCurveSegment_DownCast(t):
    return _StepGeom.Handle_StepGeom_CompositeCurveSegment_DownCast(t)

def Handle_StepGeom_CompositeCurveSegment_IsNull(t):
    return _StepGeom.Handle_StepGeom_CompositeCurveSegment_IsNull(t)

def Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_Create():
    return _StepGeom.Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_Create()

def Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_DownCast(t):
    return _StepGeom.Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_DownCast(t)

def Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_IsNull(t):
    return _StepGeom.Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_IsNull(t)

def Handle_StepGeom_GeometricRepresentationContext_Create():
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContext_Create()

def Handle_StepGeom_GeometricRepresentationContext_DownCast(t):
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContext_DownCast(t)

def Handle_StepGeom_GeometricRepresentationContext_IsNull(t):
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContext_IsNull(t)

def Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_Create():
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_Create()

def Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_DownCast(t):
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_DownCast(t)

def Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_IsNull(t):
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_IsNull(t)

def Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_Create():
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_Create()

def Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_DownCast(t):
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_DownCast(t)

def Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_IsNull(t):
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_IsNull(t)

def Handle_StepGeom_GeometricRepresentationItem_Create():
    return _StepGeom.Handle_StepGeom_GeometricRepresentationItem_Create()

def Handle_StepGeom_GeometricRepresentationItem_DownCast(t):
    return _StepGeom.Handle_StepGeom_GeometricRepresentationItem_DownCast(t)

def Handle_StepGeom_GeometricRepresentationItem_IsNull(t):
    return _StepGeom.Handle_StepGeom_GeometricRepresentationItem_IsNull(t)

def Handle_StepGeom_SurfacePatch_Create():
    return _StepGeom.Handle_StepGeom_SurfacePatch_Create()

def Handle_StepGeom_SurfacePatch_DownCast(t):
    return _StepGeom.Handle_StepGeom_SurfacePatch_DownCast(t)

def Handle_StepGeom_SurfacePatch_IsNull(t):
    return _StepGeom.Handle_StepGeom_SurfacePatch_IsNull(t)

def Handle_StepGeom_TrimmingMember_Create():
    return _StepGeom.Handle_StepGeom_TrimmingMember_Create()

def Handle_StepGeom_TrimmingMember_DownCast(t):
    return _StepGeom.Handle_StepGeom_TrimmingMember_DownCast(t)

def Handle_StepGeom_TrimmingMember_IsNull(t):
    return _StepGeom.Handle_StepGeom_TrimmingMember_IsNull(t)

def Handle_StepGeom_CartesianTransformationOperator_Create():
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator_Create()

def Handle_StepGeom_CartesianTransformationOperator_DownCast(t):
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator_DownCast(t)

def Handle_StepGeom_CartesianTransformationOperator_IsNull(t):
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator_IsNull(t)

def Handle_StepGeom_Curve_Create():
    return _StepGeom.Handle_StepGeom_Curve_Create()

def Handle_StepGeom_Curve_DownCast(t):
    return _StepGeom.Handle_StepGeom_Curve_DownCast(t)

def Handle_StepGeom_Curve_IsNull(t):
    return _StepGeom.Handle_StepGeom_Curve_IsNull(t)

def Handle_StepGeom_Direction_Create():
    return _StepGeom.Handle_StepGeom_Direction_Create()

def Handle_StepGeom_Direction_DownCast(t):
    return _StepGeom.Handle_StepGeom_Direction_DownCast(t)

def Handle_StepGeom_Direction_IsNull(t):
    return _StepGeom.Handle_StepGeom_Direction_IsNull(t)

def Handle_StepGeom_Placement_Create():
    return _StepGeom.Handle_StepGeom_Placement_Create()

def Handle_StepGeom_Placement_DownCast(t):
    return _StepGeom.Handle_StepGeom_Placement_DownCast(t)

def Handle_StepGeom_Placement_IsNull(t):
    return _StepGeom.Handle_StepGeom_Placement_IsNull(t)

def Handle_StepGeom_Point_Create():
    return _StepGeom.Handle_StepGeom_Point_Create()

def Handle_StepGeom_Point_DownCast(t):
    return _StepGeom.Handle_StepGeom_Point_DownCast(t)

def Handle_StepGeom_Point_IsNull(t):
    return _StepGeom.Handle_StepGeom_Point_IsNull(t)

def Handle_StepGeom_ReparametrisedCompositeCurveSegment_Create():
    return _StepGeom.Handle_StepGeom_ReparametrisedCompositeCurveSegment_Create()

def Handle_StepGeom_ReparametrisedCompositeCurveSegment_DownCast(t):
    return _StepGeom.Handle_StepGeom_ReparametrisedCompositeCurveSegment_DownCast(t)

def Handle_StepGeom_ReparametrisedCompositeCurveSegment_IsNull(t):
    return _StepGeom.Handle_StepGeom_ReparametrisedCompositeCurveSegment_IsNull(t)

def Handle_StepGeom_SuParameters_Create():
    return _StepGeom.Handle_StepGeom_SuParameters_Create()

def Handle_StepGeom_SuParameters_DownCast(t):
    return _StepGeom.Handle_StepGeom_SuParameters_DownCast(t)

def Handle_StepGeom_SuParameters_IsNull(t):
    return _StepGeom.Handle_StepGeom_SuParameters_IsNull(t)

def Handle_StepGeom_Surface_Create():
    return _StepGeom.Handle_StepGeom_Surface_Create()

def Handle_StepGeom_Surface_DownCast(t):
    return _StepGeom.Handle_StepGeom_Surface_DownCast(t)

def Handle_StepGeom_Surface_IsNull(t):
    return _StepGeom.Handle_StepGeom_Surface_IsNull(t)

def Handle_StepGeom_Vector_Create():
    return _StepGeom.Handle_StepGeom_Vector_Create()

def Handle_StepGeom_Vector_DownCast(t):
    return _StepGeom.Handle_StepGeom_Vector_DownCast(t)

def Handle_StepGeom_Vector_IsNull(t):
    return _StepGeom.Handle_StepGeom_Vector_IsNull(t)

def Handle_StepGeom_Axis1Placement_Create():
    return _StepGeom.Handle_StepGeom_Axis1Placement_Create()

def Handle_StepGeom_Axis1Placement_DownCast(t):
    return _StepGeom.Handle_StepGeom_Axis1Placement_DownCast(t)

def Handle_StepGeom_Axis1Placement_IsNull(t):
    return _StepGeom.Handle_StepGeom_Axis1Placement_IsNull(t)

def Handle_StepGeom_Axis2Placement2d_Create():
    return _StepGeom.Handle_StepGeom_Axis2Placement2d_Create()

def Handle_StepGeom_Axis2Placement2d_DownCast(t):
    return _StepGeom.Handle_StepGeom_Axis2Placement2d_DownCast(t)

def Handle_StepGeom_Axis2Placement2d_IsNull(t):
    return _StepGeom.Handle_StepGeom_Axis2Placement2d_IsNull(t)

def Handle_StepGeom_Axis2Placement3d_Create():
    return _StepGeom.Handle_StepGeom_Axis2Placement3d_Create()

def Handle_StepGeom_Axis2Placement3d_DownCast(t):
    return _StepGeom.Handle_StepGeom_Axis2Placement3d_DownCast(t)

def Handle_StepGeom_Axis2Placement3d_IsNull(t):
    return _StepGeom.Handle_StepGeom_Axis2Placement3d_IsNull(t)

def Handle_StepGeom_BoundedCurve_Create():
    return _StepGeom.Handle_StepGeom_BoundedCurve_Create()

def Handle_StepGeom_BoundedCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_BoundedCurve_DownCast(t)

def Handle_StepGeom_BoundedCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_BoundedCurve_IsNull(t)

def Handle_StepGeom_BoundedSurface_Create():
    return _StepGeom.Handle_StepGeom_BoundedSurface_Create()

def Handle_StepGeom_BoundedSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_BoundedSurface_DownCast(t)

def Handle_StepGeom_BoundedSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_BoundedSurface_IsNull(t)

def Handle_StepGeom_CartesianPoint_Create():
    return _StepGeom.Handle_StepGeom_CartesianPoint_Create()

def Handle_StepGeom_CartesianPoint_DownCast(t):
    return _StepGeom.Handle_StepGeom_CartesianPoint_DownCast(t)

def Handle_StepGeom_CartesianPoint_IsNull(t):
    return _StepGeom.Handle_StepGeom_CartesianPoint_IsNull(t)

def Handle_StepGeom_CartesianTransformationOperator2d_Create():
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator2d_Create()

def Handle_StepGeom_CartesianTransformationOperator2d_DownCast(t):
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator2d_DownCast(t)

def Handle_StepGeom_CartesianTransformationOperator2d_IsNull(t):
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator2d_IsNull(t)

def Handle_StepGeom_CartesianTransformationOperator3d_Create():
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator3d_Create()

def Handle_StepGeom_CartesianTransformationOperator3d_DownCast(t):
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator3d_DownCast(t)

def Handle_StepGeom_CartesianTransformationOperator3d_IsNull(t):
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator3d_IsNull(t)

def Handle_StepGeom_Conic_Create():
    return _StepGeom.Handle_StepGeom_Conic_Create()

def Handle_StepGeom_Conic_DownCast(t):
    return _StepGeom.Handle_StepGeom_Conic_DownCast(t)

def Handle_StepGeom_Conic_IsNull(t):
    return _StepGeom.Handle_StepGeom_Conic_IsNull(t)

def Handle_StepGeom_CurveReplica_Create():
    return _StepGeom.Handle_StepGeom_CurveReplica_Create()

def Handle_StepGeom_CurveReplica_DownCast(t):
    return _StepGeom.Handle_StepGeom_CurveReplica_DownCast(t)

def Handle_StepGeom_CurveReplica_IsNull(t):
    return _StepGeom.Handle_StepGeom_CurveReplica_IsNull(t)

def Handle_StepGeom_DegeneratePcurve_Create():
    return _StepGeom.Handle_StepGeom_DegeneratePcurve_Create()

def Handle_StepGeom_DegeneratePcurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_DegeneratePcurve_DownCast(t)

def Handle_StepGeom_DegeneratePcurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_DegeneratePcurve_IsNull(t)

def Handle_StepGeom_ElementarySurface_Create():
    return _StepGeom.Handle_StepGeom_ElementarySurface_Create()

def Handle_StepGeom_ElementarySurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_ElementarySurface_DownCast(t)

def Handle_StepGeom_ElementarySurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_ElementarySurface_IsNull(t)

def Handle_StepGeom_Line_Create():
    return _StepGeom.Handle_StepGeom_Line_Create()

def Handle_StepGeom_Line_DownCast(t):
    return _StepGeom.Handle_StepGeom_Line_DownCast(t)

def Handle_StepGeom_Line_IsNull(t):
    return _StepGeom.Handle_StepGeom_Line_IsNull(t)

def Handle_StepGeom_OffsetCurve3d_Create():
    return _StepGeom.Handle_StepGeom_OffsetCurve3d_Create()

def Handle_StepGeom_OffsetCurve3d_DownCast(t):
    return _StepGeom.Handle_StepGeom_OffsetCurve3d_DownCast(t)

def Handle_StepGeom_OffsetCurve3d_IsNull(t):
    return _StepGeom.Handle_StepGeom_OffsetCurve3d_IsNull(t)

def Handle_StepGeom_OffsetSurface_Create():
    return _StepGeom.Handle_StepGeom_OffsetSurface_Create()

def Handle_StepGeom_OffsetSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_OffsetSurface_DownCast(t)

def Handle_StepGeom_OffsetSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_OffsetSurface_IsNull(t)

def Handle_StepGeom_OrientedSurface_Create():
    return _StepGeom.Handle_StepGeom_OrientedSurface_Create()

def Handle_StepGeom_OrientedSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_OrientedSurface_DownCast(t)

def Handle_StepGeom_OrientedSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_OrientedSurface_IsNull(t)

def Handle_StepGeom_Pcurve_Create():
    return _StepGeom.Handle_StepGeom_Pcurve_Create()

def Handle_StepGeom_Pcurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_Pcurve_DownCast(t)

def Handle_StepGeom_Pcurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_Pcurve_IsNull(t)

def Handle_StepGeom_PointOnCurve_Create():
    return _StepGeom.Handle_StepGeom_PointOnCurve_Create()

def Handle_StepGeom_PointOnCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_PointOnCurve_DownCast(t)

def Handle_StepGeom_PointOnCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_PointOnCurve_IsNull(t)

def Handle_StepGeom_PointOnSurface_Create():
    return _StepGeom.Handle_StepGeom_PointOnSurface_Create()

def Handle_StepGeom_PointOnSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_PointOnSurface_DownCast(t)

def Handle_StepGeom_PointOnSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_PointOnSurface_IsNull(t)

def Handle_StepGeom_PointReplica_Create():
    return _StepGeom.Handle_StepGeom_PointReplica_Create()

def Handle_StepGeom_PointReplica_DownCast(t):
    return _StepGeom.Handle_StepGeom_PointReplica_DownCast(t)

def Handle_StepGeom_PointReplica_IsNull(t):
    return _StepGeom.Handle_StepGeom_PointReplica_IsNull(t)

def Handle_StepGeom_SurfaceCurve_Create():
    return _StepGeom.Handle_StepGeom_SurfaceCurve_Create()

def Handle_StepGeom_SurfaceCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_SurfaceCurve_DownCast(t)

def Handle_StepGeom_SurfaceCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_SurfaceCurve_IsNull(t)

def Handle_StepGeom_SurfaceReplica_Create():
    return _StepGeom.Handle_StepGeom_SurfaceReplica_Create()

def Handle_StepGeom_SurfaceReplica_DownCast(t):
    return _StepGeom.Handle_StepGeom_SurfaceReplica_DownCast(t)

def Handle_StepGeom_SurfaceReplica_IsNull(t):
    return _StepGeom.Handle_StepGeom_SurfaceReplica_IsNull(t)

def Handle_StepGeom_SweptSurface_Create():
    return _StepGeom.Handle_StepGeom_SweptSurface_Create()

def Handle_StepGeom_SweptSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_SweptSurface_DownCast(t)

def Handle_StepGeom_SweptSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_SweptSurface_IsNull(t)

def Handle_StepGeom_BSplineCurve_Create():
    return _StepGeom.Handle_StepGeom_BSplineCurve_Create()

def Handle_StepGeom_BSplineCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_BSplineCurve_DownCast(t)

def Handle_StepGeom_BSplineCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_BSplineCurve_IsNull(t)

def Handle_StepGeom_BSplineSurface_Create():
    return _StepGeom.Handle_StepGeom_BSplineSurface_Create()

def Handle_StepGeom_BSplineSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_BSplineSurface_DownCast(t)

def Handle_StepGeom_BSplineSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_BSplineSurface_IsNull(t)

def Handle_StepGeom_Circle_Create():
    return _StepGeom.Handle_StepGeom_Circle_Create()

def Handle_StepGeom_Circle_DownCast(t):
    return _StepGeom.Handle_StepGeom_Circle_DownCast(t)

def Handle_StepGeom_Circle_IsNull(t):
    return _StepGeom.Handle_StepGeom_Circle_IsNull(t)

def Handle_StepGeom_CompositeCurve_Create():
    return _StepGeom.Handle_StepGeom_CompositeCurve_Create()

def Handle_StepGeom_CompositeCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_CompositeCurve_DownCast(t)

def Handle_StepGeom_CompositeCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_CompositeCurve_IsNull(t)

def Handle_StepGeom_ConicalSurface_Create():
    return _StepGeom.Handle_StepGeom_ConicalSurface_Create()

def Handle_StepGeom_ConicalSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_ConicalSurface_DownCast(t)

def Handle_StepGeom_ConicalSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_ConicalSurface_IsNull(t)

def Handle_StepGeom_CurveBoundedSurface_Create():
    return _StepGeom.Handle_StepGeom_CurveBoundedSurface_Create()

def Handle_StepGeom_CurveBoundedSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_CurveBoundedSurface_DownCast(t)

def Handle_StepGeom_CurveBoundedSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_CurveBoundedSurface_IsNull(t)

def Handle_StepGeom_CylindricalSurface_Create():
    return _StepGeom.Handle_StepGeom_CylindricalSurface_Create()

def Handle_StepGeom_CylindricalSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_CylindricalSurface_DownCast(t)

def Handle_StepGeom_CylindricalSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_CylindricalSurface_IsNull(t)

def Handle_StepGeom_Ellipse_Create():
    return _StepGeom.Handle_StepGeom_Ellipse_Create()

def Handle_StepGeom_Ellipse_DownCast(t):
    return _StepGeom.Handle_StepGeom_Ellipse_DownCast(t)

def Handle_StepGeom_Ellipse_IsNull(t):
    return _StepGeom.Handle_StepGeom_Ellipse_IsNull(t)

def Handle_StepGeom_EvaluatedDegeneratePcurve_Create():
    return _StepGeom.Handle_StepGeom_EvaluatedDegeneratePcurve_Create()

def Handle_StepGeom_EvaluatedDegeneratePcurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_EvaluatedDegeneratePcurve_DownCast(t)

def Handle_StepGeom_EvaluatedDegeneratePcurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_EvaluatedDegeneratePcurve_IsNull(t)

def Handle_StepGeom_Hyperbola_Create():
    return _StepGeom.Handle_StepGeom_Hyperbola_Create()

def Handle_StepGeom_Hyperbola_DownCast(t):
    return _StepGeom.Handle_StepGeom_Hyperbola_DownCast(t)

def Handle_StepGeom_Hyperbola_IsNull(t):
    return _StepGeom.Handle_StepGeom_Hyperbola_IsNull(t)

def Handle_StepGeom_IntersectionCurve_Create():
    return _StepGeom.Handle_StepGeom_IntersectionCurve_Create()

def Handle_StepGeom_IntersectionCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_IntersectionCurve_DownCast(t)

def Handle_StepGeom_IntersectionCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_IntersectionCurve_IsNull(t)

def Handle_StepGeom_Parabola_Create():
    return _StepGeom.Handle_StepGeom_Parabola_Create()

def Handle_StepGeom_Parabola_DownCast(t):
    return _StepGeom.Handle_StepGeom_Parabola_DownCast(t)

def Handle_StepGeom_Parabola_IsNull(t):
    return _StepGeom.Handle_StepGeom_Parabola_IsNull(t)

def Handle_StepGeom_Plane_Create():
    return _StepGeom.Handle_StepGeom_Plane_Create()

def Handle_StepGeom_Plane_DownCast(t):
    return _StepGeom.Handle_StepGeom_Plane_DownCast(t)

def Handle_StepGeom_Plane_IsNull(t):
    return _StepGeom.Handle_StepGeom_Plane_IsNull(t)

def Handle_StepGeom_Polyline_Create():
    return _StepGeom.Handle_StepGeom_Polyline_Create()

def Handle_StepGeom_Polyline_DownCast(t):
    return _StepGeom.Handle_StepGeom_Polyline_DownCast(t)

def Handle_StepGeom_Polyline_IsNull(t):
    return _StepGeom.Handle_StepGeom_Polyline_IsNull(t)

def Handle_StepGeom_RectangularCompositeSurface_Create():
    return _StepGeom.Handle_StepGeom_RectangularCompositeSurface_Create()

def Handle_StepGeom_RectangularCompositeSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_RectangularCompositeSurface_DownCast(t)

def Handle_StepGeom_RectangularCompositeSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_RectangularCompositeSurface_IsNull(t)

def Handle_StepGeom_RectangularTrimmedSurface_Create():
    return _StepGeom.Handle_StepGeom_RectangularTrimmedSurface_Create()

def Handle_StepGeom_RectangularTrimmedSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_RectangularTrimmedSurface_DownCast(t)

def Handle_StepGeom_RectangularTrimmedSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_RectangularTrimmedSurface_IsNull(t)

def Handle_StepGeom_SeamCurve_Create():
    return _StepGeom.Handle_StepGeom_SeamCurve_Create()

def Handle_StepGeom_SeamCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_SeamCurve_DownCast(t)

def Handle_StepGeom_SeamCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_SeamCurve_IsNull(t)

def Handle_StepGeom_SphericalSurface_Create():
    return _StepGeom.Handle_StepGeom_SphericalSurface_Create()

def Handle_StepGeom_SphericalSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_SphericalSurface_DownCast(t)

def Handle_StepGeom_SphericalSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_SphericalSurface_IsNull(t)

def Handle_StepGeom_SurfaceCurveAndBoundedCurve_Create():
    return _StepGeom.Handle_StepGeom_SurfaceCurveAndBoundedCurve_Create()

def Handle_StepGeom_SurfaceCurveAndBoundedCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_SurfaceCurveAndBoundedCurve_DownCast(t)

def Handle_StepGeom_SurfaceCurveAndBoundedCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_SurfaceCurveAndBoundedCurve_IsNull(t)

def Handle_StepGeom_SurfaceOfLinearExtrusion_Create():
    return _StepGeom.Handle_StepGeom_SurfaceOfLinearExtrusion_Create()

def Handle_StepGeom_SurfaceOfLinearExtrusion_DownCast(t):
    return _StepGeom.Handle_StepGeom_SurfaceOfLinearExtrusion_DownCast(t)

def Handle_StepGeom_SurfaceOfLinearExtrusion_IsNull(t):
    return _StepGeom.Handle_StepGeom_SurfaceOfLinearExtrusion_IsNull(t)

def Handle_StepGeom_SurfaceOfRevolution_Create():
    return _StepGeom.Handle_StepGeom_SurfaceOfRevolution_Create()

def Handle_StepGeom_SurfaceOfRevolution_DownCast(t):
    return _StepGeom.Handle_StepGeom_SurfaceOfRevolution_DownCast(t)

def Handle_StepGeom_SurfaceOfRevolution_IsNull(t):
    return _StepGeom.Handle_StepGeom_SurfaceOfRevolution_IsNull(t)

def Handle_StepGeom_ToroidalSurface_Create():
    return _StepGeom.Handle_StepGeom_ToroidalSurface_Create()

def Handle_StepGeom_ToroidalSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_ToroidalSurface_DownCast(t)

def Handle_StepGeom_ToroidalSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_ToroidalSurface_IsNull(t)

def Handle_StepGeom_TrimmedCurve_Create():
    return _StepGeom.Handle_StepGeom_TrimmedCurve_Create()

def Handle_StepGeom_TrimmedCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_TrimmedCurve_DownCast(t)

def Handle_StepGeom_TrimmedCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_TrimmedCurve_IsNull(t)

def Handle_StepGeom_BSplineCurveWithKnots_Create():
    return _StepGeom.Handle_StepGeom_BSplineCurveWithKnots_Create()

def Handle_StepGeom_BSplineCurveWithKnots_DownCast(t):
    return _StepGeom.Handle_StepGeom_BSplineCurveWithKnots_DownCast(t)

def Handle_StepGeom_BSplineCurveWithKnots_IsNull(t):
    return _StepGeom.Handle_StepGeom_BSplineCurveWithKnots_IsNull(t)

def Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_Create():
    return _StepGeom.Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_Create()

def Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_DownCast(t)

def Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_IsNull(t)

def Handle_StepGeom_BSplineSurfaceWithKnots_Create():
    return _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnots_Create()

def Handle_StepGeom_BSplineSurfaceWithKnots_DownCast(t):
    return _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnots_DownCast(t)

def Handle_StepGeom_BSplineSurfaceWithKnots_IsNull(t):
    return _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnots_IsNull(t)

def Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_Create():
    return _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_Create()

def Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_DownCast(t)

def Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_IsNull(t)

def Handle_StepGeom_BezierCurve_Create():
    return _StepGeom.Handle_StepGeom_BezierCurve_Create()

def Handle_StepGeom_BezierCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_BezierCurve_DownCast(t)

def Handle_StepGeom_BezierCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_BezierCurve_IsNull(t)

def Handle_StepGeom_BezierCurveAndRationalBSplineCurve_Create():
    return _StepGeom.Handle_StepGeom_BezierCurveAndRationalBSplineCurve_Create()

def Handle_StepGeom_BezierCurveAndRationalBSplineCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_BezierCurveAndRationalBSplineCurve_DownCast(t)

def Handle_StepGeom_BezierCurveAndRationalBSplineCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_BezierCurveAndRationalBSplineCurve_IsNull(t)

def Handle_StepGeom_BezierSurface_Create():
    return _StepGeom.Handle_StepGeom_BezierSurface_Create()

def Handle_StepGeom_BezierSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_BezierSurface_DownCast(t)

def Handle_StepGeom_BezierSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_BezierSurface_IsNull(t)

def Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_Create():
    return _StepGeom.Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_Create()

def Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_DownCast(t)

def Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_IsNull(t)

def Handle_StepGeom_CompositeCurveOnSurface_Create():
    return _StepGeom.Handle_StepGeom_CompositeCurveOnSurface_Create()

def Handle_StepGeom_CompositeCurveOnSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_CompositeCurveOnSurface_DownCast(t)

def Handle_StepGeom_CompositeCurveOnSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_CompositeCurveOnSurface_IsNull(t)

def Handle_StepGeom_DegenerateToroidalSurface_Create():
    return _StepGeom.Handle_StepGeom_DegenerateToroidalSurface_Create()

def Handle_StepGeom_DegenerateToroidalSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_DegenerateToroidalSurface_DownCast(t)

def Handle_StepGeom_DegenerateToroidalSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_DegenerateToroidalSurface_IsNull(t)

def Handle_StepGeom_QuasiUniformCurve_Create():
    return _StepGeom.Handle_StepGeom_QuasiUniformCurve_Create()

def Handle_StepGeom_QuasiUniformCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_QuasiUniformCurve_DownCast(t)

def Handle_StepGeom_QuasiUniformCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_QuasiUniformCurve_IsNull(t)

def Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_Create():
    return _StepGeom.Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_Create()

def Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_DownCast(t)

def Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_IsNull(t)

def Handle_StepGeom_QuasiUniformSurface_Create():
    return _StepGeom.Handle_StepGeom_QuasiUniformSurface_Create()

def Handle_StepGeom_QuasiUniformSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_QuasiUniformSurface_DownCast(t)

def Handle_StepGeom_QuasiUniformSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_QuasiUniformSurface_IsNull(t)

def Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_Create():
    return _StepGeom.Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_Create()

def Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_DownCast(t)

def Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_IsNull(t)

def Handle_StepGeom_RationalBSplineCurve_Create():
    return _StepGeom.Handle_StepGeom_RationalBSplineCurve_Create()

def Handle_StepGeom_RationalBSplineCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_RationalBSplineCurve_DownCast(t)

def Handle_StepGeom_RationalBSplineCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_RationalBSplineCurve_IsNull(t)

def Handle_StepGeom_RationalBSplineSurface_Create():
    return _StepGeom.Handle_StepGeom_RationalBSplineSurface_Create()

def Handle_StepGeom_RationalBSplineSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_RationalBSplineSurface_DownCast(t)

def Handle_StepGeom_RationalBSplineSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_RationalBSplineSurface_IsNull(t)

def Handle_StepGeom_UniformCurve_Create():
    return _StepGeom.Handle_StepGeom_UniformCurve_Create()

def Handle_StepGeom_UniformCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_UniformCurve_DownCast(t)

def Handle_StepGeom_UniformCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_UniformCurve_IsNull(t)

def Handle_StepGeom_UniformCurveAndRationalBSplineCurve_Create():
    return _StepGeom.Handle_StepGeom_UniformCurveAndRationalBSplineCurve_Create()

def Handle_StepGeom_UniformCurveAndRationalBSplineCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_UniformCurveAndRationalBSplineCurve_DownCast(t)

def Handle_StepGeom_UniformCurveAndRationalBSplineCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_UniformCurveAndRationalBSplineCurve_IsNull(t)

def Handle_StepGeom_UniformSurface_Create():
    return _StepGeom.Handle_StepGeom_UniformSurface_Create()

def Handle_StepGeom_UniformSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_UniformSurface_DownCast(t)

def Handle_StepGeom_UniformSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_UniformSurface_IsNull(t)

def Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_Create():
    return _StepGeom.Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_Create()

def Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_DownCast(t)

def Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_IsNull(t)

def Handle_StepGeom_BoundaryCurve_Create():
    return _StepGeom.Handle_StepGeom_BoundaryCurve_Create()

def Handle_StepGeom_BoundaryCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_BoundaryCurve_DownCast(t)

def Handle_StepGeom_BoundaryCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_BoundaryCurve_IsNull(t)

def Handle_StepGeom_OuterBoundaryCurve_Create():
    return _StepGeom.Handle_StepGeom_OuterBoundaryCurve_Create()

def Handle_StepGeom_OuterBoundaryCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_OuterBoundaryCurve_DownCast(t)

def Handle_StepGeom_OuterBoundaryCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_OuterBoundaryCurve_IsNull(t)

def Handle_StepGeom_HArray1OfSurfaceBoundary_Create():
    return _StepGeom.Handle_StepGeom_HArray1OfSurfaceBoundary_Create()

def Handle_StepGeom_HArray1OfSurfaceBoundary_DownCast(t):
    return _StepGeom.Handle_StepGeom_HArray1OfSurfaceBoundary_DownCast(t)

def Handle_StepGeom_HArray1OfSurfaceBoundary_IsNull(t):
    return _StepGeom.Handle_StepGeom_HArray1OfSurfaceBoundary_IsNull(t)

def Handle_StepGeom_HArray1OfCartesianPoint_Create():
    return _StepGeom.Handle_StepGeom_HArray1OfCartesianPoint_Create()

def Handle_StepGeom_HArray1OfCartesianPoint_DownCast(t):
    return _StepGeom.Handle_StepGeom_HArray1OfCartesianPoint_DownCast(t)

def Handle_StepGeom_HArray1OfCartesianPoint_IsNull(t):
    return _StepGeom.Handle_StepGeom_HArray1OfCartesianPoint_IsNull(t)

def Handle_StepGeom_HArray1OfBoundaryCurve_Create():
    return _StepGeom.Handle_StepGeom_HArray1OfBoundaryCurve_Create()

def Handle_StepGeom_HArray1OfBoundaryCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_HArray1OfBoundaryCurve_DownCast(t)

def Handle_StepGeom_HArray1OfBoundaryCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_HArray1OfBoundaryCurve_IsNull(t)

def Handle_StepGeom_HArray1OfPcurveOrSurface_Create():
    return _StepGeom.Handle_StepGeom_HArray1OfPcurveOrSurface_Create()

def Handle_StepGeom_HArray1OfPcurveOrSurface_DownCast(t):
    return _StepGeom.Handle_StepGeom_HArray1OfPcurveOrSurface_DownCast(t)

def Handle_StepGeom_HArray1OfPcurveOrSurface_IsNull(t):
    return _StepGeom.Handle_StepGeom_HArray1OfPcurveOrSurface_IsNull(t)

def Handle_StepGeom_HArray1OfCurve_Create():
    return _StepGeom.Handle_StepGeom_HArray1OfCurve_Create()

def Handle_StepGeom_HArray1OfCurve_DownCast(t):
    return _StepGeom.Handle_StepGeom_HArray1OfCurve_DownCast(t)

def Handle_StepGeom_HArray1OfCurve_IsNull(t):
    return _StepGeom.Handle_StepGeom_HArray1OfCurve_IsNull(t)

def Handle_StepGeom_HArray1OfTrimmingSelect_Create():
    return _StepGeom.Handle_StepGeom_HArray1OfTrimmingSelect_Create()

def Handle_StepGeom_HArray1OfTrimmingSelect_DownCast(t):
    return _StepGeom.Handle_StepGeom_HArray1OfTrimmingSelect_DownCast(t)

def Handle_StepGeom_HArray1OfTrimmingSelect_IsNull(t):
    return _StepGeom.Handle_StepGeom_HArray1OfTrimmingSelect_IsNull(t)

def Handle_StepGeom_HArray1OfCompositeCurveSegment_Create():
    return _StepGeom.Handle_StepGeom_HArray1OfCompositeCurveSegment_Create()

def Handle_StepGeom_HArray1OfCompositeCurveSegment_DownCast(t):
    return _StepGeom.Handle_StepGeom_HArray1OfCompositeCurveSegment_DownCast(t)

def Handle_StepGeom_HArray1OfCompositeCurveSegment_IsNull(t):
    return _StepGeom.Handle_StepGeom_HArray1OfCompositeCurveSegment_IsNull(t)

def Handle_StepGeom_HArray2OfCartesianPoint_Create():
    return _StepGeom.Handle_StepGeom_HArray2OfCartesianPoint_Create()

def Handle_StepGeom_HArray2OfCartesianPoint_DownCast(t):
    return _StepGeom.Handle_StepGeom_HArray2OfCartesianPoint_DownCast(t)

def Handle_StepGeom_HArray2OfCartesianPoint_IsNull(t):
    return _StepGeom.Handle_StepGeom_HArray2OfCartesianPoint_IsNull(t)

def Handle_StepGeom_HArray2OfSurfacePatch_Create():
    return _StepGeom.Handle_StepGeom_HArray2OfSurfacePatch_Create()

def Handle_StepGeom_HArray2OfSurfacePatch_DownCast(t):
    return _StepGeom.Handle_StepGeom_HArray2OfSurfacePatch_DownCast(t)

def Handle_StepGeom_HArray2OfSurfacePatch_IsNull(t):
    return _StepGeom.Handle_StepGeom_HArray2OfSurfacePatch_IsNull(t)
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

    def begin(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_begin(self)

    def end(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_end(self)

    def cbegin(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_cbegin(self)

    def cend(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_cend(self)

    def __init__(self, *args):
        _StepGeom.StepGeom_Array1OfBoundaryCurve_swiginit(self, _StepGeom.new_StepGeom_Array1OfBoundaryCurve(*args))

    def Init(self, theValue):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Init(self, theValue)

    def Size(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Size(self)

    def Length(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Length(self)

    def IsEmpty(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_IsEmpty(self)

    def Lower(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Lower(self)

    def Upper(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Upper(self)

    def IsDeletable(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_IsDeletable(self)

    def IsAllocated(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_IsAllocated(self)

    def Assign(self, theOther):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Assign(self, theOther)

    def Move(self, theOther):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Move(self, theOther)

    def Set(self, *args):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Set(self, *args)

    def First(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_First(self)

    def ChangeFirst(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_ChangeFirst(self)

    def Last(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Last(self)

    def ChangeLast(self):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_ChangeLast(self)

    def Value(self, theIndex):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Resize(self, theLower, theUpper, theToCopyData)
    __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_Array1OfCartesianPoint(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_begin(self)

    def end(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_end(self)

    def cbegin(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_cbegin(self)

    def cend(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_cend(self)

    def __init__(self, *args):
        _StepGeom.StepGeom_Array1OfCartesianPoint_swiginit(self, _StepGeom.new_StepGeom_Array1OfCartesianPoint(*args))

    def Init(self, theValue):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Init(self, theValue)

    def Size(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Size(self)

    def Length(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Length(self)

    def IsEmpty(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_IsEmpty(self)

    def Lower(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Lower(self)

    def Upper(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Upper(self)

    def IsDeletable(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_IsDeletable(self)

    def IsAllocated(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_IsAllocated(self)

    def Assign(self, theOther):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Assign(self, theOther)

    def Move(self, theOther):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Move(self, theOther)

    def Set(self, *args):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Set(self, *args)

    def First(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_First(self)

    def ChangeFirst(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_ChangeFirst(self)

    def Last(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Last(self)

    def ChangeLast(self):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_ChangeLast(self)

    def Value(self, theIndex):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepGeom.StepGeom_Array1OfCartesianPoint___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Resize(self, theLower, theUpper, theToCopyData)
    __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_Array1OfCompositeCurveSegment(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_begin(self)

    def end(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_end(self)

    def cbegin(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_cbegin(self)

    def cend(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_cend(self)

    def __init__(self, *args):
        _StepGeom.StepGeom_Array1OfCompositeCurveSegment_swiginit(self, _StepGeom.new_StepGeom_Array1OfCompositeCurveSegment(*args))

    def Init(self, theValue):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Init(self, theValue)

    def Size(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Size(self)

    def Length(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Length(self)

    def IsEmpty(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_IsEmpty(self)

    def Lower(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Lower(self)

    def Upper(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Upper(self)

    def IsDeletable(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_IsDeletable(self)

    def IsAllocated(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_IsAllocated(self)

    def Assign(self, theOther):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Assign(self, theOther)

    def Move(self, theOther):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Move(self, theOther)

    def Set(self, *args):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Set(self, *args)

    def First(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_First(self)

    def ChangeFirst(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_ChangeFirst(self)

    def Last(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Last(self)

    def ChangeLast(self):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_ChangeLast(self)

    def Value(self, theIndex):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Resize(self, theLower, theUpper, theToCopyData)
    __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_Array1OfCurve(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepGeom.StepGeom_Array1OfCurve_begin(self)

    def end(self):
        return _StepGeom.StepGeom_Array1OfCurve_end(self)

    def cbegin(self):
        return _StepGeom.StepGeom_Array1OfCurve_cbegin(self)

    def cend(self):
        return _StepGeom.StepGeom_Array1OfCurve_cend(self)

    def __init__(self, *args):
        _StepGeom.StepGeom_Array1OfCurve_swiginit(self, _StepGeom.new_StepGeom_Array1OfCurve(*args))

    def Init(self, theValue):
        return _StepGeom.StepGeom_Array1OfCurve_Init(self, theValue)

    def Size(self):
        return _StepGeom.StepGeom_Array1OfCurve_Size(self)

    def Length(self):
        return _StepGeom.StepGeom_Array1OfCurve_Length(self)

    def IsEmpty(self):
        return _StepGeom.StepGeom_Array1OfCurve_IsEmpty(self)

    def Lower(self):
        return _StepGeom.StepGeom_Array1OfCurve_Lower(self)

    def Upper(self):
        return _StepGeom.StepGeom_Array1OfCurve_Upper(self)

    def IsDeletable(self):
        return _StepGeom.StepGeom_Array1OfCurve_IsDeletable(self)

    def IsAllocated(self):
        return _StepGeom.StepGeom_Array1OfCurve_IsAllocated(self)

    def Assign(self, theOther):
        return _StepGeom.StepGeom_Array1OfCurve_Assign(self, theOther)

    def Move(self, theOther):
        return _StepGeom.StepGeom_Array1OfCurve_Move(self, theOther)

    def Set(self, *args):
        return _StepGeom.StepGeom_Array1OfCurve_Set(self, *args)

    def First(self):
        return _StepGeom.StepGeom_Array1OfCurve_First(self)

    def ChangeFirst(self):
        return _StepGeom.StepGeom_Array1OfCurve_ChangeFirst(self)

    def Last(self):
        return _StepGeom.StepGeom_Array1OfCurve_Last(self)

    def ChangeLast(self):
        return _StepGeom.StepGeom_Array1OfCurve_ChangeLast(self)

    def Value(self, theIndex):
        return _StepGeom.StepGeom_Array1OfCurve_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepGeom.StepGeom_Array1OfCurve_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepGeom.StepGeom_Array1OfCurve___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepGeom.StepGeom_Array1OfCurve_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepGeom.StepGeom_Array1OfCurve_Resize(self, theLower, theUpper, theToCopyData)
    __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

    def begin(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_begin(self)

    def end(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_end(self)

    def cbegin(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_cbegin(self)

    def cend(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_cend(self)

    def __init__(self, *args):
        _StepGeom.StepGeom_Array1OfPcurveOrSurface_swiginit(self, _StepGeom.new_StepGeom_Array1OfPcurveOrSurface(*args))

    def Init(self, theValue):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Init(self, theValue)

    def Size(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Size(self)

    def Length(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Length(self)

    def IsEmpty(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_IsEmpty(self)

    def Lower(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Lower(self)

    def Upper(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Upper(self)

    def IsDeletable(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_IsDeletable(self)

    def IsAllocated(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_IsAllocated(self)

    def Assign(self, theOther):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Assign(self, theOther)

    def Move(self, theOther):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Move(self, theOther)

    def Set(self, *args):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Set(self, *args)

    def First(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_First(self)

    def ChangeFirst(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_ChangeFirst(self)

    def Last(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Last(self)

    def ChangeLast(self):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_ChangeLast(self)

    def Value(self, theIndex):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Resize(self, theLower, theUpper, theToCopyData)
    __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_Array1OfSurfaceBoundary(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_begin(self)

    def end(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_end(self)

    def cbegin(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_cbegin(self)

    def cend(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_cend(self)

    def __init__(self, *args):
        _StepGeom.StepGeom_Array1OfSurfaceBoundary_swiginit(self, _StepGeom.new_StepGeom_Array1OfSurfaceBoundary(*args))

    def Init(self, theValue):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Init(self, theValue)

    def Size(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Size(self)

    def Length(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Length(self)

    def IsEmpty(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_IsEmpty(self)

    def Lower(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Lower(self)

    def Upper(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Upper(self)

    def IsDeletable(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_IsDeletable(self)

    def IsAllocated(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_IsAllocated(self)

    def Assign(self, theOther):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Assign(self, theOther)

    def Move(self, theOther):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Move(self, theOther)

    def Set(self, *args):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Set(self, *args)

    def First(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_First(self)

    def ChangeFirst(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_ChangeFirst(self)

    def Last(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Last(self)

    def ChangeLast(self):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_ChangeLast(self)

    def Value(self, theIndex):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Resize(self, theLower, theUpper, theToCopyData)
    __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_Array1OfTrimmingSelect(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_begin(self)

    def end(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_end(self)

    def cbegin(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_cbegin(self)

    def cend(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_cend(self)

    def __init__(self, *args):
        _StepGeom.StepGeom_Array1OfTrimmingSelect_swiginit(self, _StepGeom.new_StepGeom_Array1OfTrimmingSelect(*args))

    def Init(self, theValue):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Init(self, theValue)

    def Size(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Size(self)

    def Length(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Length(self)

    def IsEmpty(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_IsEmpty(self)

    def Lower(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Lower(self)

    def Upper(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Upper(self)

    def IsDeletable(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_IsDeletable(self)

    def IsAllocated(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_IsAllocated(self)

    def Assign(self, theOther):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Assign(self, theOther)

    def Move(self, theOther):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Move(self, theOther)

    def Set(self, *args):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Set(self, *args)

    def First(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_First(self)

    def ChangeFirst(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_ChangeFirst(self)

    def Last(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Last(self)

    def ChangeLast(self):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_ChangeLast(self)

    def Value(self, theIndex):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Resize(self, theLower, theUpper, theToCopyData)
    __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_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))

    def Init(self, theValue):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Init(self, theValue)

    def Size(self):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Size(self)

    def Length(self):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Length(self)

    def NbRows(self):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_NbRows(self)

    def NbColumns(self):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_NbColumns(self)

    def RowLength(self):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_RowLength(self)

    def ColLength(self):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_ColLength(self)

    def LowerRow(self):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_LowerRow(self)

    def UpperRow(self):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_UpperRow(self)

    def LowerCol(self):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_LowerCol(self)

    def UpperCol(self):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_UpperCol(self)

    def IsDeletable(self):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_IsDeletable(self)

    def Assign(self, theOther):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Assign(self, theOther)

    def Move(self, theOther):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Move(self, theOther)

    def Set(self, *args):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Set(self, *args)

    def Value(self, theRow, theCol):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Value(self, theRow, theCol)

    def ChangeValue(self, theRow, theCol):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_ChangeValue(self, theRow, theCol)

    def __call__(self, *args):
        return _StepGeom.StepGeom_Array2OfCartesianPoint___call__(self, *args)

    def SetValue(self, theRow, theCol, theItem):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_SetValue(self, theRow, theCol, theItem)

    def Resize(self, theRowLower, theRowUpper, theColLower, theColUpper, theToCopyData):
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Resize(self, theRowLower, theRowUpper, theColLower, theColUpper, theToCopyData)
    __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))

    def Init(self, theValue):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Init(self, theValue)

    def Size(self):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Size(self)

    def Length(self):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Length(self)

    def NbRows(self):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_NbRows(self)

    def NbColumns(self):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_NbColumns(self)

    def RowLength(self):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_RowLength(self)

    def ColLength(self):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_ColLength(self)

    def LowerRow(self):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_LowerRow(self)

    def UpperRow(self):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_UpperRow(self)

    def LowerCol(self):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_LowerCol(self)

    def UpperCol(self):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_UpperCol(self)

    def IsDeletable(self):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_IsDeletable(self)

    def Assign(self, theOther):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Assign(self, theOther)

    def Move(self, theOther):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Move(self, theOther)

    def Set(self, *args):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Set(self, *args)

    def Value(self, theRow, theCol):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Value(self, theRow, theCol)

    def ChangeValue(self, theRow, theCol):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_ChangeValue(self, theRow, theCol)

    def __call__(self, *args):
        return _StepGeom.StepGeom_Array2OfSurfacePatch___call__(self, *args)

    def SetValue(self, theRow, theCol, theItem):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_SetValue(self, theRow, theCol, theItem)

    def Resize(self, theRowLower, theRowUpper, theColLower, theColUpper, theToCopyData):
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Resize(self, theRowLower, theRowUpper, theColLower, theColUpper, theToCopyData)
    __swig_destroy__ = _StepGeom.delete_StepGeom_Array2OfSurfacePatch

# Register StepGeom_Array2OfSurfacePatch in _StepGeom:
_StepGeom.StepGeom_Array2OfSurfacePatch_swigregister(StepGeom_Array2OfSurfacePatch)
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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a axis2placement selecttype.

        """
        _StepGeom.StepGeom_Axis2Placement_swiginit(self, _StepGeom.new_StepGeom_Axis2Placement(*args))

    def Axis2Placement2d(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Axis2Placement2d>

        Description
        -----------
        Returns value as a axis2placement2d (null if another type).

        """
        return _StepGeom.StepGeom_Axis2Placement_Axis2Placement2d(self, *args)

    def Axis2Placement3d(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Axis2Placement3d>

        Description
        -----------
        Returns value as a axis2placement3d (null if another type).

        """
        return _StepGeom.StepGeom_Axis2Placement_Axis2Placement3d(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a compositecurvesegment.

        """
        _StepGeom.StepGeom_CompositeCurveSegment_swiginit(self, _StepGeom.new_StepGeom_CompositeCurveSegment(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aTransition: StepGeom_TransitionCode
        aSameSense: bool
        aParentCurve: StepGeom_Curve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CompositeCurveSegment_Init(self, *args)

    def ParentCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Curve>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CompositeCurveSegment_ParentCurve(self, *args)

    def SameSense(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CompositeCurveSegment_SameSense(self, *args)

    def SetParentCurve(self, *args):
        r"""

        Parameters
        ----------
        aParentCurve: StepGeom_Curve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CompositeCurveSegment_SetParentCurve(self, *args)

    def SetSameSense(self, *args):
        r"""

        Parameters
        ----------
        aSameSense: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CompositeCurveSegment_SetSameSense(self, *args)

    def SetTransition(self, *args):
        r"""

        Parameters
        ----------
        aTransition: StepGeom_TransitionCode

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CompositeCurveSegment_SetTransition(self, *args)

    def Transition(self, *args):
        r"""
        Return
        -------
        StepGeom_TransitionCode

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CompositeCurveSegment_Transition(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a curveonsurface selecttype.

        """
        _StepGeom.StepGeom_CurveOnSurface_swiginit(self, _StepGeom.new_StepGeom_CurveOnSurface(*args))

    def CompositeCurveOnSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_CompositeCurveOnSurface>

        Description
        -----------
        Returns value as a compositecurveonsurface (null if another type).

        """
        return _StepGeom.StepGeom_CurveOnSurface_CompositeCurveOnSurface(self, *args)

    def Pcurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Pcurve>

        Description
        -----------
        Returns value as a pcurve (null if another type).

        """
        return _StepGeom.StepGeom_CurveOnSurface_Pcurve(self, *args)

    def SurfaceCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_SurfaceCurve>

        Description
        -----------
        Returns value as a surfacecurve (null if another type).

        """
        return _StepGeom.StepGeom_CurveOnSurface_SurfaceCurve(self, *args)

    __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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_swiginit(self, _StepGeom.new_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx(*args))

    def CoordinateSpaceDimension(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_CoordinateSpaceDimension(self, *args)

    def GeometricRepresentationContext(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_GeometricRepresentationContext>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_GeometricRepresentationContext(self, *args)

    def GlobalUncertaintyAssignedContext(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepRepr_GlobalUncertaintyAssignedContext>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_GlobalUncertaintyAssignedContext(self, *args)

    def GlobalUnitAssignedContext(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepRepr_GlobalUnitAssignedContext>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_GlobalUnitAssignedContext(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aContextIdentifier: TCollection_HAsciiString
        aContextType: TCollection_HAsciiString
        aGeometricRepresentationCtx: StepGeom_GeometricRepresentationContext
        aGlobalUnitAssignedCtx: StepRepr_GlobalUnitAssignedContext
        aGlobalUncertaintyAssignedCtx: StepRepr_GlobalUncertaintyAssignedContext

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        aContextIdentifier: TCollection_HAsciiString
        aContextType: TCollection_HAsciiString
        aCoordinateSpaceDimension: int
        aUnits: StepBasic_HArray1OfNamedUnit
        anUncertainty: StepBasic_HArray1OfUncertaintyMeasureWithUnit

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_Init(self, *args)

    def NbUncertainty(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_NbUncertainty(self, *args)

    def NbUnits(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_NbUnits(self, *args)

    def SetCoordinateSpaceDimension(self, *args):
        r"""

        Parameters
        ----------
        aCoordinateSpaceDimension: int

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_SetCoordinateSpaceDimension(self, *args)

    def SetGeometricRepresentationContext(self, *args):
        r"""

        Parameters
        ----------
        aGeometricRepresentationContext: StepGeom_GeometricRepresentationContext

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_SetGeometricRepresentationContext(self, *args)

    def SetGlobalUncertaintyAssignedContext(self, *args):
        r"""

        Parameters
        ----------
        aGlobalUncertaintyAssignedCtx: StepRepr_GlobalUncertaintyAssignedContext

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_SetGlobalUncertaintyAssignedContext(self, *args)

    def SetGlobalUnitAssignedContext(self, *args):
        r"""

        Parameters
        ----------
        aGlobalUnitAssignedContext: StepRepr_GlobalUnitAssignedContext

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_SetGlobalUnitAssignedContext(self, *args)

    def SetUncertainty(self, *args):
        r"""

        Parameters
        ----------
        aUncertainty: StepBasic_HArray1OfUncertaintyMeasureWithUnit

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_SetUncertainty(self, *args)

    def SetUnits(self, *args):
        r"""

        Parameters
        ----------
        aUnits: StepBasic_HArray1OfNamedUnit

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_SetUnits(self, *args)

    def Uncertainty(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepBasic_HArray1OfUncertaintyMeasureWithUnit>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_Uncertainty(self, *args)

    def UncertaintyValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        opencascade::handle<StepBasic_UncertaintyMeasureWithUnit>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_UncertaintyValue(self, *args)

    def Units(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepBasic_HArray1OfNamedUnit>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_Units(self, *args)

    def UnitsValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        opencascade::handle<StepBasic_NamedUnit>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_UnitsValue(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a geometricrepresentationcontext.

        """
        _StepGeom.StepGeom_GeometricRepresentationContext_swiginit(self, _StepGeom.new_StepGeom_GeometricRepresentationContext(*args))

    def CoordinateSpaceDimension(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContext_CoordinateSpaceDimension(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aContextIdentifier: TCollection_HAsciiString
        aContextType: TCollection_HAsciiString
        aCoordinateSpaceDimension: int

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContext_Init(self, *args)

    def SetCoordinateSpaceDimension(self, *args):
        r"""

        Parameters
        ----------
        aCoordinateSpaceDimension: int

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContext_SetCoordinateSpaceDimension(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a geometricrepresentationcontextandglobalunitassignedcontext.

        """
        _StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_swiginit(self, _StepGeom.new_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext(*args))

    def CoordinateSpaceDimension(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_CoordinateSpaceDimension(self, *args)

    def GeometricRepresentationContext(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_GeometricRepresentationContext>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_GeometricRepresentationContext(self, *args)

    def GlobalUnitAssignedContext(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepRepr_GlobalUnitAssignedContext>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_GlobalUnitAssignedContext(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aContextIdentifier: TCollection_HAsciiString
        aContextType: TCollection_HAsciiString
        aGeometricRepresentationContext: StepGeom_GeometricRepresentationContext
        aGlobalUnitAssignedContext: StepRepr_GlobalUnitAssignedContext

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        aContextIdentifier: TCollection_HAsciiString
        aContextType: TCollection_HAsciiString
        aCoordinateSpaceDimension: int
        aUnits: StepBasic_HArray1OfNamedUnit

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_Init(self, *args)

    def NbUnits(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_NbUnits(self, *args)

    def SetCoordinateSpaceDimension(self, *args):
        r"""

        Parameters
        ----------
        aCoordinateSpaceDimension: int

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_SetCoordinateSpaceDimension(self, *args)

    def SetGeometricRepresentationContext(self, *args):
        r"""

        Parameters
        ----------
        aGeometricRepresentationContext: StepGeom_GeometricRepresentationContext

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_SetGeometricRepresentationContext(self, *args)

    def SetGlobalUnitAssignedContext(self, *args):
        r"""

        Parameters
        ----------
        aGlobalUnitAssignedContext: StepRepr_GlobalUnitAssignedContext

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_SetGlobalUnitAssignedContext(self, *args)

    def SetUnits(self, *args):
        r"""

        Parameters
        ----------
        aUnits: StepBasic_HArray1OfNamedUnit

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_SetUnits(self, *args)

    def Units(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepBasic_HArray1OfNamedUnit>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_Units(self, *args)

    def UnitsValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        opencascade::handle<StepBasic_NamedUnit>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_UnitsValue(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        """
        _StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_swiginit(self, _StepGeom.new_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext(*args))

    def CoordinateSpaceDimension(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_CoordinateSpaceDimension(self, *args)

    def GeometricRepresentationContext(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_GeometricRepresentationContext>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_GeometricRepresentationContext(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aContextIdentifier: TCollection_HAsciiString
        aContextType: TCollection_HAsciiString
        aGeometricRepresentationContext: StepGeom_GeometricRepresentationContext
        aParametricRepresentationContext: StepRepr_ParametricRepresentationContext

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        aContextIdentifier: TCollection_HAsciiString
        aContextType: TCollection_HAsciiString
        aCoordinateSpaceDimension: int

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_Init(self, *args)

    def ParametricRepresentationContext(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepRepr_ParametricRepresentationContext>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_ParametricRepresentationContext(self, *args)

    def SetCoordinateSpaceDimension(self, *args):
        r"""

        Parameters
        ----------
        aCoordinateSpaceDimension: int

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_SetCoordinateSpaceDimension(self, *args)

    def SetGeometricRepresentationContext(self, *args):
        r"""

        Parameters
        ----------
        aGeometricRepresentationContext: StepGeom_GeometricRepresentationContext

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_SetGeometricRepresentationContext(self, *args)

    def SetParametricRepresentationContext(self, *args):
        r"""

        Parameters
        ----------
        aParametricRepresentationContext: StepRepr_ParametricRepresentationContext

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_SetParametricRepresentationContext(self, *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"""
        Return
        -------
        None

        Description
        -----------
        Returns a geometricrepresentationitem.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a pcurveorsurface selecttype.

        """
        _StepGeom.StepGeom_PcurveOrSurface_swiginit(self, _StepGeom.new_StepGeom_PcurveOrSurface(*args))

    def Pcurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Pcurve>

        Description
        -----------
        Returns value as a pcurve (null if another type).

        """
        return _StepGeom.StepGeom_PcurveOrSurface_Pcurve(self, *args)

    def Surface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Surface>

        Description
        -----------
        Returns value as a surface (null if another type).

        """
        return _StepGeom.StepGeom_PcurveOrSurface_Surface(self, *args)

    __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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        """
        _StepGeom.StepGeom_SurfaceBoundary_swiginit(self, _StepGeom.new_StepGeom_SurfaceBoundary(*args))

    def BoundaryCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_BoundaryCurve>

        Description
        -----------
        Returns value as boundarycurve (or null if another type).

        """
        return _StepGeom.StepGeom_SurfaceBoundary_BoundaryCurve(self, *args)

    def DegeneratePcurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_DegeneratePcurve>

        Description
        -----------
        Returns value as degeneratepcurve (or null if another type).

        """
        return _StepGeom.StepGeom_SurfaceBoundary_DegeneratePcurve(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a surfacepatch.

        """
        _StepGeom.StepGeom_SurfacePatch_swiginit(self, _StepGeom.new_StepGeom_SurfacePatch(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aParentSurface: StepGeom_BoundedSurface
        aUTransition: StepGeom_TransitionCode
        aVTransition: StepGeom_TransitionCode
        aUSense: bool
        aVSense: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfacePatch_Init(self, *args)

    def ParentSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_BoundedSurface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfacePatch_ParentSurface(self, *args)

    def SetParentSurface(self, *args):
        r"""

        Parameters
        ----------
        aParentSurface: StepGeom_BoundedSurface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfacePatch_SetParentSurface(self, *args)

    def SetUSense(self, *args):
        r"""

        Parameters
        ----------
        aUSense: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfacePatch_SetUSense(self, *args)

    def SetUTransition(self, *args):
        r"""

        Parameters
        ----------
        aUTransition: StepGeom_TransitionCode

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfacePatch_SetUTransition(self, *args)

    def SetVSense(self, *args):
        r"""

        Parameters
        ----------
        aVSense: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfacePatch_SetVSense(self, *args)

    def SetVTransition(self, *args):
        r"""

        Parameters
        ----------
        aVTransition: StepGeom_TransitionCode

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfacePatch_SetVTransition(self, *args)

    def USense(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfacePatch_USense(self, *args)

    def UTransition(self, *args):
        r"""
        Return
        -------
        StepGeom_TransitionCode

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfacePatch_UTransition(self, *args)

    def VSense(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfacePatch_VSense(self, *args)

    def VTransition(self, *args):
        r"""
        Return
        -------
        StepGeom_TransitionCode

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfacePatch_VTransition(self, *args)


    @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"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a trimmingselect selecttype.

        """
        _StepGeom.StepGeom_TrimmingSelect_swiginit(self, _StepGeom.new_StepGeom_TrimmingSelect(*args))

    def CartesianPoint(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_CartesianPoint>

        Description
        -----------
        Returns value as a cartesianpoint (null if another type).

        """
        return _StepGeom.StepGeom_TrimmingSelect_CartesianPoint(self, *args)

    def ParameterValue(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns value as a real (0.0 if not a real).

        """
        return _StepGeom.StepGeom_TrimmingSelect_ParameterValue(self, *args)

    def SetParameterValue(self, *args):
        r"""

        Parameters
        ----------
        aParameterValue: float

        Return
        -------
        None

        Description
        -----------
        Sets the parametervalue as real.

        """
        return _StepGeom.StepGeom_TrimmingSelect_SetParameterValue(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a vectorordirection selecttype.

        """
        _StepGeom.StepGeom_VectorOrDirection_swiginit(self, _StepGeom.new_StepGeom_VectorOrDirection(*args))

    def Direction(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Direction>

        Description
        -----------
        Returns value as a direction (null if another type).

        """
        return _StepGeom.StepGeom_VectorOrDirection_Direction(self, *args)

    def Vector(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Vector>

        Description
        -----------
        Returns value as a vector (null if another type).

        """
        return _StepGeom.StepGeom_VectorOrDirection_Vector(self, *args)

    __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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a cartesiantransformationoperator.

        """
        _StepGeom.StepGeom_CartesianTransformationOperator_swiginit(self, _StepGeom.new_StepGeom_CartesianTransformationOperator(*args))

    def Axis1(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Direction>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_Axis1(self, *args)

    def Axis2(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Direction>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_Axis2(self, *args)

    def HasAxis1(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_HasAxis1(self, *args)

    def HasAxis2(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_HasAxis2(self, *args)

    def HasScale(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_HasScale(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        hasAaxis1: bool
        aAxis1: StepGeom_Direction
        hasAaxis2: bool
        aAxis2: StepGeom_Direction
        aLocalOrigin: StepGeom_CartesianPoint
        hasAscale: bool
        aScale: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_Init(self, *args)

    def LocalOrigin(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_CartesianPoint>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_LocalOrigin(self, *args)

    def Scale(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_Scale(self, *args)

    def SetAxis1(self, *args):
        r"""

        Parameters
        ----------
        aAxis1: StepGeom_Direction

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_SetAxis1(self, *args)

    def SetAxis2(self, *args):
        r"""

        Parameters
        ----------
        aAxis2: StepGeom_Direction

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_SetAxis2(self, *args)

    def SetLocalOrigin(self, *args):
        r"""

        Parameters
        ----------
        aLocalOrigin: StepGeom_CartesianPoint

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_SetLocalOrigin(self, *args)

    def SetScale(self, *args):
        r"""

        Parameters
        ----------
        aScale: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_SetScale(self, *args)

    def UnSetAxis1(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_UnSetAxis1(self, *args)

    def UnSetAxis2(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_UnSetAxis2(self, *args)

    def UnSetScale(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator_UnSetScale(self, *args)


    @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"""
        Return
        -------
        None

        Description
        -----------
        Returns a curve.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a direction.

        """
        _StepGeom.StepGeom_Direction_swiginit(self, _StepGeom.new_StepGeom_Direction(*args))

    def DirectionRatios(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Direction_DirectionRatios(self, *args)

    def DirectionRatiosValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Direction_DirectionRatiosValue(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDirectionRatios: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Direction_Init(self, *args)

    def NbDirectionRatios(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Direction_NbDirectionRatios(self, *args)

    def SetDirectionRatios(self, *args):
        r"""

        Parameters
        ----------
        aDirectionRatios: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Direction_SetDirectionRatios(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a placement.

        """
        _StepGeom.StepGeom_Placement_swiginit(self, _StepGeom.new_StepGeom_Placement(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aLocation: StepGeom_CartesianPoint

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Placement_Init(self, *args)

    def Location(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_CartesianPoint>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Placement_Location(self, *args)

    def SetLocation(self, *args):
        r"""

        Parameters
        ----------
        aLocation: StepGeom_CartesianPoint

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Placement_SetLocation(self, *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"""
        Return
        -------
        None

        Description
        -----------
        Returns a point.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a reparametrisedcompositecurvesegment.

        """
        _StepGeom.StepGeom_ReparametrisedCompositeCurveSegment_swiginit(self, _StepGeom.new_StepGeom_ReparametrisedCompositeCurveSegment(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aTransition: StepGeom_TransitionCode
        aSameSense: bool
        aParentCurve: StepGeom_Curve
        aParamLength: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ReparametrisedCompositeCurveSegment_Init(self, *args)

    def ParamLength(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ReparametrisedCompositeCurveSegment_ParamLength(self, *args)

    def SetParamLength(self, *args):
        r"""

        Parameters
        ----------
        aParamLength: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ReparametrisedCompositeCurveSegment_SetParamLength(self, *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_SuParameters(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"""
        Return
        -------
        None

        Description
        -----------
        Default constructor.

        """
        _StepGeom.StepGeom_SuParameters_swiginit(self, _StepGeom.new_StepGeom_SuParameters(*args))

    def A(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns field a.

        """
        return _StepGeom.StepGeom_SuParameters_A(self, *args)

    def Alpha(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns field alpha.

        """
        return _StepGeom.StepGeom_SuParameters_Alpha(self, *args)

    def B(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns field b.

        """
        return _StepGeom.StepGeom_SuParameters_B(self, *args)

    def Beta(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns field beta.

        """
        return _StepGeom.StepGeom_SuParameters_Beta(self, *args)

    def C(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns field c.

        """
        return _StepGeom.StepGeom_SuParameters_C(self, *args)

    def Gamma(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns field gamma.

        """
        return _StepGeom.StepGeom_SuParameters_Gamma(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        theRepresentationItem_Name: TCollection_HAsciiString
        theA: float
        theAlpha: float
        theB: float
        theBeta: float
        theC: float
        theGamma: float

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepGeom.StepGeom_SuParameters_Init(self, *args)

    def SetA(self, *args):
        r"""

        Parameters
        ----------
        theA: float

        Return
        -------
        None

        Description
        -----------
        Sets field a.

        """
        return _StepGeom.StepGeom_SuParameters_SetA(self, *args)

    def SetAlpha(self, *args):
        r"""

        Parameters
        ----------
        theAlpha: float

        Return
        -------
        None

        Description
        -----------
        Sets field alpha.

        """
        return _StepGeom.StepGeom_SuParameters_SetAlpha(self, *args)

    def SetB(self, *args):
        r"""

        Parameters
        ----------
        theB: float

        Return
        -------
        None

        Description
        -----------
        Sets field b.

        """
        return _StepGeom.StepGeom_SuParameters_SetB(self, *args)

    def SetBeta(self, *args):
        r"""

        Parameters
        ----------
        theBeta: float

        Return
        -------
        None

        Description
        -----------
        Sets field beta.

        """
        return _StepGeom.StepGeom_SuParameters_SetBeta(self, *args)

    def SetC(self, *args):
        r"""

        Parameters
        ----------
        theC: float

        Return
        -------
        None

        Description
        -----------
        Sets field c.

        """
        return _StepGeom.StepGeom_SuParameters_SetC(self, *args)

    def SetGamma(self, *args):
        r"""

        Parameters
        ----------
        theGamma: float

        Return
        -------
        None

        Description
        -----------
        Sets field gamma.

        """
        return _StepGeom.StepGeom_SuParameters_SetGamma(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_SuParameters

# Register StepGeom_SuParameters in _StepGeom:
_StepGeom.StepGeom_SuParameters_swigregister(StepGeom_SuParameters)
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"""
        Return
        -------
        None

        Description
        -----------
        Returns a surface.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a vector.

        """
        _StepGeom.StepGeom_Vector_swiginit(self, _StepGeom.new_StepGeom_Vector(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aOrientation: StepGeom_Direction
        aMagnitude: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Vector_Init(self, *args)

    def Magnitude(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Vector_Magnitude(self, *args)

    def Orientation(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Direction>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Vector_Orientation(self, *args)

    def SetMagnitude(self, *args):
        r"""

        Parameters
        ----------
        aMagnitude: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Vector_SetMagnitude(self, *args)

    def SetOrientation(self, *args):
        r"""

        Parameters
        ----------
        aOrientation: StepGeom_Direction

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Vector_SetOrientation(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a axis1placement.

        """
        _StepGeom.StepGeom_Axis1Placement_swiginit(self, _StepGeom.new_StepGeom_Axis1Placement(*args))

    def Axis(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Direction>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis1Placement_Axis(self, *args)

    def HasAxis(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis1Placement_HasAxis(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aLocation: StepGeom_CartesianPoint
        hasAaxis: bool
        aAxis: StepGeom_Direction

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis1Placement_Init(self, *args)

    def SetAxis(self, *args):
        r"""

        Parameters
        ----------
        aAxis: StepGeom_Direction

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis1Placement_SetAxis(self, *args)

    def UnSetAxis(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis1Placement_UnSetAxis(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a axis2placement2d.

        """
        _StepGeom.StepGeom_Axis2Placement2d_swiginit(self, _StepGeom.new_StepGeom_Axis2Placement2d(*args))

    def HasRefDirection(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis2Placement2d_HasRefDirection(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aLocation: StepGeom_CartesianPoint
        hasArefDirection: bool
        aRefDirection: StepGeom_Direction

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis2Placement2d_Init(self, *args)

    def RefDirection(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Direction>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis2Placement2d_RefDirection(self, *args)

    def SetRefDirection(self, *args):
        r"""

        Parameters
        ----------
        aRefDirection: StepGeom_Direction

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis2Placement2d_SetRefDirection(self, *args)

    def UnSetRefDirection(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis2Placement2d_UnSetRefDirection(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a axis2placement3d.

        """
        _StepGeom.StepGeom_Axis2Placement3d_swiginit(self, _StepGeom.new_StepGeom_Axis2Placement3d(*args))

    def Axis(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Direction>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis2Placement3d_Axis(self, *args)

    def HasAxis(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis2Placement3d_HasAxis(self, *args)

    def HasRefDirection(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis2Placement3d_HasRefDirection(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aLocation: StepGeom_CartesianPoint
        hasAaxis: bool
        aAxis: StepGeom_Direction
        hasArefDirection: bool
        aRefDirection: StepGeom_Direction

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis2Placement3d_Init(self, *args)

    def RefDirection(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Direction>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis2Placement3d_RefDirection(self, *args)

    def SetAxis(self, *args):
        r"""

        Parameters
        ----------
        aAxis: StepGeom_Direction

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis2Placement3d_SetAxis(self, *args)

    def SetRefDirection(self, *args):
        r"""

        Parameters
        ----------
        aRefDirection: StepGeom_Direction

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis2Placement3d_SetRefDirection(self, *args)

    def UnSetAxis(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis2Placement3d_UnSetAxis(self, *args)

    def UnSetRefDirection(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Axis2Placement3d_UnSetRefDirection(self, *args)


    @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"""
        Return
        -------
        None

        Description
        -----------
        Returns a boundedcurve.

        """
        _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"""
        Return
        -------
        None

        Description
        -----------
        Returns a boundedsurface.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a cartesianpoint.

        """
        _StepGeom.StepGeom_CartesianPoint_swiginit(self, _StepGeom.new_StepGeom_CartesianPoint(*args))

    def Coordinates(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianPoint_Coordinates(self, *args)

    def CoordinatesValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianPoint_CoordinatesValue(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aCoordinates: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianPoint_Init(self, *args)

    def Init2D(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        X: float
        Y: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianPoint_Init2D(self, *args)

    def Init3D(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        X: float
        Y: float
        Z: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianPoint_Init3D(self, *args)

    def NbCoordinates(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianPoint_NbCoordinates(self, *args)

    def SetCoordinates(self, *args):
        r"""

        Parameters
        ----------
        aCoordinates: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianPoint_SetCoordinates(self, *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"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a cartesiantransformationoperator3d.

        """
        _StepGeom.StepGeom_CartesianTransformationOperator3d_swiginit(self, _StepGeom.new_StepGeom_CartesianTransformationOperator3d(*args))

    def Axis3(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Direction>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator3d_Axis3(self, *args)

    def HasAxis3(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator3d_HasAxis3(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        hasAaxis1: bool
        aAxis1: StepGeom_Direction
        hasAaxis2: bool
        aAxis2: StepGeom_Direction
        aLocalOrigin: StepGeom_CartesianPoint
        hasAscale: bool
        aScale: float
        hasAaxis3: bool
        aAxis3: StepGeom_Direction

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator3d_Init(self, *args)

    def SetAxis3(self, *args):
        r"""

        Parameters
        ----------
        aAxis3: StepGeom_Direction

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator3d_SetAxis3(self, *args)

    def UnSetAxis3(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CartesianTransformationOperator3d_UnSetAxis3(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a conic.

        """
        _StepGeom.StepGeom_Conic_swiginit(self, _StepGeom.new_StepGeom_Conic(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Conic_Init(self, *args)

    def Position(self, *args):
        r"""
        Return
        -------
        StepGeom_Axis2Placement

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Conic_Position(self, *args)

    def SetPosition(self, *args):
        r"""

        Parameters
        ----------
        aPosition: StepGeom_Axis2Placement

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Conic_SetPosition(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a curvereplica.

        """
        _StepGeom.StepGeom_CurveReplica_swiginit(self, _StepGeom.new_StepGeom_CurveReplica(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aParentCurve: StepGeom_Curve
        aTransformation: StepGeom_CartesianTransformationOperator

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CurveReplica_Init(self, *args)

    def ParentCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Curve>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CurveReplica_ParentCurve(self, *args)

    def SetParentCurve(self, *args):
        r"""

        Parameters
        ----------
        aParentCurve: StepGeom_Curve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CurveReplica_SetParentCurve(self, *args)

    def SetTransformation(self, *args):
        r"""

        Parameters
        ----------
        aTransformation: StepGeom_CartesianTransformationOperator

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CurveReplica_SetTransformation(self, *args)

    def Transformation(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_CartesianTransformationOperator>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CurveReplica_Transformation(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a degeneratepcurve.

        """
        _StepGeom.StepGeom_DegeneratePcurve_swiginit(self, _StepGeom.new_StepGeom_DegeneratePcurve(*args))

    def BasisSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Surface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_DegeneratePcurve_BasisSurface(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisSurface: StepGeom_Surface
        aReferenceToCurve: StepRepr_DefinitionalRepresentation

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_DegeneratePcurve_Init(self, *args)

    def ReferenceToCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepRepr_DefinitionalRepresentation>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_DegeneratePcurve_ReferenceToCurve(self, *args)

    def SetBasisSurface(self, *args):
        r"""

        Parameters
        ----------
        aBasisSurface: StepGeom_Surface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_DegeneratePcurve_SetBasisSurface(self, *args)

    def SetReferenceToCurve(self, *args):
        r"""

        Parameters
        ----------
        aReferenceToCurve: StepRepr_DefinitionalRepresentation

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_DegeneratePcurve_SetReferenceToCurve(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a elementarysurface.

        """
        _StepGeom.StepGeom_ElementarySurface_swiginit(self, _StepGeom.new_StepGeom_ElementarySurface(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement3d

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ElementarySurface_Init(self, *args)

    def Position(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Axis2Placement3d>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ElementarySurface_Position(self, *args)

    def SetPosition(self, *args):
        r"""

        Parameters
        ----------
        aPosition: StepGeom_Axis2Placement3d

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ElementarySurface_SetPosition(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a line.

        """
        _StepGeom.StepGeom_Line_swiginit(self, _StepGeom.new_StepGeom_Line(*args))

    def Dir(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Vector>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Line_Dir(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPnt: StepGeom_CartesianPoint
        aDir: StepGeom_Vector

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Line_Init(self, *args)

    def Pnt(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_CartesianPoint>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Line_Pnt(self, *args)

    def SetDir(self, *args):
        r"""

        Parameters
        ----------
        aDir: StepGeom_Vector

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Line_SetDir(self, *args)

    def SetPnt(self, *args):
        r"""

        Parameters
        ----------
        aPnt: StepGeom_CartesianPoint

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Line_SetPnt(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a offsetcurve3d.

        """
        _StepGeom.StepGeom_OffsetCurve3d_swiginit(self, _StepGeom.new_StepGeom_OffsetCurve3d(*args))

    def BasisCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Curve>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetCurve3d_BasisCurve(self, *args)

    def Distance(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetCurve3d_Distance(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisCurve: StepGeom_Curve
        aDistance: float
        aSelfIntersect: StepData_Logical
        aRefDirection: StepGeom_Direction

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetCurve3d_Init(self, *args)

    def RefDirection(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Direction>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetCurve3d_RefDirection(self, *args)

    def SelfIntersect(self, *args):
        r"""
        Return
        -------
        StepData_Logical

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetCurve3d_SelfIntersect(self, *args)

    def SetBasisCurve(self, *args):
        r"""

        Parameters
        ----------
        aBasisCurve: StepGeom_Curve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetCurve3d_SetBasisCurve(self, *args)

    def SetDistance(self, *args):
        r"""

        Parameters
        ----------
        aDistance: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetCurve3d_SetDistance(self, *args)

    def SetRefDirection(self, *args):
        r"""

        Parameters
        ----------
        aRefDirection: StepGeom_Direction

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetCurve3d_SetRefDirection(self, *args)

    def SetSelfIntersect(self, *args):
        r"""

        Parameters
        ----------
        aSelfIntersect: StepData_Logical

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetCurve3d_SetSelfIntersect(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a offsetsurface.

        """
        _StepGeom.StepGeom_OffsetSurface_swiginit(self, _StepGeom.new_StepGeom_OffsetSurface(*args))

    def BasisSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Surface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetSurface_BasisSurface(self, *args)

    def Distance(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetSurface_Distance(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisSurface: StepGeom_Surface
        aDistance: float
        aSelfIntersect: StepData_Logical

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetSurface_Init(self, *args)

    def SelfIntersect(self, *args):
        r"""
        Return
        -------
        StepData_Logical

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetSurface_SelfIntersect(self, *args)

    def SetBasisSurface(self, *args):
        r"""

        Parameters
        ----------
        aBasisSurface: StepGeom_Surface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetSurface_SetBasisSurface(self, *args)

    def SetDistance(self, *args):
        r"""

        Parameters
        ----------
        aDistance: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetSurface_SetDistance(self, *args)

    def SetSelfIntersect(self, *args):
        r"""

        Parameters
        ----------
        aSelfIntersect: StepData_Logical

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_OffsetSurface_SetSelfIntersect(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        """
        _StepGeom.StepGeom_OrientedSurface_swiginit(self, _StepGeom.new_StepGeom_OrientedSurface(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aRepresentationItem_Name: TCollection_HAsciiString
        aOrientation: bool

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepGeom.StepGeom_OrientedSurface_Init(self, *args)

    def Orientation(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns field orientation.

        """
        return _StepGeom.StepGeom_OrientedSurface_Orientation(self, *args)

    def SetOrientation(self, *args):
        r"""

        Parameters
        ----------
        Orientation: bool

        Return
        -------
        None

        Description
        -----------
        Set field orientation.

        """
        return _StepGeom.StepGeom_OrientedSurface_SetOrientation(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a pcurve.

        """
        _StepGeom.StepGeom_Pcurve_swiginit(self, _StepGeom.new_StepGeom_Pcurve(*args))

    def BasisSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Surface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Pcurve_BasisSurface(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisSurface: StepGeom_Surface
        aReferenceToCurve: StepRepr_DefinitionalRepresentation

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Pcurve_Init(self, *args)

    def ReferenceToCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepRepr_DefinitionalRepresentation>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Pcurve_ReferenceToCurve(self, *args)

    def SetBasisSurface(self, *args):
        r"""

        Parameters
        ----------
        aBasisSurface: StepGeom_Surface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Pcurve_SetBasisSurface(self, *args)

    def SetReferenceToCurve(self, *args):
        r"""

        Parameters
        ----------
        aReferenceToCurve: StepRepr_DefinitionalRepresentation

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Pcurve_SetReferenceToCurve(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a pointoncurve.

        """
        _StepGeom.StepGeom_PointOnCurve_swiginit(self, _StepGeom.new_StepGeom_PointOnCurve(*args))

    def BasisCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Curve>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointOnCurve_BasisCurve(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisCurve: StepGeom_Curve
        aPointParameter: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointOnCurve_Init(self, *args)

    def PointParameter(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointOnCurve_PointParameter(self, *args)

    def SetBasisCurve(self, *args):
        r"""

        Parameters
        ----------
        aBasisCurve: StepGeom_Curve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointOnCurve_SetBasisCurve(self, *args)

    def SetPointParameter(self, *args):
        r"""

        Parameters
        ----------
        aPointParameter: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointOnCurve_SetPointParameter(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a pointonsurface.

        """
        _StepGeom.StepGeom_PointOnSurface_swiginit(self, _StepGeom.new_StepGeom_PointOnSurface(*args))

    def BasisSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Surface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointOnSurface_BasisSurface(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisSurface: StepGeom_Surface
        aPointParameterU: float
        aPointParameterV: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointOnSurface_Init(self, *args)

    def PointParameterU(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointOnSurface_PointParameterU(self, *args)

    def PointParameterV(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointOnSurface_PointParameterV(self, *args)

    def SetBasisSurface(self, *args):
        r"""

        Parameters
        ----------
        aBasisSurface: StepGeom_Surface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointOnSurface_SetBasisSurface(self, *args)

    def SetPointParameterU(self, *args):
        r"""

        Parameters
        ----------
        aPointParameterU: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointOnSurface_SetPointParameterU(self, *args)

    def SetPointParameterV(self, *args):
        r"""

        Parameters
        ----------
        aPointParameterV: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointOnSurface_SetPointParameterV(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a pointreplica.

        """
        _StepGeom.StepGeom_PointReplica_swiginit(self, _StepGeom.new_StepGeom_PointReplica(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aParentPt: StepGeom_Point
        aTransformation: StepGeom_CartesianTransformationOperator

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointReplica_Init(self, *args)

    def ParentPt(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Point>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointReplica_ParentPt(self, *args)

    def SetParentPt(self, *args):
        r"""

        Parameters
        ----------
        aParentPt: StepGeom_Point

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointReplica_SetParentPt(self, *args)

    def SetTransformation(self, *args):
        r"""

        Parameters
        ----------
        aTransformation: StepGeom_CartesianTransformationOperator

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointReplica_SetTransformation(self, *args)

    def Transformation(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_CartesianTransformationOperator>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_PointReplica_Transformation(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a surfacecurve.

        """
        _StepGeom.StepGeom_SurfaceCurve_swiginit(self, _StepGeom.new_StepGeom_SurfaceCurve(*args))

    def AssociatedGeometry(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_HArray1OfPcurveOrSurface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceCurve_AssociatedGeometry(self, *args)

    def AssociatedGeometryValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        StepGeom_PcurveOrSurface

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceCurve_AssociatedGeometryValue(self, *args)

    def Curve3d(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Curve>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceCurve_Curve3d(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aCurve3d: StepGeom_Curve
        aAssociatedGeometry: StepGeom_HArray1OfPcurveOrSurface
        aMasterRepresentation: StepGeom_PreferredSurfaceCurveRepresentation

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceCurve_Init(self, *args)

    def MasterRepresentation(self, *args):
        r"""
        Return
        -------
        StepGeom_PreferredSurfaceCurveRepresentation

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceCurve_MasterRepresentation(self, *args)

    def NbAssociatedGeometry(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceCurve_NbAssociatedGeometry(self, *args)

    def SetAssociatedGeometry(self, *args):
        r"""

        Parameters
        ----------
        aAssociatedGeometry: StepGeom_HArray1OfPcurveOrSurface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceCurve_SetAssociatedGeometry(self, *args)

    def SetCurve3d(self, *args):
        r"""

        Parameters
        ----------
        aCurve3d: StepGeom_Curve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceCurve_SetCurve3d(self, *args)

    def SetMasterRepresentation(self, *args):
        r"""

        Parameters
        ----------
        aMasterRepresentation: StepGeom_PreferredSurfaceCurveRepresentation

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceCurve_SetMasterRepresentation(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a surfacereplica.

        """
        _StepGeom.StepGeom_SurfaceReplica_swiginit(self, _StepGeom.new_StepGeom_SurfaceReplica(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aParentSurface: StepGeom_Surface
        aTransformation: StepGeom_CartesianTransformationOperator3d

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceReplica_Init(self, *args)

    def ParentSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Surface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceReplica_ParentSurface(self, *args)

    def SetParentSurface(self, *args):
        r"""

        Parameters
        ----------
        aParentSurface: StepGeom_Surface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceReplica_SetParentSurface(self, *args)

    def SetTransformation(self, *args):
        r"""

        Parameters
        ----------
        aTransformation: StepGeom_CartesianTransformationOperator3d

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceReplica_SetTransformation(self, *args)

    def Transformation(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_CartesianTransformationOperator3d>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceReplica_Transformation(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a sweptsurface.

        """
        _StepGeom.StepGeom_SweptSurface_swiginit(self, _StepGeom.new_StepGeom_SweptSurface(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSweptCurve: StepGeom_Curve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SweptSurface_Init(self, *args)

    def SetSweptCurve(self, *args):
        r"""

        Parameters
        ----------
        aSweptCurve: StepGeom_Curve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SweptSurface_SetSweptCurve(self, *args)

    def SweptCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Curve>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SweptSurface_SweptCurve(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a bsplinecurve.

        """
        _StepGeom.StepGeom_BSplineCurve_swiginit(self, _StepGeom.new_StepGeom_BSplineCurve(*args))

    def ClosedCurve(self, *args):
        r"""
        Return
        -------
        StepData_Logical

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurve_ClosedCurve(self, *args)

    def ControlPointsList(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_HArray1OfCartesianPoint>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurve_ControlPointsList(self, *args)

    def ControlPointsListValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        opencascade::handle<StepGeom_CartesianPoint>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurve_ControlPointsListValue(self, *args)

    def CurveForm(self, *args):
        r"""
        Return
        -------
        StepGeom_BSplineCurveForm

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurve_CurveForm(self, *args)

    def Degree(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurve_Degree(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurve_Init(self, *args)

    def NbControlPointsList(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurve_NbControlPointsList(self, *args)

    def SelfIntersect(self, *args):
        r"""
        Return
        -------
        StepData_Logical

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurve_SelfIntersect(self, *args)

    def SetClosedCurve(self, *args):
        r"""

        Parameters
        ----------
        aClosedCurve: StepData_Logical

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurve_SetClosedCurve(self, *args)

    def SetControlPointsList(self, *args):
        r"""

        Parameters
        ----------
        aControlPointsList: StepGeom_HArray1OfCartesianPoint

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurve_SetControlPointsList(self, *args)

    def SetCurveForm(self, *args):
        r"""

        Parameters
        ----------
        aCurveForm: StepGeom_BSplineCurveForm

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurve_SetCurveForm(self, *args)

    def SetDegree(self, *args):
        r"""

        Parameters
        ----------
        aDegree: int

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurve_SetDegree(self, *args)

    def SetSelfIntersect(self, *args):
        r"""

        Parameters
        ----------
        aSelfIntersect: StepData_Logical

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurve_SetSelfIntersect(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a bsplinesurface.

        """
        _StepGeom.StepGeom_BSplineSurface_swiginit(self, _StepGeom.new_StepGeom_BSplineSurface(*args))

    def ControlPointsList(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_HArray2OfCartesianPoint>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_ControlPointsList(self, *args)

    def ControlPointsListValue(self, *args):
        r"""

        Parameters
        ----------
        num1: int
        num2: int

        Return
        -------
        opencascade::handle<StepGeom_CartesianPoint>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_ControlPointsListValue(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aUDegree: int
        aVDegree: int
        aControlPointsList: StepGeom_HArray2OfCartesianPoint
        aSurfaceForm: StepGeom_BSplineSurfaceForm
        aUClosed: StepData_Logical
        aVClosed: StepData_Logical
        aSelfIntersect: StepData_Logical

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_Init(self, *args)

    def NbControlPointsListI(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_NbControlPointsListI(self, *args)

    def NbControlPointsListJ(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_NbControlPointsListJ(self, *args)

    def SelfIntersect(self, *args):
        r"""
        Return
        -------
        StepData_Logical

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_SelfIntersect(self, *args)

    def SetControlPointsList(self, *args):
        r"""

        Parameters
        ----------
        aControlPointsList: StepGeom_HArray2OfCartesianPoint

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_SetControlPointsList(self, *args)

    def SetSelfIntersect(self, *args):
        r"""

        Parameters
        ----------
        aSelfIntersect: StepData_Logical

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_SetSelfIntersect(self, *args)

    def SetSurfaceForm(self, *args):
        r"""

        Parameters
        ----------
        aSurfaceForm: StepGeom_BSplineSurfaceForm

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_SetSurfaceForm(self, *args)

    def SetUClosed(self, *args):
        r"""

        Parameters
        ----------
        aUClosed: StepData_Logical

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_SetUClosed(self, *args)

    def SetUDegree(self, *args):
        r"""

        Parameters
        ----------
        aUDegree: int

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_SetUDegree(self, *args)

    def SetVClosed(self, *args):
        r"""

        Parameters
        ----------
        aVClosed: StepData_Logical

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_SetVClosed(self, *args)

    def SetVDegree(self, *args):
        r"""

        Parameters
        ----------
        aVDegree: int

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_SetVDegree(self, *args)

    def SurfaceForm(self, *args):
        r"""
        Return
        -------
        StepGeom_BSplineSurfaceForm

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_SurfaceForm(self, *args)

    def UClosed(self, *args):
        r"""
        Return
        -------
        StepData_Logical

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_UClosed(self, *args)

    def UDegree(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_UDegree(self, *args)

    def VClosed(self, *args):
        r"""
        Return
        -------
        StepData_Logical

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_VClosed(self, *args)

    def VDegree(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurface_VDegree(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a circle.

        """
        _StepGeom.StepGeom_Circle_swiginit(self, _StepGeom.new_StepGeom_Circle(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement
        aRadius: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Circle_Init(self, *args)

    def Radius(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Circle_Radius(self, *args)

    def SetRadius(self, *args):
        r"""

        Parameters
        ----------
        aRadius: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Circle_SetRadius(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a compositecurve.

        """
        _StepGeom.StepGeom_CompositeCurve_swiginit(self, _StepGeom.new_StepGeom_CompositeCurve(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSegments: StepGeom_HArray1OfCompositeCurveSegment
        aSelfIntersect: StepData_Logical

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CompositeCurve_Init(self, *args)

    def NbSegments(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CompositeCurve_NbSegments(self, *args)

    def Segments(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_HArray1OfCompositeCurveSegment>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CompositeCurve_Segments(self, *args)

    def SegmentsValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        opencascade::handle<StepGeom_CompositeCurveSegment>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CompositeCurve_SegmentsValue(self, *args)

    def SelfIntersect(self, *args):
        r"""
        Return
        -------
        StepData_Logical

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CompositeCurve_SelfIntersect(self, *args)

    def SetSegments(self, *args):
        r"""

        Parameters
        ----------
        aSegments: StepGeom_HArray1OfCompositeCurveSegment

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CompositeCurve_SetSegments(self, *args)

    def SetSelfIntersect(self, *args):
        r"""

        Parameters
        ----------
        aSelfIntersect: StepData_Logical

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CompositeCurve_SetSelfIntersect(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a conicalsurface.

        """
        _StepGeom.StepGeom_ConicalSurface_swiginit(self, _StepGeom.new_StepGeom_ConicalSurface(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement3d
        aRadius: float
        aSemiAngle: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ConicalSurface_Init(self, *args)

    def Radius(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ConicalSurface_Radius(self, *args)

    def SemiAngle(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ConicalSurface_SemiAngle(self, *args)

    def SetRadius(self, *args):
        r"""

        Parameters
        ----------
        aRadius: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ConicalSurface_SetRadius(self, *args)

    def SetSemiAngle(self, *args):
        r"""

        Parameters
        ----------
        aSemiAngle: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ConicalSurface_SetSemiAngle(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        """
        _StepGeom.StepGeom_CurveBoundedSurface_swiginit(self, _StepGeom.new_StepGeom_CurveBoundedSurface(*args))

    def BasisSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Surface>

        Description
        -----------
        Returns field basissurface.

        """
        return _StepGeom.StepGeom_CurveBoundedSurface_BasisSurface(self, *args)

    def Boundaries(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_HArray1OfSurfaceBoundary>

        Description
        -----------
        Returns field boundaries.

        """
        return _StepGeom.StepGeom_CurveBoundedSurface_Boundaries(self, *args)

    def ImplicitOuter(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns field implicitouter.

        """
        return _StepGeom.StepGeom_CurveBoundedSurface_ImplicitOuter(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aRepresentationItem_Name: TCollection_HAsciiString
        aBasisSurface: StepGeom_Surface
        aBoundaries: StepGeom_HArray1OfSurfaceBoundary
        aImplicitOuter: bool

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepGeom.StepGeom_CurveBoundedSurface_Init(self, *args)

    def SetBasisSurface(self, *args):
        r"""

        Parameters
        ----------
        BasisSurface: StepGeom_Surface

        Return
        -------
        None

        Description
        -----------
        Set field basissurface.

        """
        return _StepGeom.StepGeom_CurveBoundedSurface_SetBasisSurface(self, *args)

    def SetBoundaries(self, *args):
        r"""

        Parameters
        ----------
        Boundaries: StepGeom_HArray1OfSurfaceBoundary

        Return
        -------
        None

        Description
        -----------
        Set field boundaries.

        """
        return _StepGeom.StepGeom_CurveBoundedSurface_SetBoundaries(self, *args)

    def SetImplicitOuter(self, *args):
        r"""

        Parameters
        ----------
        ImplicitOuter: bool

        Return
        -------
        None

        Description
        -----------
        Set field implicitouter.

        """
        return _StepGeom.StepGeom_CurveBoundedSurface_SetImplicitOuter(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a cylindricalsurface.

        """
        _StepGeom.StepGeom_CylindricalSurface_swiginit(self, _StepGeom.new_StepGeom_CylindricalSurface(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement3d
        aRadius: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CylindricalSurface_Init(self, *args)

    def Radius(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CylindricalSurface_Radius(self, *args)

    def SetRadius(self, *args):
        r"""

        Parameters
        ----------
        aRadius: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_CylindricalSurface_SetRadius(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a ellipse.

        """
        _StepGeom.StepGeom_Ellipse_swiginit(self, _StepGeom.new_StepGeom_Ellipse(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement
        aSemiAxis1: float
        aSemiAxis2: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Ellipse_Init(self, *args)

    def SemiAxis1(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Ellipse_SemiAxis1(self, *args)

    def SemiAxis2(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Ellipse_SemiAxis2(self, *args)

    def SetSemiAxis1(self, *args):
        r"""

        Parameters
        ----------
        aSemiAxis1: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Ellipse_SetSemiAxis1(self, *args)

    def SetSemiAxis2(self, *args):
        r"""

        Parameters
        ----------
        aSemiAxis2: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Ellipse_SetSemiAxis2(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a evaluateddegeneratepcurve.

        """
        _StepGeom.StepGeom_EvaluatedDegeneratePcurve_swiginit(self, _StepGeom.new_StepGeom_EvaluatedDegeneratePcurve(*args))

    def EquivalentPoint(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_CartesianPoint>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_EvaluatedDegeneratePcurve_EquivalentPoint(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisSurface: StepGeom_Surface
        aReferenceToCurve: StepRepr_DefinitionalRepresentation
        aEquivalentPoint: StepGeom_CartesianPoint

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_EvaluatedDegeneratePcurve_Init(self, *args)

    def SetEquivalentPoint(self, *args):
        r"""

        Parameters
        ----------
        aEquivalentPoint: StepGeom_CartesianPoint

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_EvaluatedDegeneratePcurve_SetEquivalentPoint(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a hyperbola.

        """
        _StepGeom.StepGeom_Hyperbola_swiginit(self, _StepGeom.new_StepGeom_Hyperbola(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement
        aSemiAxis: float
        aSemiImagAxis: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Hyperbola_Init(self, *args)

    def SemiAxis(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Hyperbola_SemiAxis(self, *args)

    def SemiImagAxis(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Hyperbola_SemiImagAxis(self, *args)

    def SetSemiAxis(self, *args):
        r"""

        Parameters
        ----------
        aSemiAxis: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Hyperbola_SetSemiAxis(self, *args)

    def SetSemiImagAxis(self, *args):
        r"""

        Parameters
        ----------
        aSemiImagAxis: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Hyperbola_SetSemiImagAxis(self, *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"""
        Return
        -------
        None

        Description
        -----------
        Returns a intersectioncurve.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a parabola.

        """
        _StepGeom.StepGeom_Parabola_swiginit(self, _StepGeom.new_StepGeom_Parabola(*args))

    def FocalDist(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Parabola_FocalDist(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement
        aFocalDist: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Parabola_Init(self, *args)

    def SetFocalDist(self, *args):
        r"""

        Parameters
        ----------
        aFocalDist: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Parabola_SetFocalDist(self, *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"""
        Return
        -------
        None

        Description
        -----------
        Returns a plane.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a polyline.

        """
        _StepGeom.StepGeom_Polyline_swiginit(self, _StepGeom.new_StepGeom_Polyline(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPoints: StepGeom_HArray1OfCartesianPoint

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Polyline_Init(self, *args)

    def NbPoints(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Polyline_NbPoints(self, *args)

    def Points(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_HArray1OfCartesianPoint>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Polyline_Points(self, *args)

    def PointsValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        opencascade::handle<StepGeom_CartesianPoint>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Polyline_PointsValue(self, *args)

    def SetPoints(self, *args):
        r"""

        Parameters
        ----------
        aPoints: StepGeom_HArray1OfCartesianPoint

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_Polyline_SetPoints(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a rectangularcompositesurface.

        """
        _StepGeom.StepGeom_RectangularCompositeSurface_swiginit(self, _StepGeom.new_StepGeom_RectangularCompositeSurface(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSegments: StepGeom_HArray2OfSurfacePatch

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularCompositeSurface_Init(self, *args)

    def NbSegmentsI(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularCompositeSurface_NbSegmentsI(self, *args)

    def NbSegmentsJ(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularCompositeSurface_NbSegmentsJ(self, *args)

    def Segments(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_HArray2OfSurfacePatch>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularCompositeSurface_Segments(self, *args)

    def SegmentsValue(self, *args):
        r"""

        Parameters
        ----------
        num1: int
        num2: int

        Return
        -------
        opencascade::handle<StepGeom_SurfacePatch>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularCompositeSurface_SegmentsValue(self, *args)

    def SetSegments(self, *args):
        r"""

        Parameters
        ----------
        aSegments: StepGeom_HArray2OfSurfacePatch

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularCompositeSurface_SetSegments(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a rectangulartrimmedsurface.

        """
        _StepGeom.StepGeom_RectangularTrimmedSurface_swiginit(self, _StepGeom.new_StepGeom_RectangularTrimmedSurface(*args))

    def BasisSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Surface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_BasisSurface(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisSurface: StepGeom_Surface
        aU1: float
        aU2: float
        aV1: float
        aV2: float
        aUsense: bool
        aVsense: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_Init(self, *args)

    def SetBasisSurface(self, *args):
        r"""

        Parameters
        ----------
        aBasisSurface: StepGeom_Surface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_SetBasisSurface(self, *args)

    def SetU1(self, *args):
        r"""

        Parameters
        ----------
        aU1: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_SetU1(self, *args)

    def SetU2(self, *args):
        r"""

        Parameters
        ----------
        aU2: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_SetU2(self, *args)

    def SetUsense(self, *args):
        r"""

        Parameters
        ----------
        aUsense: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_SetUsense(self, *args)

    def SetV1(self, *args):
        r"""

        Parameters
        ----------
        aV1: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_SetV1(self, *args)

    def SetV2(self, *args):
        r"""

        Parameters
        ----------
        aV2: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_SetV2(self, *args)

    def SetVsense(self, *args):
        r"""

        Parameters
        ----------
        aVsense: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_SetVsense(self, *args)

    def U1(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_U1(self, *args)

    def U2(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_U2(self, *args)

    def Usense(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_Usense(self, *args)

    def V1(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_V1(self, *args)

    def V2(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_V2(self, *args)

    def Vsense(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RectangularTrimmedSurface_Vsense(self, *args)


    @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"""
        Return
        -------
        None

        Description
        -----------
        Returns a seamcurve.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a sphericalsurface.

        """
        _StepGeom.StepGeom_SphericalSurface_swiginit(self, _StepGeom.new_StepGeom_SphericalSurface(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement3d
        aRadius: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SphericalSurface_Init(self, *args)

    def Radius(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SphericalSurface_Radius(self, *args)

    def SetRadius(self, *args):
        r"""

        Parameters
        ----------
        aRadius: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SphericalSurface_SetRadius(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Creates empty object.

        """
        _StepGeom.StepGeom_SurfaceCurveAndBoundedCurve_swiginit(self, _StepGeom.new_StepGeom_SurfaceCurveAndBoundedCurve(*args))

    def BoundedCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_BoundedCurve>

        Description
        -----------
        Returns field boundedcurve.

        """
        return _StepGeom.StepGeom_SurfaceCurveAndBoundedCurve_BoundedCurve(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a surfaceoflinearextrusion.

        """
        _StepGeom.StepGeom_SurfaceOfLinearExtrusion_swiginit(self, _StepGeom.new_StepGeom_SurfaceOfLinearExtrusion(*args))

    def ExtrusionAxis(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Vector>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceOfLinearExtrusion_ExtrusionAxis(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSweptCurve: StepGeom_Curve
        aExtrusionAxis: StepGeom_Vector

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceOfLinearExtrusion_Init(self, *args)

    def SetExtrusionAxis(self, *args):
        r"""

        Parameters
        ----------
        aExtrusionAxis: StepGeom_Vector

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceOfLinearExtrusion_SetExtrusionAxis(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a surfaceofrevolution.

        """
        _StepGeom.StepGeom_SurfaceOfRevolution_swiginit(self, _StepGeom.new_StepGeom_SurfaceOfRevolution(*args))

    def AxisPosition(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Axis1Placement>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceOfRevolution_AxisPosition(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSweptCurve: StepGeom_Curve
        aAxisPosition: StepGeom_Axis1Placement

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceOfRevolution_Init(self, *args)

    def SetAxisPosition(self, *args):
        r"""

        Parameters
        ----------
        aAxisPosition: StepGeom_Axis1Placement

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_SurfaceOfRevolution_SetAxisPosition(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a toroidalsurface.

        """
        _StepGeom.StepGeom_ToroidalSurface_swiginit(self, _StepGeom.new_StepGeom_ToroidalSurface(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement3d
        aMajorRadius: float
        aMinorRadius: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ToroidalSurface_Init(self, *args)

    def MajorRadius(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ToroidalSurface_MajorRadius(self, *args)

    def MinorRadius(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ToroidalSurface_MinorRadius(self, *args)

    def SetMajorRadius(self, *args):
        r"""

        Parameters
        ----------
        aMajorRadius: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ToroidalSurface_SetMajorRadius(self, *args)

    def SetMinorRadius(self, *args):
        r"""

        Parameters
        ----------
        aMinorRadius: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_ToroidalSurface_SetMinorRadius(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a trimmedcurve.

        """
        _StepGeom.StepGeom_TrimmedCurve_swiginit(self, _StepGeom.new_StepGeom_TrimmedCurve(*args))

    def BasisCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_Curve>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_BasisCurve(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisCurve: StepGeom_Curve
        aTrim1: StepGeom_HArray1OfTrimmingSelect
        aTrim2: StepGeom_HArray1OfTrimmingSelect
        aSenseAgreement: bool
        aMasterRepresentation: StepGeom_TrimmingPreference

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_Init(self, *args)

    def MasterRepresentation(self, *args):
        r"""
        Return
        -------
        StepGeom_TrimmingPreference

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_MasterRepresentation(self, *args)

    def NbTrim1(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_NbTrim1(self, *args)

    def NbTrim2(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_NbTrim2(self, *args)

    def SenseAgreement(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_SenseAgreement(self, *args)

    def SetBasisCurve(self, *args):
        r"""

        Parameters
        ----------
        aBasisCurve: StepGeom_Curve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_SetBasisCurve(self, *args)

    def SetMasterRepresentation(self, *args):
        r"""

        Parameters
        ----------
        aMasterRepresentation: StepGeom_TrimmingPreference

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_SetMasterRepresentation(self, *args)

    def SetSenseAgreement(self, *args):
        r"""

        Parameters
        ----------
        aSenseAgreement: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_SetSenseAgreement(self, *args)

    def SetTrim1(self, *args):
        r"""

        Parameters
        ----------
        aTrim1: StepGeom_HArray1OfTrimmingSelect

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_SetTrim1(self, *args)

    def SetTrim2(self, *args):
        r"""

        Parameters
        ----------
        aTrim2: StepGeom_HArray1OfTrimmingSelect

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_SetTrim2(self, *args)

    def Trim1(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_HArray1OfTrimmingSelect>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_Trim1(self, *args)

    def Trim1Value(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        StepGeom_TrimmingSelect

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_Trim1Value(self, *args)

    def Trim2(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_HArray1OfTrimmingSelect>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_Trim2(self, *args)

    def Trim2Value(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        StepGeom_TrimmingSelect

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_TrimmedCurve_Trim2Value(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a bsplinecurvewithknots.

        """
        _StepGeom.StepGeom_BSplineCurveWithKnots_swiginit(self, _StepGeom.new_StepGeom_BSplineCurveWithKnots(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aKnotMultiplicities: TColStd_HArray1OfInteger
        aKnots: TColStd_HArray1OfReal
        aKnotSpec: StepGeom_KnotType

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnots_Init(self, *args)

    def KnotMultiplicities(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfInteger>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnots_KnotMultiplicities(self, *args)

    def KnotMultiplicitiesValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnots_KnotMultiplicitiesValue(self, *args)

    def KnotSpec(self, *args):
        r"""
        Return
        -------
        StepGeom_KnotType

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnots_KnotSpec(self, *args)

    def Knots(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnots_Knots(self, *args)

    def KnotsValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnots_KnotsValue(self, *args)

    def NbKnotMultiplicities(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnots_NbKnotMultiplicities(self, *args)

    def NbKnots(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnots_NbKnots(self, *args)

    def SetKnotMultiplicities(self, *args):
        r"""

        Parameters
        ----------
        aKnotMultiplicities: TColStd_HArray1OfInteger

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnots_SetKnotMultiplicities(self, *args)

    def SetKnotSpec(self, *args):
        r"""

        Parameters
        ----------
        aKnotSpec: StepGeom_KnotType

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnots_SetKnotSpec(self, *args)

    def SetKnots(self, *args):
        r"""

        Parameters
        ----------
        aKnots: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnots_SetKnots(self, *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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a bsplinecurvewithknotsandrationalbsplinecurve.

        """
        _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve(*args))

    def BSplineCurveWithKnots(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_BSplineCurveWithKnots>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_BSplineCurveWithKnots(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aBSplineCurveWithKnots: StepGeom_BSplineCurveWithKnots
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aKnotMultiplicities: TColStd_HArray1OfInteger
        aKnots: TColStd_HArray1OfReal
        aKnotSpec: StepGeom_KnotType
        aWeightsData: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_Init(self, *args)

    def KnotMultiplicities(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfInteger>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_KnotMultiplicities(self, *args)

    def KnotMultiplicitiesValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_KnotMultiplicitiesValue(self, *args)

    def KnotSpec(self, *args):
        r"""
        Return
        -------
        StepGeom_KnotType

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_KnotSpec(self, *args)

    def Knots(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_Knots(self, *args)

    def KnotsValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_KnotsValue(self, *args)

    def NbKnotMultiplicities(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_NbKnotMultiplicities(self, *args)

    def NbKnots(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_NbKnots(self, *args)

    def NbWeightsData(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_NbWeightsData(self, *args)

    def RationalBSplineCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_RationalBSplineCurve>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_RationalBSplineCurve(self, *args)

    def SetBSplineCurveWithKnots(self, *args):
        r"""

        Parameters
        ----------
        aBSplineCurveWithKnots: StepGeom_BSplineCurveWithKnots

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_SetBSplineCurveWithKnots(self, *args)

    def SetKnotMultiplicities(self, *args):
        r"""

        Parameters
        ----------
        aKnotMultiplicities: TColStd_HArray1OfInteger

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_SetKnotMultiplicities(self, *args)

    def SetKnotSpec(self, *args):
        r"""

        Parameters
        ----------
        aKnotSpec: StepGeom_KnotType

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_SetKnotSpec(self, *args)

    def SetKnots(self, *args):
        r"""

        Parameters
        ----------
        aKnots: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_SetKnots(self, *args)

    def SetRationalBSplineCurve(self, *args):
        r"""

        Parameters
        ----------
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_SetRationalBSplineCurve(self, *args)

    def SetWeightsData(self, *args):
        r"""

        Parameters
        ----------
        aWeightsData: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_SetWeightsData(self, *args)

    def WeightsData(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_WeightsData(self, *args)

    def WeightsDataValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_WeightsDataValue(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a bsplinesurfacewithknots.

        """
        _StepGeom.StepGeom_BSplineSurfaceWithKnots_swiginit(self, _StepGeom.new_StepGeom_BSplineSurfaceWithKnots(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aUDegree: int
        aVDegree: int
        aControlPointsList: StepGeom_HArray2OfCartesianPoint
        aSurfaceForm: StepGeom_BSplineSurfaceForm
        aUClosed: StepData_Logical
        aVClosed: StepData_Logical
        aSelfIntersect: StepData_Logical
        aUMultiplicities: TColStd_HArray1OfInteger
        aVMultiplicities: TColStd_HArray1OfInteger
        aUKnots: TColStd_HArray1OfReal
        aVKnots: TColStd_HArray1OfReal
        aKnotSpec: StepGeom_KnotType

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_Init(self, *args)

    def KnotSpec(self, *args):
        r"""
        Return
        -------
        StepGeom_KnotType

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_KnotSpec(self, *args)

    def NbUKnots(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_NbUKnots(self, *args)

    def NbUMultiplicities(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_NbUMultiplicities(self, *args)

    def NbVKnots(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_NbVKnots(self, *args)

    def NbVMultiplicities(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_NbVMultiplicities(self, *args)

    def SetKnotSpec(self, *args):
        r"""

        Parameters
        ----------
        aKnotSpec: StepGeom_KnotType

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_SetKnotSpec(self, *args)

    def SetUKnots(self, *args):
        r"""

        Parameters
        ----------
        aUKnots: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_SetUKnots(self, *args)

    def SetUMultiplicities(self, *args):
        r"""

        Parameters
        ----------
        aUMultiplicities: TColStd_HArray1OfInteger

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_SetUMultiplicities(self, *args)

    def SetVKnots(self, *args):
        r"""

        Parameters
        ----------
        aVKnots: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_SetVKnots(self, *args)

    def SetVMultiplicities(self, *args):
        r"""

        Parameters
        ----------
        aVMultiplicities: TColStd_HArray1OfInteger

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_SetVMultiplicities(self, *args)

    def UKnots(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_UKnots(self, *args)

    def UKnotsValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_UKnotsValue(self, *args)

    def UMultiplicities(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfInteger>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_UMultiplicities(self, *args)

    def UMultiplicitiesValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_UMultiplicitiesValue(self, *args)

    def VKnots(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_VKnots(self, *args)

    def VKnotsValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_VKnotsValue(self, *args)

    def VMultiplicities(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfInteger>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_VMultiplicities(self, *args)

    def VMultiplicitiesValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnots_VMultiplicitiesValue(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a bsplinesurfacewithknotsandrationalbsplinesurface.

        """
        _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface(*args))

    def BSplineSurfaceWithKnots(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_BSplineSurfaceWithKnots>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_BSplineSurfaceWithKnots(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aUDegree: int
        aVDegree: int
        aControlPointsList: StepGeom_HArray2OfCartesianPoint
        aSurfaceForm: StepGeom_BSplineSurfaceForm
        aUClosed: StepData_Logical
        aVClosed: StepData_Logical
        aSelfIntersect: StepData_Logical
        aBSplineSurfaceWithKnots: StepGeom_BSplineSurfaceWithKnots
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aUDegree: int
        aVDegree: int
        aControlPointsList: StepGeom_HArray2OfCartesianPoint
        aSurfaceForm: StepGeom_BSplineSurfaceForm
        aUClosed: StepData_Logical
        aVClosed: StepData_Logical
        aSelfIntersect: StepData_Logical
        aUMultiplicities: TColStd_HArray1OfInteger
        aVMultiplicities: TColStd_HArray1OfInteger
        aUKnots: TColStd_HArray1OfReal
        aVKnots: TColStd_HArray1OfReal
        aKnotSpec: StepGeom_KnotType
        aWeightsData: TColStd_HArray2OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_Init(self, *args)

    def KnotSpec(self, *args):
        r"""
        Return
        -------
        StepGeom_KnotType

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_KnotSpec(self, *args)

    def NbUKnots(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_NbUKnots(self, *args)

    def NbUMultiplicities(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_NbUMultiplicities(self, *args)

    def NbVKnots(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_NbVKnots(self, *args)

    def NbVMultiplicities(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_NbVMultiplicities(self, *args)

    def NbWeightsDataI(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_NbWeightsDataI(self, *args)

    def NbWeightsDataJ(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_NbWeightsDataJ(self, *args)

    def RationalBSplineSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_RationalBSplineSurface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_RationalBSplineSurface(self, *args)

    def SetBSplineSurfaceWithKnots(self, *args):
        r"""

        Parameters
        ----------
        aBSplineSurfaceWithKnots: StepGeom_BSplineSurfaceWithKnots

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetBSplineSurfaceWithKnots(self, *args)

    def SetKnotSpec(self, *args):
        r"""

        Parameters
        ----------
        aKnotSpec: StepGeom_KnotType

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetKnotSpec(self, *args)

    def SetRationalBSplineSurface(self, *args):
        r"""

        Parameters
        ----------
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetRationalBSplineSurface(self, *args)

    def SetUKnots(self, *args):
        r"""

        Parameters
        ----------
        aUKnots: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetUKnots(self, *args)

    def SetUMultiplicities(self, *args):
        r"""

        Parameters
        ----------
        aUMultiplicities: TColStd_HArray1OfInteger

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetUMultiplicities(self, *args)

    def SetVKnots(self, *args):
        r"""

        Parameters
        ----------
        aVKnots: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetVKnots(self, *args)

    def SetVMultiplicities(self, *args):
        r"""

        Parameters
        ----------
        aVMultiplicities: TColStd_HArray1OfInteger

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetVMultiplicities(self, *args)

    def SetWeightsData(self, *args):
        r"""

        Parameters
        ----------
        aWeightsData: TColStd_HArray2OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_SetWeightsData(self, *args)

    def UKnots(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_UKnots(self, *args)

    def UKnotsValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_UKnotsValue(self, *args)

    def UMultiplicities(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfInteger>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_UMultiplicities(self, *args)

    def UMultiplicitiesValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_UMultiplicitiesValue(self, *args)

    def VKnots(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_VKnots(self, *args)

    def VKnotsValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_VKnotsValue(self, *args)

    def VMultiplicities(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfInteger>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_VMultiplicities(self, *args)

    def VMultiplicitiesValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_VMultiplicitiesValue(self, *args)

    def WeightsData(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray2OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_WeightsData(self, *args)

    def WeightsDataValue(self, *args):
        r"""

        Parameters
        ----------
        num1: int
        num2: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_WeightsDataValue(self, *args)


    @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"""
        Return
        -------
        None

        Description
        -----------
        Returns a beziercurve.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a beziercurveandrationalbsplinecurve.

        """
        _StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_BezierCurveAndRationalBSplineCurve(*args))

    def BezierCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_BezierCurve>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_BezierCurve(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aBezierCurve: StepGeom_BezierCurve
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aWeightsData: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_Init(self, *args)

    def NbWeightsData(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_NbWeightsData(self, *args)

    def RationalBSplineCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_RationalBSplineCurve>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_RationalBSplineCurve(self, *args)

    def SetBezierCurve(self, *args):
        r"""

        Parameters
        ----------
        aBezierCurve: StepGeom_BezierCurve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_SetBezierCurve(self, *args)

    def SetRationalBSplineCurve(self, *args):
        r"""

        Parameters
        ----------
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_SetRationalBSplineCurve(self, *args)

    def SetWeightsData(self, *args):
        r"""

        Parameters
        ----------
        aWeightsData: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_SetWeightsData(self, *args)

    def WeightsData(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_WeightsData(self, *args)

    def WeightsDataValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_WeightsDataValue(self, *args)


    @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"""
        Return
        -------
        None

        Description
        -----------
        Returns a beziersurface.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a beziersurfaceandrationalbsplinesurface.

        """
        _StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_BezierSurfaceAndRationalBSplineSurface(*args))

    def BezierSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_BezierSurface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_BezierSurface(self, *args)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aUDegree: int
        aVDegree: int
        aControlPointsList: StepGeom_HArray2OfCartesianPoint
        aSurfaceForm: StepGeom_BSplineSurfaceForm
        aUClosed: StepData_Logical
        aVClosed: StepData_Logical
        aSelfIntersect: StepData_Logical
        aBezierSurface: StepGeom_BezierSurface
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aUDegree: int
        aVDegree: int
        aControlPointsList: StepGeom_HArray2OfCartesianPoint
        aSurfaceForm: StepGeom_BSplineSurfaceForm
        aUClosed: StepData_Logical
        aVClosed: StepData_Logical
        aSelfIntersect: StepData_Logical
        aWeightsData: TColStd_HArray2OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_Init(self, *args)

    def NbWeightsDataI(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_NbWeightsDataI(self, *args)

    def NbWeightsDataJ(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_NbWeightsDataJ(self, *args)

    def RationalBSplineSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_RationalBSplineSurface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_RationalBSplineSurface(self, *args)

    def SetBezierSurface(self, *args):
        r"""

        Parameters
        ----------
        aBezierSurface: StepGeom_BezierSurface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_SetBezierSurface(self, *args)

    def SetRationalBSplineSurface(self, *args):
        r"""

        Parameters
        ----------
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_SetRationalBSplineSurface(self, *args)

    def SetWeightsData(self, *args):
        r"""

        Parameters
        ----------
        aWeightsData: TColStd_HArray2OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_SetWeightsData(self, *args)

    def WeightsData(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray2OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_WeightsData(self, *args)

    def WeightsDataValue(self, *args):
        r"""

        Parameters
        ----------
        num1: int
        num2: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_WeightsDataValue(self, *args)


    @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"""
        Return
        -------
        None

        Description
        -----------
        Returns a compositecurveonsurface.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a degeneratetoroidalsurface.

        """
        _StepGeom.StepGeom_DegenerateToroidalSurface_swiginit(self, _StepGeom.new_StepGeom_DegenerateToroidalSurface(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement3d
        aMajorRadius: float
        aMinorRadius: float
        aSelectOuter: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_DegenerateToroidalSurface_Init(self, *args)

    def SelectOuter(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_DegenerateToroidalSurface_SelectOuter(self, *args)

    def SetSelectOuter(self, *args):
        r"""

        Parameters
        ----------
        aSelectOuter: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_DegenerateToroidalSurface_SetSelectOuter(self, *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"""
        Return
        -------
        None

        Description
        -----------
        Returns a quasiuniformcurve.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a quasiuniformcurveandrationalbsplinecurve.

        """
        _StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_QuasiUniformCurveAndRationalBSplineCurve(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aQuasiUniformCurve: StepGeom_QuasiUniformCurve
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aWeightsData: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_Init(self, *args)

    def NbWeightsData(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_NbWeightsData(self, *args)

    def QuasiUniformCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_QuasiUniformCurve>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_QuasiUniformCurve(self, *args)

    def RationalBSplineCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_RationalBSplineCurve>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_RationalBSplineCurve(self, *args)

    def SetQuasiUniformCurve(self, *args):
        r"""

        Parameters
        ----------
        aQuasiUniformCurve: StepGeom_QuasiUniformCurve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_SetQuasiUniformCurve(self, *args)

    def SetRationalBSplineCurve(self, *args):
        r"""

        Parameters
        ----------
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_SetRationalBSplineCurve(self, *args)

    def SetWeightsData(self, *args):
        r"""

        Parameters
        ----------
        aWeightsData: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_SetWeightsData(self, *args)

    def WeightsData(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_WeightsData(self, *args)

    def WeightsDataValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_WeightsDataValue(self, *args)


    @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"""
        Return
        -------
        None

        Description
        -----------
        Returns a quasiuniformsurface.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a quasiuniformsurfaceandrationalbsplinesurface.

        """
        _StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aUDegree: int
        aVDegree: int
        aControlPointsList: StepGeom_HArray2OfCartesianPoint
        aSurfaceForm: StepGeom_BSplineSurfaceForm
        aUClosed: StepData_Logical
        aVClosed: StepData_Logical
        aSelfIntersect: StepData_Logical
        aQuasiUniformSurface: StepGeom_QuasiUniformSurface
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aUDegree: int
        aVDegree: int
        aControlPointsList: StepGeom_HArray2OfCartesianPoint
        aSurfaceForm: StepGeom_BSplineSurfaceForm
        aUClosed: StepData_Logical
        aVClosed: StepData_Logical
        aSelfIntersect: StepData_Logical
        aWeightsData: TColStd_HArray2OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_Init(self, *args)

    def NbWeightsDataI(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_NbWeightsDataI(self, *args)

    def NbWeightsDataJ(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_NbWeightsDataJ(self, *args)

    def QuasiUniformSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_QuasiUniformSurface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_QuasiUniformSurface(self, *args)

    def RationalBSplineSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_RationalBSplineSurface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_RationalBSplineSurface(self, *args)

    def SetQuasiUniformSurface(self, *args):
        r"""

        Parameters
        ----------
        aQuasiUniformSurface: StepGeom_QuasiUniformSurface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_SetQuasiUniformSurface(self, *args)

    def SetRationalBSplineSurface(self, *args):
        r"""

        Parameters
        ----------
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_SetRationalBSplineSurface(self, *args)

    def SetWeightsData(self, *args):
        r"""

        Parameters
        ----------
        aWeightsData: TColStd_HArray2OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_SetWeightsData(self, *args)

    def WeightsData(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray2OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_WeightsData(self, *args)

    def WeightsDataValue(self, *args):
        r"""

        Parameters
        ----------
        num1: int
        num2: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_WeightsDataValue(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a rationalbsplinecurve.

        """
        _StepGeom.StepGeom_RationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_RationalBSplineCurve(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aWeightsData: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RationalBSplineCurve_Init(self, *args)

    def NbWeightsData(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RationalBSplineCurve_NbWeightsData(self, *args)

    def SetWeightsData(self, *args):
        r"""

        Parameters
        ----------
        aWeightsData: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RationalBSplineCurve_SetWeightsData(self, *args)

    def WeightsData(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RationalBSplineCurve_WeightsData(self, *args)

    def WeightsDataValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RationalBSplineCurve_WeightsDataValue(self, *args)


    @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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a rationalbsplinesurface.

        """
        _StepGeom.StepGeom_RationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_RationalBSplineSurface(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aUDegree: int
        aVDegree: int
        aControlPointsList: StepGeom_HArray2OfCartesianPoint
        aSurfaceForm: StepGeom_BSplineSurfaceForm
        aUClosed: StepData_Logical
        aVClosed: StepData_Logical
        aSelfIntersect: StepData_Logical
        aWeightsData: TColStd_HArray2OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RationalBSplineSurface_Init(self, *args)

    def NbWeightsDataI(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RationalBSplineSurface_NbWeightsDataI(self, *args)

    def NbWeightsDataJ(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RationalBSplineSurface_NbWeightsDataJ(self, *args)

    def SetWeightsData(self, *args):
        r"""

        Parameters
        ----------
        aWeightsData: TColStd_HArray2OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RationalBSplineSurface_SetWeightsData(self, *args)

    def WeightsData(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray2OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RationalBSplineSurface_WeightsData(self, *args)

    def WeightsDataValue(self, *args):
        r"""

        Parameters
        ----------
        num1: int
        num2: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_RationalBSplineSurface_WeightsDataValue(self, *args)


    @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"""
        Return
        -------
        None

        Description
        -----------
        Returns a uniformcurve.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a uniformcurveandrationalbsplinecurve.

        """
        _StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_UniformCurveAndRationalBSplineCurve(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aUniformCurve: StepGeom_UniformCurve
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aWeightsData: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_Init(self, *args)

    def NbWeightsData(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_NbWeightsData(self, *args)

    def RationalBSplineCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_RationalBSplineCurve>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_RationalBSplineCurve(self, *args)

    def SetRationalBSplineCurve(self, *args):
        r"""

        Parameters
        ----------
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_SetRationalBSplineCurve(self, *args)

    def SetUniformCurve(self, *args):
        r"""

        Parameters
        ----------
        aUniformCurve: StepGeom_UniformCurve

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_SetUniformCurve(self, *args)

    def SetWeightsData(self, *args):
        r"""

        Parameters
        ----------
        aWeightsData: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_SetWeightsData(self, *args)

    def UniformCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_UniformCurve>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_UniformCurve(self, *args)

    def WeightsData(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray1OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_WeightsData(self, *args)

    def WeightsDataValue(self, *args):
        r"""

        Parameters
        ----------
        num: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_WeightsDataValue(self, *args)


    @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"""
        Return
        -------
        None

        Description
        -----------
        Returns a uniformsurface.

        """
        _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

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Returns a uniformsurfaceandrationalbsplinesurface.

        """
        _StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_UniformSurfaceAndRationalBSplineSurface(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aUDegree: int
        aVDegree: int
        aControlPointsList: StepGeom_HArray2OfCartesianPoint
        aSurfaceForm: StepGeom_BSplineSurfaceForm
        aUClosed: StepData_Logical
        aVClosed: StepData_Logical
        aSelfIntersect: StepData_Logical
        aUniformSurface: StepGeom_UniformSurface
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aUDegree: int
        aVDegree: int
        aControlPointsList: StepGeom_HArray2OfCartesianPoint
        aSurfaceForm: StepGeom_BSplineSurfaceForm
        aUClosed: StepData_Logical
        aVClosed: StepData_Logical
        aSelfIntersect: StepData_Logical
        aWeightsData: TColStd_HArray2OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_Init(self, *args)

    def NbWeightsDataI(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_NbWeightsDataI(self, *args)

    def NbWeightsDataJ(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_NbWeightsDataJ(self, *args)

    def RationalBSplineSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_RationalBSplineSurface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_RationalBSplineSurface(self, *args)

    def SetRationalBSplineSurface(self, *args):
        r"""

        Parameters
        ----------
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_SetRationalBSplineSurface(self, *args)

    def SetUniformSurface(self, *args):
        r"""

        Parameters
        ----------
        aUniformSurface: StepGeom_UniformSurface

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_SetUniformSurface(self, *args)

    def SetWeightsData(self, *args):
        r"""

        Parameters
        ----------
        aWeightsData: TColStd_HArray2OfReal

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_SetWeightsData(self, *args)

    def UniformSurface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<StepGeom_UniformSurface>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_UniformSurface(self, *args)

    def WeightsData(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TColStd_HArray2OfReal>

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_WeightsData(self, *args)

    def WeightsDataValue(self, *args):
        r"""

        Parameters
        ----------
        num1: int
        num2: int

        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_WeightsDataValue(self, *args)


    @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"""
        Return
        -------
        None

        Description
        -----------
        Returns a boundarycurve.

        """
        _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"""
        Return
        -------
        None

        Description
        -----------
        Returns a outerboundarycurve.

        """
        _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_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))

    def Array1(self):
        return _StepGeom.StepGeom_HArray1OfSurfaceBoundary_Array1(self)

    def ChangeArray1(self):
        return _StepGeom.StepGeom_HArray1OfSurfaceBoundary_ChangeArray1(self)


    @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_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))

    def Array1(self):
        return _StepGeom.StepGeom_HArray1OfCartesianPoint_Array1(self)

    def ChangeArray1(self):
        return _StepGeom.StepGeom_HArray1OfCartesianPoint_ChangeArray1(self)


    @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_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))

    def Array1(self):
        return _StepGeom.StepGeom_HArray1OfBoundaryCurve_Array1(self)

    def ChangeArray1(self):
        return _StepGeom.StepGeom_HArray1OfBoundaryCurve_ChangeArray1(self)


    @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_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))

    def Array1(self):
        return _StepGeom.StepGeom_HArray1OfPcurveOrSurface_Array1(self)

    def ChangeArray1(self):
        return _StepGeom.StepGeom_HArray1OfPcurveOrSurface_ChangeArray1(self)


    @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_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))

    def Array1(self):
        return _StepGeom.StepGeom_HArray1OfCurve_Array1(self)

    def ChangeArray1(self):
        return _StepGeom.StepGeom_HArray1OfCurve_ChangeArray1(self)


    @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))

    def Array1(self):
        return _StepGeom.StepGeom_HArray1OfTrimmingSelect_Array1(self)

    def ChangeArray1(self):
        return _StepGeom.StepGeom_HArray1OfTrimmingSelect_ChangeArray1(self)


    @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_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))

    def Array1(self):
        return _StepGeom.StepGeom_HArray1OfCompositeCurveSegment_Array1(self)

    def ChangeArray1(self):
        return _StepGeom.StepGeom_HArray1OfCompositeCurveSegment_ChangeArray1(self)


    @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_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))

    def Array2(self):
        return _StepGeom.StepGeom_HArray2OfCartesianPoint_Array2(self)

    def ChangeArray2(self):
        return _StepGeom.StepGeom_HArray2OfCartesianPoint_ChangeArray2(self)


    @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)
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))

    def Array2(self):
        return _StepGeom.StepGeom_HArray2OfSurfacePatch_Array2(self)

    def ChangeArray2(self):
        return _StepGeom.StepGeom_HArray2OfSurfacePatch_ChangeArray2(self)


    @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)



