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

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

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

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

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

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


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


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


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


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


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

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _StepGeom.delete_SwigPyIterator

    def value(self) -> "PyObject *":
        return _StepGeom.SwigPyIterator_value(self)

    def incr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _StepGeom.SwigPyIterator_incr(self, n)

    def decr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _StepGeom.SwigPyIterator_decr(self, n)

    def distance(self, x: "SwigPyIterator") -> "ptrdiff_t":
        return _StepGeom.SwigPyIterator_distance(self, x)

    def equal(self, x: "SwigPyIterator") -> "bool":
        return _StepGeom.SwigPyIterator_equal(self, x)

    def copy(self) -> "swig::SwigPyIterator *":
        return _StepGeom.SwigPyIterator_copy(self)

    def next(self) -> "PyObject *":
        return _StepGeom.SwigPyIterator_next(self)

    def __next__(self) -> "PyObject *":
        return _StepGeom.SwigPyIterator___next__(self)

    def previous(self) -> "PyObject *":
        return _StepGeom.SwigPyIterator_previous(self)

    def advance(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _StepGeom.SwigPyIterator_advance(self, n)

    def __eq__(self, x: "SwigPyIterator") -> "bool":
        return _StepGeom.SwigPyIterator___eq__(self, x)

    def __ne__(self, x: "SwigPyIterator") -> "bool":
        return _StepGeom.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _StepGeom.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _StepGeom.SwigPyIterator___isub__(self, n)

    def __add__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _StepGeom.SwigPyIterator___add__(self, n)

    def __sub__(self, *args) -> "ptrdiff_t":
        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: "Standard_Failure", method_name: "std::string", class_name: "std::string") -> "void":
    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_ktUniformKnots = _StepGeom.StepGeom_ktUniformKnots
StepGeom_ktUnspecified = _StepGeom.StepGeom_ktUnspecified
StepGeom_ktQuasiUniformKnots = _StepGeom.StepGeom_ktQuasiUniformKnots
StepGeom_ktPiecewiseBezierKnots = _StepGeom.StepGeom_ktPiecewiseBezierKnots
StepGeom_bssfPlaneSurf = _StepGeom.StepGeom_bssfPlaneSurf
StepGeom_bssfCylindricalSurf = _StepGeom.StepGeom_bssfCylindricalSurf
StepGeom_bssfConicalSurf = _StepGeom.StepGeom_bssfConicalSurf
StepGeom_bssfSphericalSurf = _StepGeom.StepGeom_bssfSphericalSurf
StepGeom_bssfToroidalSurf = _StepGeom.StepGeom_bssfToroidalSurf
StepGeom_bssfSurfOfRevolution = _StepGeom.StepGeom_bssfSurfOfRevolution
StepGeom_bssfRuledSurf = _StepGeom.StepGeom_bssfRuledSurf
StepGeom_bssfGeneralisedCone = _StepGeom.StepGeom_bssfGeneralisedCone
StepGeom_bssfQuadricSurf = _StepGeom.StepGeom_bssfQuadricSurf
StepGeom_bssfSurfOfLinearExtrusion = _StepGeom.StepGeom_bssfSurfOfLinearExtrusion
StepGeom_bssfUnspecified = _StepGeom.StepGeom_bssfUnspecified
StepGeom_bscfPolylineForm = _StepGeom.StepGeom_bscfPolylineForm
StepGeom_bscfCircularArc = _StepGeom.StepGeom_bscfCircularArc
StepGeom_bscfEllipticArc = _StepGeom.StepGeom_bscfEllipticArc
StepGeom_bscfParabolicArc = _StepGeom.StepGeom_bscfParabolicArc
StepGeom_bscfHyperbolicArc = _StepGeom.StepGeom_bscfHyperbolicArc
StepGeom_bscfUnspecified = _StepGeom.StepGeom_bscfUnspecified
StepGeom_tpCartesian = _StepGeom.StepGeom_tpCartesian
StepGeom_tpParameter = _StepGeom.StepGeom_tpParameter
StepGeom_tpUnspecified = _StepGeom.StepGeom_tpUnspecified
StepGeom_pscrCurve3d = _StepGeom.StepGeom_pscrCurve3d
StepGeom_pscrPcurveS1 = _StepGeom.StepGeom_pscrPcurveS1
StepGeom_pscrPcurveS2 = _StepGeom.StepGeom_pscrPcurveS2
StepGeom_tcDiscontinuous = _StepGeom.StepGeom_tcDiscontinuous
StepGeom_tcContinuous = _StepGeom.StepGeom_tcContinuous
StepGeom_tcContSameGradient = _StepGeom.StepGeom_tcContSameGradient
StepGeom_tcContSameGradientSameCurvature = _StepGeom.StepGeom_tcContSameGradientSameCurvature


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

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


def Handle_StepGeom_CompositeCurveSegment_Create() -> "opencascade::handle< StepGeom_CompositeCurveSegment >":
    return _StepGeom.Handle_StepGeom_CompositeCurveSegment_Create()

def Handle_StepGeom_CompositeCurveSegment_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_CompositeCurveSegment >":
    return _StepGeom.Handle_StepGeom_CompositeCurveSegment_DownCast(t)

def Handle_StepGeom_CompositeCurveSegment_IsNull(t: "opencascade::handle< StepGeom_CompositeCurveSegment > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_CompositeCurveSegment_IsNull(t)

def Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_Create() -> "opencascade::handle< StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx >":
    return _StepGeom.Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_Create()

def Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx >":
    return _StepGeom.Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_DownCast(t)

def Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_IsNull(t: "opencascade::handle< StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx_IsNull(t)

def Handle_StepGeom_GeometricRepresentationContext_Create() -> "opencascade::handle< StepGeom_GeometricRepresentationContext >":
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContext_Create()

def Handle_StepGeom_GeometricRepresentationContext_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_GeometricRepresentationContext >":
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContext_DownCast(t)

def Handle_StepGeom_GeometricRepresentationContext_IsNull(t: "opencascade::handle< StepGeom_GeometricRepresentationContext > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContext_IsNull(t)

def Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_Create() -> "opencascade::handle< StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext >":
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_Create()

def Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext >":
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_DownCast(t)

def Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_IsNull(t: "opencascade::handle< StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndGlobalUnitAssignedContext_IsNull(t)

def Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_Create() -> "opencascade::handle< StepGeom_GeometricRepresentationContextAndParametricRepresentationContext >":
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_Create()

def Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_GeometricRepresentationContextAndParametricRepresentationContext >":
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_DownCast(t)

def Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_IsNull(t: "opencascade::handle< StepGeom_GeometricRepresentationContextAndParametricRepresentationContext > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_GeometricRepresentationContextAndParametricRepresentationContext_IsNull(t)

def Handle_StepGeom_GeometricRepresentationItem_Create() -> "opencascade::handle< StepGeom_GeometricRepresentationItem >":
    return _StepGeom.Handle_StepGeom_GeometricRepresentationItem_Create()

def Handle_StepGeom_GeometricRepresentationItem_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_GeometricRepresentationItem >":
    return _StepGeom.Handle_StepGeom_GeometricRepresentationItem_DownCast(t)

def Handle_StepGeom_GeometricRepresentationItem_IsNull(t: "opencascade::handle< StepGeom_GeometricRepresentationItem > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_GeometricRepresentationItem_IsNull(t)

def Handle_StepGeom_SurfacePatch_Create() -> "opencascade::handle< StepGeom_SurfacePatch >":
    return _StepGeom.Handle_StepGeom_SurfacePatch_Create()

def Handle_StepGeom_SurfacePatch_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_SurfacePatch >":
    return _StepGeom.Handle_StepGeom_SurfacePatch_DownCast(t)

def Handle_StepGeom_SurfacePatch_IsNull(t: "opencascade::handle< StepGeom_SurfacePatch > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_SurfacePatch_IsNull(t)

def Handle_StepGeom_TrimmingMember_Create() -> "opencascade::handle< StepGeom_TrimmingMember >":
    return _StepGeom.Handle_StepGeom_TrimmingMember_Create()

def Handle_StepGeom_TrimmingMember_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_TrimmingMember >":
    return _StepGeom.Handle_StepGeom_TrimmingMember_DownCast(t)

def Handle_StepGeom_TrimmingMember_IsNull(t: "opencascade::handle< StepGeom_TrimmingMember > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_TrimmingMember_IsNull(t)

def Handle_StepGeom_CartesianTransformationOperator_Create() -> "opencascade::handle< StepGeom_CartesianTransformationOperator >":
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator_Create()

def Handle_StepGeom_CartesianTransformationOperator_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_CartesianTransformationOperator >":
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator_DownCast(t)

def Handle_StepGeom_CartesianTransformationOperator_IsNull(t: "opencascade::handle< StepGeom_CartesianTransformationOperator > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator_IsNull(t)

def Handle_StepGeom_Curve_Create() -> "opencascade::handle< StepGeom_Curve >":
    return _StepGeom.Handle_StepGeom_Curve_Create()

def Handle_StepGeom_Curve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Curve >":
    return _StepGeom.Handle_StepGeom_Curve_DownCast(t)

def Handle_StepGeom_Curve_IsNull(t: "opencascade::handle< StepGeom_Curve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Curve_IsNull(t)

def Handle_StepGeom_Direction_Create() -> "opencascade::handle< StepGeom_Direction >":
    return _StepGeom.Handle_StepGeom_Direction_Create()

def Handle_StepGeom_Direction_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Direction >":
    return _StepGeom.Handle_StepGeom_Direction_DownCast(t)

def Handle_StepGeom_Direction_IsNull(t: "opencascade::handle< StepGeom_Direction > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Direction_IsNull(t)

def Handle_StepGeom_Placement_Create() -> "opencascade::handle< StepGeom_Placement >":
    return _StepGeom.Handle_StepGeom_Placement_Create()

def Handle_StepGeom_Placement_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Placement >":
    return _StepGeom.Handle_StepGeom_Placement_DownCast(t)

def Handle_StepGeom_Placement_IsNull(t: "opencascade::handle< StepGeom_Placement > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Placement_IsNull(t)

def Handle_StepGeom_Point_Create() -> "opencascade::handle< StepGeom_Point >":
    return _StepGeom.Handle_StepGeom_Point_Create()

def Handle_StepGeom_Point_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Point >":
    return _StepGeom.Handle_StepGeom_Point_DownCast(t)

def Handle_StepGeom_Point_IsNull(t: "opencascade::handle< StepGeom_Point > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Point_IsNull(t)

def Handle_StepGeom_ReparametrisedCompositeCurveSegment_Create() -> "opencascade::handle< StepGeom_ReparametrisedCompositeCurveSegment >":
    return _StepGeom.Handle_StepGeom_ReparametrisedCompositeCurveSegment_Create()

def Handle_StepGeom_ReparametrisedCompositeCurveSegment_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_ReparametrisedCompositeCurveSegment >":
    return _StepGeom.Handle_StepGeom_ReparametrisedCompositeCurveSegment_DownCast(t)

def Handle_StepGeom_ReparametrisedCompositeCurveSegment_IsNull(t: "opencascade::handle< StepGeom_ReparametrisedCompositeCurveSegment > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_ReparametrisedCompositeCurveSegment_IsNull(t)

def Handle_StepGeom_Surface_Create() -> "opencascade::handle< StepGeom_Surface >":
    return _StepGeom.Handle_StepGeom_Surface_Create()

def Handle_StepGeom_Surface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Surface >":
    return _StepGeom.Handle_StepGeom_Surface_DownCast(t)

def Handle_StepGeom_Surface_IsNull(t: "opencascade::handle< StepGeom_Surface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Surface_IsNull(t)

def Handle_StepGeom_Vector_Create() -> "opencascade::handle< StepGeom_Vector >":
    return _StepGeom.Handle_StepGeom_Vector_Create()

def Handle_StepGeom_Vector_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Vector >":
    return _StepGeom.Handle_StepGeom_Vector_DownCast(t)

def Handle_StepGeom_Vector_IsNull(t: "opencascade::handle< StepGeom_Vector > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Vector_IsNull(t)

def Handle_StepGeom_Axis1Placement_Create() -> "opencascade::handle< StepGeom_Axis1Placement >":
    return _StepGeom.Handle_StepGeom_Axis1Placement_Create()

def Handle_StepGeom_Axis1Placement_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Axis1Placement >":
    return _StepGeom.Handle_StepGeom_Axis1Placement_DownCast(t)

def Handle_StepGeom_Axis1Placement_IsNull(t: "opencascade::handle< StepGeom_Axis1Placement > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Axis1Placement_IsNull(t)

def Handle_StepGeom_Axis2Placement2d_Create() -> "opencascade::handle< StepGeom_Axis2Placement2d >":
    return _StepGeom.Handle_StepGeom_Axis2Placement2d_Create()

def Handle_StepGeom_Axis2Placement2d_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Axis2Placement2d >":
    return _StepGeom.Handle_StepGeom_Axis2Placement2d_DownCast(t)

def Handle_StepGeom_Axis2Placement2d_IsNull(t: "opencascade::handle< StepGeom_Axis2Placement2d > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Axis2Placement2d_IsNull(t)

def Handle_StepGeom_Axis2Placement3d_Create() -> "opencascade::handle< StepGeom_Axis2Placement3d >":
    return _StepGeom.Handle_StepGeom_Axis2Placement3d_Create()

def Handle_StepGeom_Axis2Placement3d_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Axis2Placement3d >":
    return _StepGeom.Handle_StepGeom_Axis2Placement3d_DownCast(t)

def Handle_StepGeom_Axis2Placement3d_IsNull(t: "opencascade::handle< StepGeom_Axis2Placement3d > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Axis2Placement3d_IsNull(t)

def Handle_StepGeom_BoundedCurve_Create() -> "opencascade::handle< StepGeom_BoundedCurve >":
    return _StepGeom.Handle_StepGeom_BoundedCurve_Create()

def Handle_StepGeom_BoundedCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_BoundedCurve >":
    return _StepGeom.Handle_StepGeom_BoundedCurve_DownCast(t)

def Handle_StepGeom_BoundedCurve_IsNull(t: "opencascade::handle< StepGeom_BoundedCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_BoundedCurve_IsNull(t)

def Handle_StepGeom_BoundedSurface_Create() -> "opencascade::handle< StepGeom_BoundedSurface >":
    return _StepGeom.Handle_StepGeom_BoundedSurface_Create()

def Handle_StepGeom_BoundedSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_BoundedSurface >":
    return _StepGeom.Handle_StepGeom_BoundedSurface_DownCast(t)

def Handle_StepGeom_BoundedSurface_IsNull(t: "opencascade::handle< StepGeom_BoundedSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_BoundedSurface_IsNull(t)

def Handle_StepGeom_CartesianPoint_Create() -> "opencascade::handle< StepGeom_CartesianPoint >":
    return _StepGeom.Handle_StepGeom_CartesianPoint_Create()

def Handle_StepGeom_CartesianPoint_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_CartesianPoint >":
    return _StepGeom.Handle_StepGeom_CartesianPoint_DownCast(t)

def Handle_StepGeom_CartesianPoint_IsNull(t: "opencascade::handle< StepGeom_CartesianPoint > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_CartesianPoint_IsNull(t)

def Handle_StepGeom_CartesianTransformationOperator2d_Create() -> "opencascade::handle< StepGeom_CartesianTransformationOperator2d >":
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator2d_Create()

def Handle_StepGeom_CartesianTransformationOperator2d_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_CartesianTransformationOperator2d >":
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator2d_DownCast(t)

def Handle_StepGeom_CartesianTransformationOperator2d_IsNull(t: "opencascade::handle< StepGeom_CartesianTransformationOperator2d > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator2d_IsNull(t)

def Handle_StepGeom_CartesianTransformationOperator3d_Create() -> "opencascade::handle< StepGeom_CartesianTransformationOperator3d >":
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator3d_Create()

def Handle_StepGeom_CartesianTransformationOperator3d_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_CartesianTransformationOperator3d >":
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator3d_DownCast(t)

def Handle_StepGeom_CartesianTransformationOperator3d_IsNull(t: "opencascade::handle< StepGeom_CartesianTransformationOperator3d > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_CartesianTransformationOperator3d_IsNull(t)

def Handle_StepGeom_Conic_Create() -> "opencascade::handle< StepGeom_Conic >":
    return _StepGeom.Handle_StepGeom_Conic_Create()

def Handle_StepGeom_Conic_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Conic >":
    return _StepGeom.Handle_StepGeom_Conic_DownCast(t)

def Handle_StepGeom_Conic_IsNull(t: "opencascade::handle< StepGeom_Conic > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Conic_IsNull(t)

def Handle_StepGeom_CurveReplica_Create() -> "opencascade::handle< StepGeom_CurveReplica >":
    return _StepGeom.Handle_StepGeom_CurveReplica_Create()

def Handle_StepGeom_CurveReplica_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_CurveReplica >":
    return _StepGeom.Handle_StepGeom_CurveReplica_DownCast(t)

def Handle_StepGeom_CurveReplica_IsNull(t: "opencascade::handle< StepGeom_CurveReplica > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_CurveReplica_IsNull(t)

def Handle_StepGeom_DegeneratePcurve_Create() -> "opencascade::handle< StepGeom_DegeneratePcurve >":
    return _StepGeom.Handle_StepGeom_DegeneratePcurve_Create()

def Handle_StepGeom_DegeneratePcurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_DegeneratePcurve >":
    return _StepGeom.Handle_StepGeom_DegeneratePcurve_DownCast(t)

def Handle_StepGeom_DegeneratePcurve_IsNull(t: "opencascade::handle< StepGeom_DegeneratePcurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_DegeneratePcurve_IsNull(t)

def Handle_StepGeom_ElementarySurface_Create() -> "opencascade::handle< StepGeom_ElementarySurface >":
    return _StepGeom.Handle_StepGeom_ElementarySurface_Create()

def Handle_StepGeom_ElementarySurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_ElementarySurface >":
    return _StepGeom.Handle_StepGeom_ElementarySurface_DownCast(t)

def Handle_StepGeom_ElementarySurface_IsNull(t: "opencascade::handle< StepGeom_ElementarySurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_ElementarySurface_IsNull(t)

def Handle_StepGeom_Line_Create() -> "opencascade::handle< StepGeom_Line >":
    return _StepGeom.Handle_StepGeom_Line_Create()

def Handle_StepGeom_Line_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Line >":
    return _StepGeom.Handle_StepGeom_Line_DownCast(t)

def Handle_StepGeom_Line_IsNull(t: "opencascade::handle< StepGeom_Line > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Line_IsNull(t)

def Handle_StepGeom_OffsetCurve3d_Create() -> "opencascade::handle< StepGeom_OffsetCurve3d >":
    return _StepGeom.Handle_StepGeom_OffsetCurve3d_Create()

def Handle_StepGeom_OffsetCurve3d_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_OffsetCurve3d >":
    return _StepGeom.Handle_StepGeom_OffsetCurve3d_DownCast(t)

def Handle_StepGeom_OffsetCurve3d_IsNull(t: "opencascade::handle< StepGeom_OffsetCurve3d > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_OffsetCurve3d_IsNull(t)

def Handle_StepGeom_OffsetSurface_Create() -> "opencascade::handle< StepGeom_OffsetSurface >":
    return _StepGeom.Handle_StepGeom_OffsetSurface_Create()

def Handle_StepGeom_OffsetSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_OffsetSurface >":
    return _StepGeom.Handle_StepGeom_OffsetSurface_DownCast(t)

def Handle_StepGeom_OffsetSurface_IsNull(t: "opencascade::handle< StepGeom_OffsetSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_OffsetSurface_IsNull(t)

def Handle_StepGeom_OrientedSurface_Create() -> "opencascade::handle< StepGeom_OrientedSurface >":
    return _StepGeom.Handle_StepGeom_OrientedSurface_Create()

def Handle_StepGeom_OrientedSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_OrientedSurface >":
    return _StepGeom.Handle_StepGeom_OrientedSurface_DownCast(t)

def Handle_StepGeom_OrientedSurface_IsNull(t: "opencascade::handle< StepGeom_OrientedSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_OrientedSurface_IsNull(t)

def Handle_StepGeom_Pcurve_Create() -> "opencascade::handle< StepGeom_Pcurve >":
    return _StepGeom.Handle_StepGeom_Pcurve_Create()

def Handle_StepGeom_Pcurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Pcurve >":
    return _StepGeom.Handle_StepGeom_Pcurve_DownCast(t)

def Handle_StepGeom_Pcurve_IsNull(t: "opencascade::handle< StepGeom_Pcurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Pcurve_IsNull(t)

def Handle_StepGeom_PointOnCurve_Create() -> "opencascade::handle< StepGeom_PointOnCurve >":
    return _StepGeom.Handle_StepGeom_PointOnCurve_Create()

def Handle_StepGeom_PointOnCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_PointOnCurve >":
    return _StepGeom.Handle_StepGeom_PointOnCurve_DownCast(t)

def Handle_StepGeom_PointOnCurve_IsNull(t: "opencascade::handle< StepGeom_PointOnCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_PointOnCurve_IsNull(t)

def Handle_StepGeom_PointOnSurface_Create() -> "opencascade::handle< StepGeom_PointOnSurface >":
    return _StepGeom.Handle_StepGeom_PointOnSurface_Create()

def Handle_StepGeom_PointOnSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_PointOnSurface >":
    return _StepGeom.Handle_StepGeom_PointOnSurface_DownCast(t)

def Handle_StepGeom_PointOnSurface_IsNull(t: "opencascade::handle< StepGeom_PointOnSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_PointOnSurface_IsNull(t)

def Handle_StepGeom_PointReplica_Create() -> "opencascade::handle< StepGeom_PointReplica >":
    return _StepGeom.Handle_StepGeom_PointReplica_Create()

def Handle_StepGeom_PointReplica_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_PointReplica >":
    return _StepGeom.Handle_StepGeom_PointReplica_DownCast(t)

def Handle_StepGeom_PointReplica_IsNull(t: "opencascade::handle< StepGeom_PointReplica > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_PointReplica_IsNull(t)

def Handle_StepGeom_SurfaceCurve_Create() -> "opencascade::handle< StepGeom_SurfaceCurve >":
    return _StepGeom.Handle_StepGeom_SurfaceCurve_Create()

def Handle_StepGeom_SurfaceCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_SurfaceCurve >":
    return _StepGeom.Handle_StepGeom_SurfaceCurve_DownCast(t)

def Handle_StepGeom_SurfaceCurve_IsNull(t: "opencascade::handle< StepGeom_SurfaceCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_SurfaceCurve_IsNull(t)

def Handle_StepGeom_SurfaceReplica_Create() -> "opencascade::handle< StepGeom_SurfaceReplica >":
    return _StepGeom.Handle_StepGeom_SurfaceReplica_Create()

def Handle_StepGeom_SurfaceReplica_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_SurfaceReplica >":
    return _StepGeom.Handle_StepGeom_SurfaceReplica_DownCast(t)

def Handle_StepGeom_SurfaceReplica_IsNull(t: "opencascade::handle< StepGeom_SurfaceReplica > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_SurfaceReplica_IsNull(t)

def Handle_StepGeom_SweptSurface_Create() -> "opencascade::handle< StepGeom_SweptSurface >":
    return _StepGeom.Handle_StepGeom_SweptSurface_Create()

def Handle_StepGeom_SweptSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_SweptSurface >":
    return _StepGeom.Handle_StepGeom_SweptSurface_DownCast(t)

def Handle_StepGeom_SweptSurface_IsNull(t: "opencascade::handle< StepGeom_SweptSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_SweptSurface_IsNull(t)

def Handle_StepGeom_BSplineCurve_Create() -> "opencascade::handle< StepGeom_BSplineCurve >":
    return _StepGeom.Handle_StepGeom_BSplineCurve_Create()

def Handle_StepGeom_BSplineCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_BSplineCurve >":
    return _StepGeom.Handle_StepGeom_BSplineCurve_DownCast(t)

def Handle_StepGeom_BSplineCurve_IsNull(t: "opencascade::handle< StepGeom_BSplineCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_BSplineCurve_IsNull(t)

def Handle_StepGeom_BSplineSurface_Create() -> "opencascade::handle< StepGeom_BSplineSurface >":
    return _StepGeom.Handle_StepGeom_BSplineSurface_Create()

def Handle_StepGeom_BSplineSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_BSplineSurface >":
    return _StepGeom.Handle_StepGeom_BSplineSurface_DownCast(t)

def Handle_StepGeom_BSplineSurface_IsNull(t: "opencascade::handle< StepGeom_BSplineSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_BSplineSurface_IsNull(t)

def Handle_StepGeom_Circle_Create() -> "opencascade::handle< StepGeom_Circle >":
    return _StepGeom.Handle_StepGeom_Circle_Create()

def Handle_StepGeom_Circle_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Circle >":
    return _StepGeom.Handle_StepGeom_Circle_DownCast(t)

def Handle_StepGeom_Circle_IsNull(t: "opencascade::handle< StepGeom_Circle > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Circle_IsNull(t)

def Handle_StepGeom_CompositeCurve_Create() -> "opencascade::handle< StepGeom_CompositeCurve >":
    return _StepGeom.Handle_StepGeom_CompositeCurve_Create()

def Handle_StepGeom_CompositeCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_CompositeCurve >":
    return _StepGeom.Handle_StepGeom_CompositeCurve_DownCast(t)

def Handle_StepGeom_CompositeCurve_IsNull(t: "opencascade::handle< StepGeom_CompositeCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_CompositeCurve_IsNull(t)

def Handle_StepGeom_ConicalSurface_Create() -> "opencascade::handle< StepGeom_ConicalSurface >":
    return _StepGeom.Handle_StepGeom_ConicalSurface_Create()

def Handle_StepGeom_ConicalSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_ConicalSurface >":
    return _StepGeom.Handle_StepGeom_ConicalSurface_DownCast(t)

def Handle_StepGeom_ConicalSurface_IsNull(t: "opencascade::handle< StepGeom_ConicalSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_ConicalSurface_IsNull(t)

def Handle_StepGeom_CurveBoundedSurface_Create() -> "opencascade::handle< StepGeom_CurveBoundedSurface >":
    return _StepGeom.Handle_StepGeom_CurveBoundedSurface_Create()

def Handle_StepGeom_CurveBoundedSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_CurveBoundedSurface >":
    return _StepGeom.Handle_StepGeom_CurveBoundedSurface_DownCast(t)

def Handle_StepGeom_CurveBoundedSurface_IsNull(t: "opencascade::handle< StepGeom_CurveBoundedSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_CurveBoundedSurface_IsNull(t)

def Handle_StepGeom_CylindricalSurface_Create() -> "opencascade::handle< StepGeom_CylindricalSurface >":
    return _StepGeom.Handle_StepGeom_CylindricalSurface_Create()

def Handle_StepGeom_CylindricalSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_CylindricalSurface >":
    return _StepGeom.Handle_StepGeom_CylindricalSurface_DownCast(t)

def Handle_StepGeom_CylindricalSurface_IsNull(t: "opencascade::handle< StepGeom_CylindricalSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_CylindricalSurface_IsNull(t)

def Handle_StepGeom_Ellipse_Create() -> "opencascade::handle< StepGeom_Ellipse >":
    return _StepGeom.Handle_StepGeom_Ellipse_Create()

def Handle_StepGeom_Ellipse_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Ellipse >":
    return _StepGeom.Handle_StepGeom_Ellipse_DownCast(t)

def Handle_StepGeom_Ellipse_IsNull(t: "opencascade::handle< StepGeom_Ellipse > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Ellipse_IsNull(t)

def Handle_StepGeom_EvaluatedDegeneratePcurve_Create() -> "opencascade::handle< StepGeom_EvaluatedDegeneratePcurve >":
    return _StepGeom.Handle_StepGeom_EvaluatedDegeneratePcurve_Create()

def Handle_StepGeom_EvaluatedDegeneratePcurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_EvaluatedDegeneratePcurve >":
    return _StepGeom.Handle_StepGeom_EvaluatedDegeneratePcurve_DownCast(t)

def Handle_StepGeom_EvaluatedDegeneratePcurve_IsNull(t: "opencascade::handle< StepGeom_EvaluatedDegeneratePcurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_EvaluatedDegeneratePcurve_IsNull(t)

def Handle_StepGeom_Hyperbola_Create() -> "opencascade::handle< StepGeom_Hyperbola >":
    return _StepGeom.Handle_StepGeom_Hyperbola_Create()

def Handle_StepGeom_Hyperbola_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Hyperbola >":
    return _StepGeom.Handle_StepGeom_Hyperbola_DownCast(t)

def Handle_StepGeom_Hyperbola_IsNull(t: "opencascade::handle< StepGeom_Hyperbola > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Hyperbola_IsNull(t)

def Handle_StepGeom_IntersectionCurve_Create() -> "opencascade::handle< StepGeom_IntersectionCurve >":
    return _StepGeom.Handle_StepGeom_IntersectionCurve_Create()

def Handle_StepGeom_IntersectionCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_IntersectionCurve >":
    return _StepGeom.Handle_StepGeom_IntersectionCurve_DownCast(t)

def Handle_StepGeom_IntersectionCurve_IsNull(t: "opencascade::handle< StepGeom_IntersectionCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_IntersectionCurve_IsNull(t)

def Handle_StepGeom_Parabola_Create() -> "opencascade::handle< StepGeom_Parabola >":
    return _StepGeom.Handle_StepGeom_Parabola_Create()

def Handle_StepGeom_Parabola_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Parabola >":
    return _StepGeom.Handle_StepGeom_Parabola_DownCast(t)

def Handle_StepGeom_Parabola_IsNull(t: "opencascade::handle< StepGeom_Parabola > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Parabola_IsNull(t)

def Handle_StepGeom_Plane_Create() -> "opencascade::handle< StepGeom_Plane >":
    return _StepGeom.Handle_StepGeom_Plane_Create()

def Handle_StepGeom_Plane_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Plane >":
    return _StepGeom.Handle_StepGeom_Plane_DownCast(t)

def Handle_StepGeom_Plane_IsNull(t: "opencascade::handle< StepGeom_Plane > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Plane_IsNull(t)

def Handle_StepGeom_Polyline_Create() -> "opencascade::handle< StepGeom_Polyline >":
    return _StepGeom.Handle_StepGeom_Polyline_Create()

def Handle_StepGeom_Polyline_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_Polyline >":
    return _StepGeom.Handle_StepGeom_Polyline_DownCast(t)

def Handle_StepGeom_Polyline_IsNull(t: "opencascade::handle< StepGeom_Polyline > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_Polyline_IsNull(t)

def Handle_StepGeom_RectangularCompositeSurface_Create() -> "opencascade::handle< StepGeom_RectangularCompositeSurface >":
    return _StepGeom.Handle_StepGeom_RectangularCompositeSurface_Create()

def Handle_StepGeom_RectangularCompositeSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_RectangularCompositeSurface >":
    return _StepGeom.Handle_StepGeom_RectangularCompositeSurface_DownCast(t)

def Handle_StepGeom_RectangularCompositeSurface_IsNull(t: "opencascade::handle< StepGeom_RectangularCompositeSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_RectangularCompositeSurface_IsNull(t)

def Handle_StepGeom_RectangularTrimmedSurface_Create() -> "opencascade::handle< StepGeom_RectangularTrimmedSurface >":
    return _StepGeom.Handle_StepGeom_RectangularTrimmedSurface_Create()

def Handle_StepGeom_RectangularTrimmedSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_RectangularTrimmedSurface >":
    return _StepGeom.Handle_StepGeom_RectangularTrimmedSurface_DownCast(t)

def Handle_StepGeom_RectangularTrimmedSurface_IsNull(t: "opencascade::handle< StepGeom_RectangularTrimmedSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_RectangularTrimmedSurface_IsNull(t)

def Handle_StepGeom_SeamCurve_Create() -> "opencascade::handle< StepGeom_SeamCurve >":
    return _StepGeom.Handle_StepGeom_SeamCurve_Create()

def Handle_StepGeom_SeamCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_SeamCurve >":
    return _StepGeom.Handle_StepGeom_SeamCurve_DownCast(t)

def Handle_StepGeom_SeamCurve_IsNull(t: "opencascade::handle< StepGeom_SeamCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_SeamCurve_IsNull(t)

def Handle_StepGeom_SphericalSurface_Create() -> "opencascade::handle< StepGeom_SphericalSurface >":
    return _StepGeom.Handle_StepGeom_SphericalSurface_Create()

def Handle_StepGeom_SphericalSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_SphericalSurface >":
    return _StepGeom.Handle_StepGeom_SphericalSurface_DownCast(t)

def Handle_StepGeom_SphericalSurface_IsNull(t: "opencascade::handle< StepGeom_SphericalSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_SphericalSurface_IsNull(t)

def Handle_StepGeom_SurfaceCurveAndBoundedCurve_Create() -> "opencascade::handle< StepGeom_SurfaceCurveAndBoundedCurve >":
    return _StepGeom.Handle_StepGeom_SurfaceCurveAndBoundedCurve_Create()

def Handle_StepGeom_SurfaceCurveAndBoundedCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_SurfaceCurveAndBoundedCurve >":
    return _StepGeom.Handle_StepGeom_SurfaceCurveAndBoundedCurve_DownCast(t)

def Handle_StepGeom_SurfaceCurveAndBoundedCurve_IsNull(t: "opencascade::handle< StepGeom_SurfaceCurveAndBoundedCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_SurfaceCurveAndBoundedCurve_IsNull(t)

def Handle_StepGeom_SurfaceOfLinearExtrusion_Create() -> "opencascade::handle< StepGeom_SurfaceOfLinearExtrusion >":
    return _StepGeom.Handle_StepGeom_SurfaceOfLinearExtrusion_Create()

def Handle_StepGeom_SurfaceOfLinearExtrusion_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_SurfaceOfLinearExtrusion >":
    return _StepGeom.Handle_StepGeom_SurfaceOfLinearExtrusion_DownCast(t)

def Handle_StepGeom_SurfaceOfLinearExtrusion_IsNull(t: "opencascade::handle< StepGeom_SurfaceOfLinearExtrusion > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_SurfaceOfLinearExtrusion_IsNull(t)

def Handle_StepGeom_SurfaceOfRevolution_Create() -> "opencascade::handle< StepGeom_SurfaceOfRevolution >":
    return _StepGeom.Handle_StepGeom_SurfaceOfRevolution_Create()

def Handle_StepGeom_SurfaceOfRevolution_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_SurfaceOfRevolution >":
    return _StepGeom.Handle_StepGeom_SurfaceOfRevolution_DownCast(t)

def Handle_StepGeom_SurfaceOfRevolution_IsNull(t: "opencascade::handle< StepGeom_SurfaceOfRevolution > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_SurfaceOfRevolution_IsNull(t)

def Handle_StepGeom_ToroidalSurface_Create() -> "opencascade::handle< StepGeom_ToroidalSurface >":
    return _StepGeom.Handle_StepGeom_ToroidalSurface_Create()

def Handle_StepGeom_ToroidalSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_ToroidalSurface >":
    return _StepGeom.Handle_StepGeom_ToroidalSurface_DownCast(t)

def Handle_StepGeom_ToroidalSurface_IsNull(t: "opencascade::handle< StepGeom_ToroidalSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_ToroidalSurface_IsNull(t)

def Handle_StepGeom_TrimmedCurve_Create() -> "opencascade::handle< StepGeom_TrimmedCurve >":
    return _StepGeom.Handle_StepGeom_TrimmedCurve_Create()

def Handle_StepGeom_TrimmedCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_TrimmedCurve >":
    return _StepGeom.Handle_StepGeom_TrimmedCurve_DownCast(t)

def Handle_StepGeom_TrimmedCurve_IsNull(t: "opencascade::handle< StepGeom_TrimmedCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_TrimmedCurve_IsNull(t)

def Handle_StepGeom_BSplineCurveWithKnots_Create() -> "opencascade::handle< StepGeom_BSplineCurveWithKnots >":
    return _StepGeom.Handle_StepGeom_BSplineCurveWithKnots_Create()

def Handle_StepGeom_BSplineCurveWithKnots_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_BSplineCurveWithKnots >":
    return _StepGeom.Handle_StepGeom_BSplineCurveWithKnots_DownCast(t)

def Handle_StepGeom_BSplineCurveWithKnots_IsNull(t: "opencascade::handle< StepGeom_BSplineCurveWithKnots > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_BSplineCurveWithKnots_IsNull(t)

def Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_Create() -> "opencascade::handle< StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve >":
    return _StepGeom.Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_Create()

def Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve >":
    return _StepGeom.Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_DownCast(t)

def Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_IsNull(t: "opencascade::handle< StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_IsNull(t)

def Handle_StepGeom_BSplineSurfaceWithKnots_Create() -> "opencascade::handle< StepGeom_BSplineSurfaceWithKnots >":
    return _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnots_Create()

def Handle_StepGeom_BSplineSurfaceWithKnots_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_BSplineSurfaceWithKnots >":
    return _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnots_DownCast(t)

def Handle_StepGeom_BSplineSurfaceWithKnots_IsNull(t: "opencascade::handle< StepGeom_BSplineSurfaceWithKnots > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnots_IsNull(t)

def Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_Create() -> "opencascade::handle< StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface >":
    return _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_Create()

def Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface >":
    return _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_DownCast(t)

def Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_IsNull(t: "opencascade::handle< StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_IsNull(t)

def Handle_StepGeom_BezierCurve_Create() -> "opencascade::handle< StepGeom_BezierCurve >":
    return _StepGeom.Handle_StepGeom_BezierCurve_Create()

def Handle_StepGeom_BezierCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_BezierCurve >":
    return _StepGeom.Handle_StepGeom_BezierCurve_DownCast(t)

def Handle_StepGeom_BezierCurve_IsNull(t: "opencascade::handle< StepGeom_BezierCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_BezierCurve_IsNull(t)

def Handle_StepGeom_BezierCurveAndRationalBSplineCurve_Create() -> "opencascade::handle< StepGeom_BezierCurveAndRationalBSplineCurve >":
    return _StepGeom.Handle_StepGeom_BezierCurveAndRationalBSplineCurve_Create()

def Handle_StepGeom_BezierCurveAndRationalBSplineCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_BezierCurveAndRationalBSplineCurve >":
    return _StepGeom.Handle_StepGeom_BezierCurveAndRationalBSplineCurve_DownCast(t)

def Handle_StepGeom_BezierCurveAndRationalBSplineCurve_IsNull(t: "opencascade::handle< StepGeom_BezierCurveAndRationalBSplineCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_BezierCurveAndRationalBSplineCurve_IsNull(t)

def Handle_StepGeom_BezierSurface_Create() -> "opencascade::handle< StepGeom_BezierSurface >":
    return _StepGeom.Handle_StepGeom_BezierSurface_Create()

def Handle_StepGeom_BezierSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_BezierSurface >":
    return _StepGeom.Handle_StepGeom_BezierSurface_DownCast(t)

def Handle_StepGeom_BezierSurface_IsNull(t: "opencascade::handle< StepGeom_BezierSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_BezierSurface_IsNull(t)

def Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_Create() -> "opencascade::handle< StepGeom_BezierSurfaceAndRationalBSplineSurface >":
    return _StepGeom.Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_Create()

def Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_BezierSurfaceAndRationalBSplineSurface >":
    return _StepGeom.Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_DownCast(t)

def Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_IsNull(t: "opencascade::handle< StepGeom_BezierSurfaceAndRationalBSplineSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_BezierSurfaceAndRationalBSplineSurface_IsNull(t)

def Handle_StepGeom_CompositeCurveOnSurface_Create() -> "opencascade::handle< StepGeom_CompositeCurveOnSurface >":
    return _StepGeom.Handle_StepGeom_CompositeCurveOnSurface_Create()

def Handle_StepGeom_CompositeCurveOnSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_CompositeCurveOnSurface >":
    return _StepGeom.Handle_StepGeom_CompositeCurveOnSurface_DownCast(t)

def Handle_StepGeom_CompositeCurveOnSurface_IsNull(t: "opencascade::handle< StepGeom_CompositeCurveOnSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_CompositeCurveOnSurface_IsNull(t)

def Handle_StepGeom_DegenerateToroidalSurface_Create() -> "opencascade::handle< StepGeom_DegenerateToroidalSurface >":
    return _StepGeom.Handle_StepGeom_DegenerateToroidalSurface_Create()

def Handle_StepGeom_DegenerateToroidalSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_DegenerateToroidalSurface >":
    return _StepGeom.Handle_StepGeom_DegenerateToroidalSurface_DownCast(t)

def Handle_StepGeom_DegenerateToroidalSurface_IsNull(t: "opencascade::handle< StepGeom_DegenerateToroidalSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_DegenerateToroidalSurface_IsNull(t)

def Handle_StepGeom_QuasiUniformCurve_Create() -> "opencascade::handle< StepGeom_QuasiUniformCurve >":
    return _StepGeom.Handle_StepGeom_QuasiUniformCurve_Create()

def Handle_StepGeom_QuasiUniformCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_QuasiUniformCurve >":
    return _StepGeom.Handle_StepGeom_QuasiUniformCurve_DownCast(t)

def Handle_StepGeom_QuasiUniformCurve_IsNull(t: "opencascade::handle< StepGeom_QuasiUniformCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_QuasiUniformCurve_IsNull(t)

def Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_Create() -> "opencascade::handle< StepGeom_QuasiUniformCurveAndRationalBSplineCurve >":
    return _StepGeom.Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_Create()

def Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_QuasiUniformCurveAndRationalBSplineCurve >":
    return _StepGeom.Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_DownCast(t)

def Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_IsNull(t: "opencascade::handle< StepGeom_QuasiUniformCurveAndRationalBSplineCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_QuasiUniformCurveAndRationalBSplineCurve_IsNull(t)

def Handle_StepGeom_QuasiUniformSurface_Create() -> "opencascade::handle< StepGeom_QuasiUniformSurface >":
    return _StepGeom.Handle_StepGeom_QuasiUniformSurface_Create()

def Handle_StepGeom_QuasiUniformSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_QuasiUniformSurface >":
    return _StepGeom.Handle_StepGeom_QuasiUniformSurface_DownCast(t)

def Handle_StepGeom_QuasiUniformSurface_IsNull(t: "opencascade::handle< StepGeom_QuasiUniformSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_QuasiUniformSurface_IsNull(t)

def Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_Create() -> "opencascade::handle< StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface >":
    return _StepGeom.Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_Create()

def Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface >":
    return _StepGeom.Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_DownCast(t)

def Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_IsNull(t: "opencascade::handle< StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_IsNull(t)

def Handle_StepGeom_RationalBSplineCurve_Create() -> "opencascade::handle< StepGeom_RationalBSplineCurve >":
    return _StepGeom.Handle_StepGeom_RationalBSplineCurve_Create()

def Handle_StepGeom_RationalBSplineCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_RationalBSplineCurve >":
    return _StepGeom.Handle_StepGeom_RationalBSplineCurve_DownCast(t)

def Handle_StepGeom_RationalBSplineCurve_IsNull(t: "opencascade::handle< StepGeom_RationalBSplineCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_RationalBSplineCurve_IsNull(t)

def Handle_StepGeom_RationalBSplineSurface_Create() -> "opencascade::handle< StepGeom_RationalBSplineSurface >":
    return _StepGeom.Handle_StepGeom_RationalBSplineSurface_Create()

def Handle_StepGeom_RationalBSplineSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_RationalBSplineSurface >":
    return _StepGeom.Handle_StepGeom_RationalBSplineSurface_DownCast(t)

def Handle_StepGeom_RationalBSplineSurface_IsNull(t: "opencascade::handle< StepGeom_RationalBSplineSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_RationalBSplineSurface_IsNull(t)

def Handle_StepGeom_UniformCurve_Create() -> "opencascade::handle< StepGeom_UniformCurve >":
    return _StepGeom.Handle_StepGeom_UniformCurve_Create()

def Handle_StepGeom_UniformCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_UniformCurve >":
    return _StepGeom.Handle_StepGeom_UniformCurve_DownCast(t)

def Handle_StepGeom_UniformCurve_IsNull(t: "opencascade::handle< StepGeom_UniformCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_UniformCurve_IsNull(t)

def Handle_StepGeom_UniformCurveAndRationalBSplineCurve_Create() -> "opencascade::handle< StepGeom_UniformCurveAndRationalBSplineCurve >":
    return _StepGeom.Handle_StepGeom_UniformCurveAndRationalBSplineCurve_Create()

def Handle_StepGeom_UniformCurveAndRationalBSplineCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_UniformCurveAndRationalBSplineCurve >":
    return _StepGeom.Handle_StepGeom_UniformCurveAndRationalBSplineCurve_DownCast(t)

def Handle_StepGeom_UniformCurveAndRationalBSplineCurve_IsNull(t: "opencascade::handle< StepGeom_UniformCurveAndRationalBSplineCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_UniformCurveAndRationalBSplineCurve_IsNull(t)

def Handle_StepGeom_UniformSurface_Create() -> "opencascade::handle< StepGeom_UniformSurface >":
    return _StepGeom.Handle_StepGeom_UniformSurface_Create()

def Handle_StepGeom_UniformSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_UniformSurface >":
    return _StepGeom.Handle_StepGeom_UniformSurface_DownCast(t)

def Handle_StepGeom_UniformSurface_IsNull(t: "opencascade::handle< StepGeom_UniformSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_UniformSurface_IsNull(t)

def Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_Create() -> "opencascade::handle< StepGeom_UniformSurfaceAndRationalBSplineSurface >":
    return _StepGeom.Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_Create()

def Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_UniformSurfaceAndRationalBSplineSurface >":
    return _StepGeom.Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_DownCast(t)

def Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_IsNull(t: "opencascade::handle< StepGeom_UniformSurfaceAndRationalBSplineSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_UniformSurfaceAndRationalBSplineSurface_IsNull(t)

def Handle_StepGeom_BoundaryCurve_Create() -> "opencascade::handle< StepGeom_BoundaryCurve >":
    return _StepGeom.Handle_StepGeom_BoundaryCurve_Create()

def Handle_StepGeom_BoundaryCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_BoundaryCurve >":
    return _StepGeom.Handle_StepGeom_BoundaryCurve_DownCast(t)

def Handle_StepGeom_BoundaryCurve_IsNull(t: "opencascade::handle< StepGeom_BoundaryCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_BoundaryCurve_IsNull(t)

def Handle_StepGeom_OuterBoundaryCurve_Create() -> "opencascade::handle< StepGeom_OuterBoundaryCurve >":
    return _StepGeom.Handle_StepGeom_OuterBoundaryCurve_Create()

def Handle_StepGeom_OuterBoundaryCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_OuterBoundaryCurve >":
    return _StepGeom.Handle_StepGeom_OuterBoundaryCurve_DownCast(t)

def Handle_StepGeom_OuterBoundaryCurve_IsNull(t: "opencascade::handle< StepGeom_OuterBoundaryCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_OuterBoundaryCurve_IsNull(t)

def Handle_StepGeom_HArray1OfCartesianPoint_Create() -> "opencascade::handle< StepGeom_HArray1OfCartesianPoint >":
    return _StepGeom.Handle_StepGeom_HArray1OfCartesianPoint_Create()

def Handle_StepGeom_HArray1OfCartesianPoint_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_HArray1OfCartesianPoint >":
    return _StepGeom.Handle_StepGeom_HArray1OfCartesianPoint_DownCast(t)

def Handle_StepGeom_HArray1OfCartesianPoint_IsNull(t: "opencascade::handle< StepGeom_HArray1OfCartesianPoint > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_HArray1OfCartesianPoint_IsNull(t)

def Handle_StepGeom_HArray1OfPcurveOrSurface_Create() -> "opencascade::handle< StepGeom_HArray1OfPcurveOrSurface >":
    return _StepGeom.Handle_StepGeom_HArray1OfPcurveOrSurface_Create()

def Handle_StepGeom_HArray1OfPcurveOrSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_HArray1OfPcurveOrSurface >":
    return _StepGeom.Handle_StepGeom_HArray1OfPcurveOrSurface_DownCast(t)

def Handle_StepGeom_HArray1OfPcurveOrSurface_IsNull(t: "opencascade::handle< StepGeom_HArray1OfPcurveOrSurface > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_HArray1OfPcurveOrSurface_IsNull(t)

def Handle_StepGeom_HArray1OfSurfaceBoundary_Create() -> "opencascade::handle< StepGeom_HArray1OfSurfaceBoundary >":
    return _StepGeom.Handle_StepGeom_HArray1OfSurfaceBoundary_Create()

def Handle_StepGeom_HArray1OfSurfaceBoundary_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_HArray1OfSurfaceBoundary >":
    return _StepGeom.Handle_StepGeom_HArray1OfSurfaceBoundary_DownCast(t)

def Handle_StepGeom_HArray1OfSurfaceBoundary_IsNull(t: "opencascade::handle< StepGeom_HArray1OfSurfaceBoundary > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_HArray1OfSurfaceBoundary_IsNull(t)

def Handle_StepGeom_HArray1OfBoundaryCurve_Create() -> "opencascade::handle< StepGeom_HArray1OfBoundaryCurve >":
    return _StepGeom.Handle_StepGeom_HArray1OfBoundaryCurve_Create()

def Handle_StepGeom_HArray1OfBoundaryCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_HArray1OfBoundaryCurve >":
    return _StepGeom.Handle_StepGeom_HArray1OfBoundaryCurve_DownCast(t)

def Handle_StepGeom_HArray1OfBoundaryCurve_IsNull(t: "opencascade::handle< StepGeom_HArray1OfBoundaryCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_HArray1OfBoundaryCurve_IsNull(t)

def Handle_StepGeom_HArray1OfCompositeCurveSegment_Create() -> "opencascade::handle< StepGeom_HArray1OfCompositeCurveSegment >":
    return _StepGeom.Handle_StepGeom_HArray1OfCompositeCurveSegment_Create()

def Handle_StepGeom_HArray1OfCompositeCurveSegment_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_HArray1OfCompositeCurveSegment >":
    return _StepGeom.Handle_StepGeom_HArray1OfCompositeCurveSegment_DownCast(t)

def Handle_StepGeom_HArray1OfCompositeCurveSegment_IsNull(t: "opencascade::handle< StepGeom_HArray1OfCompositeCurveSegment > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_HArray1OfCompositeCurveSegment_IsNull(t)

def Handle_StepGeom_HArray1OfCurve_Create() -> "opencascade::handle< StepGeom_HArray1OfCurve >":
    return _StepGeom.Handle_StepGeom_HArray1OfCurve_Create()

def Handle_StepGeom_HArray1OfCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_HArray1OfCurve >":
    return _StepGeom.Handle_StepGeom_HArray1OfCurve_DownCast(t)

def Handle_StepGeom_HArray1OfCurve_IsNull(t: "opencascade::handle< StepGeom_HArray1OfCurve > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_HArray1OfCurve_IsNull(t)

def Handle_StepGeom_HArray1OfTrimmingSelect_Create() -> "opencascade::handle< StepGeom_HArray1OfTrimmingSelect >":
    return _StepGeom.Handle_StepGeom_HArray1OfTrimmingSelect_Create()

def Handle_StepGeom_HArray1OfTrimmingSelect_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_HArray1OfTrimmingSelect >":
    return _StepGeom.Handle_StepGeom_HArray1OfTrimmingSelect_DownCast(t)

def Handle_StepGeom_HArray1OfTrimmingSelect_IsNull(t: "opencascade::handle< StepGeom_HArray1OfTrimmingSelect > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_HArray1OfTrimmingSelect_IsNull(t)

def Handle_StepGeom_HArray2OfSurfacePatch_Create() -> "opencascade::handle< StepGeom_HArray2OfSurfacePatch >":
    return _StepGeom.Handle_StepGeom_HArray2OfSurfacePatch_Create()

def Handle_StepGeom_HArray2OfSurfacePatch_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_HArray2OfSurfacePatch >":
    return _StepGeom.Handle_StepGeom_HArray2OfSurfacePatch_DownCast(t)

def Handle_StepGeom_HArray2OfSurfacePatch_IsNull(t: "opencascade::handle< StepGeom_HArray2OfSurfacePatch > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_HArray2OfSurfacePatch_IsNull(t)

def Handle_StepGeom_HArray2OfCartesianPoint_Create() -> "opencascade::handle< StepGeom_HArray2OfCartesianPoint >":
    return _StepGeom.Handle_StepGeom_HArray2OfCartesianPoint_Create()

def Handle_StepGeom_HArray2OfCartesianPoint_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepGeom_HArray2OfCartesianPoint >":
    return _StepGeom.Handle_StepGeom_HArray2OfCartesianPoint_DownCast(t)

def Handle_StepGeom_HArray2OfCartesianPoint_IsNull(t: "opencascade::handle< StepGeom_HArray2OfCartesianPoint > const &") -> "bool":
    return _StepGeom.Handle_StepGeom_HArray2OfCartesianPoint_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) -> "NCollection_Array1< opencascade::handle< StepGeom_BoundaryCurve > >::iterator":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_begin(self)

    def end(self) -> "NCollection_Array1< opencascade::handle< StepGeom_BoundaryCurve > >::iterator":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_end(self)

    def cbegin(self) -> "NCollection_Array1< opencascade::handle< StepGeom_BoundaryCurve > >::const_iterator":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_cbegin(self)

    def cend(self) -> "NCollection_Array1< opencascade::handle< StepGeom_BoundaryCurve > >::const_iterator":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_cend(self)

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

    def Init(self, theValue: "opencascade::handle< StepGeom_BoundaryCurve > const &") -> "void":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_IsAllocated(self)

    def Assign(self, theOther: "StepGeom_Array1OfBoundaryCurve") -> "NCollection_Array1< opencascade::handle< StepGeom_BoundaryCurve > > &":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Assign(self, theOther)

    def Move(self, theOther: "StepGeom_Array1OfBoundaryCurve") -> "NCollection_Array1< opencascade::handle< StepGeom_BoundaryCurve > > &":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< opencascade::handle< StepGeom_BoundaryCurve > > &":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Set(self, *args)

    def First(self) -> "opencascade::handle< StepGeom_BoundaryCurve > const &":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_First(self)

    def ChangeFirst(self) -> "opencascade::handle< StepGeom_BoundaryCurve > &":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_ChangeFirst(self)

    def Last(self) -> "opencascade::handle< StepGeom_BoundaryCurve > const &":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Last(self)

    def ChangeLast(self) -> "opencascade::handle< StepGeom_BoundaryCurve > &":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepGeom_BoundaryCurve > const &":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepGeom_BoundaryCurve > &":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "opencascade::handle< StepGeom_BoundaryCurve > &":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "opencascade::handle< StepGeom_BoundaryCurve > const &") -> "void":
        return _StepGeom.StepGeom_Array1OfBoundaryCurve_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        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) -> "NCollection_Array1< opencascade::handle< StepGeom_CartesianPoint > >::iterator":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_begin(self)

    def end(self) -> "NCollection_Array1< opencascade::handle< StepGeom_CartesianPoint > >::iterator":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_end(self)

    def cbegin(self) -> "NCollection_Array1< opencascade::handle< StepGeom_CartesianPoint > >::const_iterator":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_cbegin(self)

    def cend(self) -> "NCollection_Array1< opencascade::handle< StepGeom_CartesianPoint > >::const_iterator":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_cend(self)

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

    def Init(self, theValue: "opencascade::handle< StepGeom_CartesianPoint > const &") -> "void":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_IsAllocated(self)

    def Assign(self, theOther: "StepGeom_Array1OfCartesianPoint") -> "NCollection_Array1< opencascade::handle< StepGeom_CartesianPoint > > &":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Assign(self, theOther)

    def Move(self, theOther: "StepGeom_Array1OfCartesianPoint") -> "NCollection_Array1< opencascade::handle< StepGeom_CartesianPoint > > &":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< opencascade::handle< StepGeom_CartesianPoint > > &":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Set(self, *args)

    def First(self) -> "opencascade::handle< StepGeom_CartesianPoint > const &":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_First(self)

    def ChangeFirst(self) -> "opencascade::handle< StepGeom_CartesianPoint > &":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_ChangeFirst(self)

    def Last(self) -> "opencascade::handle< StepGeom_CartesianPoint > const &":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Last(self)

    def ChangeLast(self) -> "opencascade::handle< StepGeom_CartesianPoint > &":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepGeom_CartesianPoint > const &":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepGeom_CartesianPoint > &":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "opencascade::handle< StepGeom_CartesianPoint > &":
        return _StepGeom.StepGeom_Array1OfCartesianPoint___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "opencascade::handle< StepGeom_CartesianPoint > const &") -> "void":
        return _StepGeom.StepGeom_Array1OfCartesianPoint_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        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) -> "NCollection_Array1< opencascade::handle< StepGeom_CompositeCurveSegment > >::iterator":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_begin(self)

    def end(self) -> "NCollection_Array1< opencascade::handle< StepGeom_CompositeCurveSegment > >::iterator":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_end(self)

    def cbegin(self) -> "NCollection_Array1< opencascade::handle< StepGeom_CompositeCurveSegment > >::const_iterator":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_cbegin(self)

    def cend(self) -> "NCollection_Array1< opencascade::handle< StepGeom_CompositeCurveSegment > >::const_iterator":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_cend(self)

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

    def Init(self, theValue: "opencascade::handle< StepGeom_CompositeCurveSegment > const &") -> "void":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_IsAllocated(self)

    def Assign(self, theOther: "StepGeom_Array1OfCompositeCurveSegment") -> "NCollection_Array1< opencascade::handle< StepGeom_CompositeCurveSegment > > &":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Assign(self, theOther)

    def Move(self, theOther: "StepGeom_Array1OfCompositeCurveSegment") -> "NCollection_Array1< opencascade::handle< StepGeom_CompositeCurveSegment > > &":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< opencascade::handle< StepGeom_CompositeCurveSegment > > &":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Set(self, *args)

    def First(self) -> "opencascade::handle< StepGeom_CompositeCurveSegment > const &":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_First(self)

    def ChangeFirst(self) -> "opencascade::handle< StepGeom_CompositeCurveSegment > &":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_ChangeFirst(self)

    def Last(self) -> "opencascade::handle< StepGeom_CompositeCurveSegment > const &":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Last(self)

    def ChangeLast(self) -> "opencascade::handle< StepGeom_CompositeCurveSegment > &":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepGeom_CompositeCurveSegment > const &":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepGeom_CompositeCurveSegment > &":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "opencascade::handle< StepGeom_CompositeCurveSegment > &":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "opencascade::handle< StepGeom_CompositeCurveSegment > const &") -> "void":
        return _StepGeom.StepGeom_Array1OfCompositeCurveSegment_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        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) -> "NCollection_Array1< opencascade::handle< StepGeom_Curve > >::iterator":
        return _StepGeom.StepGeom_Array1OfCurve_begin(self)

    def end(self) -> "NCollection_Array1< opencascade::handle< StepGeom_Curve > >::iterator":
        return _StepGeom.StepGeom_Array1OfCurve_end(self)

    def cbegin(self) -> "NCollection_Array1< opencascade::handle< StepGeom_Curve > >::const_iterator":
        return _StepGeom.StepGeom_Array1OfCurve_cbegin(self)

    def cend(self) -> "NCollection_Array1< opencascade::handle< StepGeom_Curve > >::const_iterator":
        return _StepGeom.StepGeom_Array1OfCurve_cend(self)

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

    def Init(self, theValue: "opencascade::handle< StepGeom_Curve > const &") -> "void":
        return _StepGeom.StepGeom_Array1OfCurve_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfCurve_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfCurve_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfCurve_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfCurve_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfCurve_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfCurve_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfCurve_IsAllocated(self)

    def Assign(self, theOther: "StepGeom_Array1OfCurve") -> "NCollection_Array1< opencascade::handle< StepGeom_Curve > > &":
        return _StepGeom.StepGeom_Array1OfCurve_Assign(self, theOther)

    def Move(self, theOther: "StepGeom_Array1OfCurve") -> "NCollection_Array1< opencascade::handle< StepGeom_Curve > > &":
        return _StepGeom.StepGeom_Array1OfCurve_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< opencascade::handle< StepGeom_Curve > > &":
        return _StepGeom.StepGeom_Array1OfCurve_Set(self, *args)

    def First(self) -> "opencascade::handle< StepGeom_Curve > const &":
        return _StepGeom.StepGeom_Array1OfCurve_First(self)

    def ChangeFirst(self) -> "opencascade::handle< StepGeom_Curve > &":
        return _StepGeom.StepGeom_Array1OfCurve_ChangeFirst(self)

    def Last(self) -> "opencascade::handle< StepGeom_Curve > const &":
        return _StepGeom.StepGeom_Array1OfCurve_Last(self)

    def ChangeLast(self) -> "opencascade::handle< StepGeom_Curve > &":
        return _StepGeom.StepGeom_Array1OfCurve_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepGeom_Curve > const &":
        return _StepGeom.StepGeom_Array1OfCurve_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepGeom_Curve > &":
        return _StepGeom.StepGeom_Array1OfCurve_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "opencascade::handle< StepGeom_Curve > &":
        return _StepGeom.StepGeom_Array1OfCurve___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "opencascade::handle< StepGeom_Curve > const &") -> "void":
        return _StepGeom.StepGeom_Array1OfCurve_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        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) -> "NCollection_Array1< StepGeom_PcurveOrSurface >::iterator":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_begin(self)

    def end(self) -> "NCollection_Array1< StepGeom_PcurveOrSurface >::iterator":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_end(self)

    def cbegin(self) -> "NCollection_Array1< StepGeom_PcurveOrSurface >::const_iterator":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_cbegin(self)

    def cend(self) -> "NCollection_Array1< StepGeom_PcurveOrSurface >::const_iterator":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_cend(self)

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

    def Init(self, theValue: "StepGeom_PcurveOrSurface") -> "void":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_IsAllocated(self)

    def Assign(self, theOther: "StepGeom_Array1OfPcurveOrSurface") -> "NCollection_Array1< StepGeom_PcurveOrSurface > &":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Assign(self, theOther)

    def Move(self, theOther: "StepGeom_Array1OfPcurveOrSurface") -> "NCollection_Array1< StepGeom_PcurveOrSurface > &":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< StepGeom_PcurveOrSurface > &":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Set(self, *args)

    def First(self) -> "StepGeom_PcurveOrSurface const &":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_First(self)

    def ChangeFirst(self) -> "StepGeom_PcurveOrSurface &":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_ChangeFirst(self)

    def Last(self) -> "StepGeom_PcurveOrSurface const &":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Last(self)

    def ChangeLast(self) -> "StepGeom_PcurveOrSurface &":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "StepGeom_PcurveOrSurface const &":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "StepGeom_PcurveOrSurface &":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "StepGeom_PcurveOrSurface &":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "StepGeom_PcurveOrSurface") -> "void":
        return _StepGeom.StepGeom_Array1OfPcurveOrSurface_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        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) -> "NCollection_Array1< StepGeom_SurfaceBoundary >::iterator":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_begin(self)

    def end(self) -> "NCollection_Array1< StepGeom_SurfaceBoundary >::iterator":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_end(self)

    def cbegin(self) -> "NCollection_Array1< StepGeom_SurfaceBoundary >::const_iterator":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_cbegin(self)

    def cend(self) -> "NCollection_Array1< StepGeom_SurfaceBoundary >::const_iterator":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_cend(self)

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

    def Init(self, theValue: "StepGeom_SurfaceBoundary") -> "void":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_IsAllocated(self)

    def Assign(self, theOther: "StepGeom_Array1OfSurfaceBoundary") -> "NCollection_Array1< StepGeom_SurfaceBoundary > &":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Assign(self, theOther)

    def Move(self, theOther: "StepGeom_Array1OfSurfaceBoundary") -> "NCollection_Array1< StepGeom_SurfaceBoundary > &":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< StepGeom_SurfaceBoundary > &":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Set(self, *args)

    def First(self) -> "StepGeom_SurfaceBoundary const &":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_First(self)

    def ChangeFirst(self) -> "StepGeom_SurfaceBoundary &":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_ChangeFirst(self)

    def Last(self) -> "StepGeom_SurfaceBoundary const &":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Last(self)

    def ChangeLast(self) -> "StepGeom_SurfaceBoundary &":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "StepGeom_SurfaceBoundary const &":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "StepGeom_SurfaceBoundary &":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "StepGeom_SurfaceBoundary &":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "StepGeom_SurfaceBoundary") -> "void":
        return _StepGeom.StepGeom_Array1OfSurfaceBoundary_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        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) -> "NCollection_Array1< StepGeom_TrimmingSelect >::iterator":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_begin(self)

    def end(self) -> "NCollection_Array1< StepGeom_TrimmingSelect >::iterator":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_end(self)

    def cbegin(self) -> "NCollection_Array1< StepGeom_TrimmingSelect >::const_iterator":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_cbegin(self)

    def cend(self) -> "NCollection_Array1< StepGeom_TrimmingSelect >::const_iterator":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_cend(self)

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

    def Init(self, theValue: "StepGeom_TrimmingSelect") -> "void":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_IsAllocated(self)

    def Assign(self, theOther: "StepGeom_Array1OfTrimmingSelect") -> "NCollection_Array1< StepGeom_TrimmingSelect > &":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Assign(self, theOther)

    def Move(self, theOther: "StepGeom_Array1OfTrimmingSelect") -> "NCollection_Array1< StepGeom_TrimmingSelect > &":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< StepGeom_TrimmingSelect > &":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Set(self, *args)

    def First(self) -> "StepGeom_TrimmingSelect const &":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_First(self)

    def ChangeFirst(self) -> "StepGeom_TrimmingSelect &":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_ChangeFirst(self)

    def Last(self) -> "StepGeom_TrimmingSelect const &":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Last(self)

    def ChangeLast(self) -> "StepGeom_TrimmingSelect &":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "StepGeom_TrimmingSelect const &":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "StepGeom_TrimmingSelect &":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "StepGeom_TrimmingSelect &":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "StepGeom_TrimmingSelect") -> "void":
        return _StepGeom.StepGeom_Array1OfTrimmingSelect_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        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: "opencascade::handle< StepGeom_CartesianPoint > const &") -> "void":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Length(self)

    def NbRows(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_NbRows(self)

    def NbColumns(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_NbColumns(self)

    def RowLength(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_RowLength(self)

    def ColLength(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_ColLength(self)

    def LowerRow(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_LowerRow(self)

    def UpperRow(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_UpperRow(self)

    def LowerCol(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_LowerCol(self)

    def UpperCol(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_UpperCol(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_IsDeletable(self)

    def Assign(self, theOther: "StepGeom_Array2OfCartesianPoint") -> "NCollection_Array2< opencascade::handle< StepGeom_CartesianPoint > > &":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Assign(self, theOther)

    def Move(self, theOther: "StepGeom_Array2OfCartesianPoint") -> "NCollection_Array2< opencascade::handle< StepGeom_CartesianPoint > > &":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array2< opencascade::handle< StepGeom_CartesianPoint > > &":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Set(self, *args)

    def Value(self, theRow: "Standard_Integer const", theCol: "Standard_Integer const") -> "opencascade::handle< StepGeom_CartesianPoint > const &":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_Value(self, theRow, theCol)

    def ChangeValue(self, theRow: "Standard_Integer const", theCol: "Standard_Integer const") -> "opencascade::handle< StepGeom_CartesianPoint > &":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_ChangeValue(self, theRow, theCol)

    def __call__(self, *args) -> "opencascade::handle< StepGeom_CartesianPoint > &":
        return _StepGeom.StepGeom_Array2OfCartesianPoint___call__(self, *args)

    def SetValue(self, theRow: "Standard_Integer const", theCol: "Standard_Integer const", theItem: "opencascade::handle< StepGeom_CartesianPoint > const &") -> "void":
        return _StepGeom.StepGeom_Array2OfCartesianPoint_SetValue(self, theRow, theCol, theItem)

    def Resize(self, theRowLower: "Standard_Integer", theRowUpper: "Standard_Integer", theColLower: "Standard_Integer", theColUpper: "Standard_Integer", theToCopyData: "Standard_Boolean") -> "void":
        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: "opencascade::handle< StepGeom_SurfacePatch > const &") -> "void":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Length(self)

    def NbRows(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_NbRows(self)

    def NbColumns(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_NbColumns(self)

    def RowLength(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_RowLength(self)

    def ColLength(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_ColLength(self)

    def LowerRow(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_LowerRow(self)

    def UpperRow(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_UpperRow(self)

    def LowerCol(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_LowerCol(self)

    def UpperCol(self) -> "Standard_Integer":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_UpperCol(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_IsDeletable(self)

    def Assign(self, theOther: "StepGeom_Array2OfSurfacePatch") -> "NCollection_Array2< opencascade::handle< StepGeom_SurfacePatch > > &":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Assign(self, theOther)

    def Move(self, theOther: "StepGeom_Array2OfSurfacePatch") -> "NCollection_Array2< opencascade::handle< StepGeom_SurfacePatch > > &":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array2< opencascade::handle< StepGeom_SurfacePatch > > &":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Set(self, *args)

    def Value(self, theRow: "Standard_Integer const", theCol: "Standard_Integer const") -> "opencascade::handle< StepGeom_SurfacePatch > const &":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_Value(self, theRow, theCol)

    def ChangeValue(self, theRow: "Standard_Integer const", theCol: "Standard_Integer const") -> "opencascade::handle< StepGeom_SurfacePatch > &":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_ChangeValue(self, theRow, theCol)

    def __call__(self, *args) -> "opencascade::handle< StepGeom_SurfacePatch > &":
        return _StepGeom.StepGeom_Array2OfSurfacePatch___call__(self, *args)

    def SetValue(self, theRow: "Standard_Integer const", theCol: "Standard_Integer const", theItem: "opencascade::handle< StepGeom_SurfacePatch > const &") -> "void":
        return _StepGeom.StepGeom_Array2OfSurfacePatch_SetValue(self, theRow, theCol, theItem)

    def Resize(self, theRowLower: "Standard_Integer", theRowUpper: "Standard_Integer", theColLower: "Standard_Integer", theColUpper: "Standard_Integer", theToCopyData: "Standard_Boolean") -> "void":
        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"""
        Returns a axis2placement selecttype.

        Returns
        -------
        None

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

    def Axis2Placement2d(self, *args) -> "opencascade::handle< StepGeom_Axis2Placement2d >":
        r"""
        Returns value as a axis2placement2d (null if another type).

        Returns
        -------
        opencascade::handle<StepGeom_Axis2Placement2d>

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

    def Axis2Placement3d(self, *args) -> "opencascade::handle< StepGeom_Axis2Placement3d >":
        r"""
        Returns value as a axis2placement3d (null if another type).

        Returns
        -------
        opencascade::handle<StepGeom_Axis2Placement3d>

        """
        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"""
        Returns a compositecurvesegment.

        Returns
        -------
        None

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def ParentCurve(self, *args) -> "opencascade::handle< StepGeom_Curve >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Curve>

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

    def SameSense(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

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

    def SetParentCurve(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetSameSense(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetTransition(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def Transition(self, *args) -> "StepGeom_TransitionCode":
        r"""
        No available documentation.

        Returns
        -------
        StepGeom_TransitionCode

        """
        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"""
        Returns a curveonsurface selecttype.

        Returns
        -------
        None

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

    def CompositeCurveOnSurface(self, *args) -> "opencascade::handle< StepGeom_CompositeCurveOnSurface >":
        r"""
        Returns value as a compositecurveonsurface (null if another type).

        Returns
        -------
        opencascade::handle<StepGeom_CompositeCurveOnSurface>

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

    def Pcurve(self, *args) -> "opencascade::handle< StepGeom_Pcurve >":
        r"""
        Returns value as a pcurve (null if another type).

        Returns
        -------
        opencascade::handle<StepGeom_Pcurve>

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

    def SurfaceCurve(self, *args) -> "opencascade::handle< StepGeom_SurfaceCurve >":
        r"""
        Returns value as a surfacecurve (null if another type).

        Returns
        -------
        opencascade::handle<StepGeom_SurfaceCurve>

        """
        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"""
        No available documentation.

        Returns
        -------
        None

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

    def CoordinateSpaceDimension(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def GeometricRepresentationContext(self, *args) -> "opencascade::handle< StepGeom_GeometricRepresentationContext >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_GeometricRepresentationContext>

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

    def GlobalUncertaintyAssignedContext(self, *args) -> "opencascade::handle< StepRepr_GlobalUncertaintyAssignedContext >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepRepr_GlobalUncertaintyAssignedContext>

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

    def GlobalUnitAssignedContext(self, *args) -> "opencascade::handle< StepRepr_GlobalUnitAssignedContext >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepRepr_GlobalUnitAssignedContext>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None
        No available documentation.

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

        Returns
        -------
        None

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

    def NbUncertainty(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbUnits(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def SetCoordinateSpaceDimension(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetGeometricRepresentationContext(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetGlobalUncertaintyAssignedContext(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetGlobalUnitAssignedContext(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetUncertainty(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetUnits(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def Uncertainty(self, *args) -> "opencascade::handle< StepBasic_HArray1OfUncertaintyMeasureWithUnit >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepBasic_HArray1OfUncertaintyMeasureWithUnit>

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

    def UncertaintyValue(self, *args) -> "opencascade::handle< StepBasic_UncertaintyMeasureWithUnit >":
        r"""
        No available documentation.

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

        Returns
        -------
        opencascade::handle<StepBasic_UncertaintyMeasureWithUnit>

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

    def Units(self, *args) -> "opencascade::handle< StepBasic_HArray1OfNamedUnit >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepBasic_HArray1OfNamedUnit>

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

    def UnitsValue(self, *args) -> "opencascade::handle< StepBasic_NamedUnit >":
        r"""
        No available documentation.

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

        Returns
        -------
        opencascade::handle<StepBasic_NamedUnit>

        """
        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"""
        Returns a geometricrepresentationcontext.

        Returns
        -------
        None

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

    def CoordinateSpaceDimension(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetCoordinateSpaceDimension(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

        """
        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"""
        Returns a geometricrepresentationcontextandglobalunitassignedcontext.

        Returns
        -------
        None

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

    def CoordinateSpaceDimension(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def GeometricRepresentationContext(self, *args) -> "opencascade::handle< StepGeom_GeometricRepresentationContext >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_GeometricRepresentationContext>

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

    def GlobalUnitAssignedContext(self, *args) -> "opencascade::handle< StepRepr_GlobalUnitAssignedContext >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepRepr_GlobalUnitAssignedContext>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None
        No available documentation.

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

        Returns
        -------
        None

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

    def NbUnits(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def SetCoordinateSpaceDimension(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetGeometricRepresentationContext(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetGlobalUnitAssignedContext(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetUnits(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def Units(self, *args) -> "opencascade::handle< StepBasic_HArray1OfNamedUnit >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepBasic_HArray1OfNamedUnit>

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

    def UnitsValue(self, *args) -> "opencascade::handle< StepBasic_NamedUnit >":
        r"""
        No available documentation.

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

        Returns
        -------
        opencascade::handle<StepBasic_NamedUnit>

        """
        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"""
        Empty constructor.

        Returns
        -------
        None

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

    def CoordinateSpaceDimension(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def GeometricRepresentationContext(self, *args) -> "opencascade::handle< StepGeom_GeometricRepresentationContext >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_GeometricRepresentationContext>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None
        No available documentation.

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

        Returns
        -------
        None

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

    def ParametricRepresentationContext(self, *args) -> "opencascade::handle< StepRepr_ParametricRepresentationContext >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepRepr_ParametricRepresentationContext>

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

    def SetCoordinateSpaceDimension(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetGeometricRepresentationContext(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetParametricRepresentationContext(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

        """
        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"""
        Returns a geometricrepresentationitem.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_GeometricRepresentationItem_swiginit(self, _StepGeom.new_StepGeom_GeometricRepresentationItem(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_GeometricRepresentationItem

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

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

    def __init__(self, *args):
        r"""
        Returns a pcurveorsurface selecttype.

        Returns
        -------
        None

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

    def Pcurve(self, *args) -> "opencascade::handle< StepGeom_Pcurve >":
        r"""
        Returns value as a pcurve (null if another type).

        Returns
        -------
        opencascade::handle<StepGeom_Pcurve>

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

    def Surface(self, *args) -> "opencascade::handle< StepGeom_Surface >":
        r"""
        Returns value as a surface (null if another type).

        Returns
        -------
        opencascade::handle<StepGeom_Surface>

        """
        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"""
        Empty constructor.

        Returns
        -------
        None

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

    def BoundaryCurve(self, *args) -> "opencascade::handle< StepGeom_BoundaryCurve >":
        r"""
        Returns value as boundarycurve (or null if another type).

        Returns
        -------
        opencascade::handle<StepGeom_BoundaryCurve>

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

    def DegeneratePcurve(self, *args) -> "opencascade::handle< StepGeom_DegeneratePcurve >":
        r"""
        Returns value as degeneratepcurve (or null if another type).

        Returns
        -------
        opencascade::handle<StepGeom_DegeneratePcurve>

        """
        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"""
        Returns a surfacepatch.

        Returns
        -------
        None

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def ParentSurface(self, *args) -> "opencascade::handle< StepGeom_BoundedSurface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_BoundedSurface>

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

    def SetParentSurface(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetUSense(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetUTransition(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetVSense(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetVTransition(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def USense(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

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

    def UTransition(self, *args) -> "StepGeom_TransitionCode":
        r"""
        No available documentation.

        Returns
        -------
        StepGeom_TransitionCode

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

    def VSense(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

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

    def VTransition(self, *args) -> "StepGeom_TransitionCode":
        r"""
        No available documentation.

        Returns
        -------
        StepGeom_TransitionCode

        """
        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"""
        No available documentation.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_TrimmingMember_swiginit(self, _StepGeom.new_StepGeom_TrimmingMember(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_TrimmingMember

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

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

    def __init__(self, *args):
        r"""
        Returns a trimmingselect selecttype.

        Returns
        -------
        None

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

    def CartesianPoint(self, *args) -> "opencascade::handle< StepGeom_CartesianPoint >":
        r"""
        Returns value as a cartesianpoint (null if another type).

        Returns
        -------
        opencascade::handle<StepGeom_CartesianPoint>

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

    def ParameterValue(self, *args) -> "Standard_Real":
        r"""
        Returns value as a real (0.0 if not a real).

        Returns
        -------
        float

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

    def SetParameterValue(self, *args) -> "void":
        r"""
        Sets the parametervalue as real.

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

        Returns
        -------
        None

        """
        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"""
        Returns a vectorordirection selecttype.

        Returns
        -------
        None

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

    def Direction(self, *args) -> "opencascade::handle< StepGeom_Direction >":
        r"""
        Returns value as a direction (null if another type).

        Returns
        -------
        opencascade::handle<StepGeom_Direction>

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

    def Vector(self, *args) -> "opencascade::handle< StepGeom_Vector >":
        r"""
        Returns value as a vector (null if another type).

        Returns
        -------
        opencascade::handle<StepGeom_Vector>

        """
        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"""
        Returns a cartesiantransformationoperator.

        Returns
        -------
        None

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

    def Axis1(self, *args) -> "opencascade::handle< StepGeom_Direction >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Direction>

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

    def Axis2(self, *args) -> "opencascade::handle< StepGeom_Direction >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Direction>

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

    def HasAxis1(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

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

    def HasAxis2(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

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

    def HasScale(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def LocalOrigin(self, *args) -> "opencascade::handle< StepGeom_CartesianPoint >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_CartesianPoint>

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

    def Scale(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def SetAxis1(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetAxis2(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetLocalOrigin(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetScale(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def UnSetAxis1(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

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

    def UnSetAxis2(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

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

    def UnSetScale(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        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"""
        Returns a curve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Curve_swiginit(self, _StepGeom.new_StepGeom_Curve(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Curve

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

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

    def __init__(self, *args):
        r"""
        Returns a direction.

        Returns
        -------
        None

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

    def DirectionRatios(self, *args) -> "opencascade::handle< TColStd_HArray1OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfReal>

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

    def DirectionRatiosValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

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

        Returns
        -------
        float

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def NbDirectionRatios(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def SetDirectionRatios(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

        """
        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"""
        Returns a placement.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Placement_swiginit(self, _StepGeom.new_StepGeom_Placement(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aLocation: StepGeom_CartesianPoint

        Returns
        -------
        None

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

    def Location(self, *args) -> "opencascade::handle< StepGeom_CartesianPoint >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_CartesianPoint>

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

    def SetLocation(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aLocation: StepGeom_CartesianPoint

        Returns
        -------
        None

        """
        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"""
        Returns a point.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Point_swiginit(self, _StepGeom.new_StepGeom_Point(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Point

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

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

    def __init__(self, *args):
        r"""
        Returns a reparametrisedcompositecurvesegment.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_ReparametrisedCompositeCurveSegment_swiginit(self, _StepGeom.new_StepGeom_ReparametrisedCompositeCurveSegment(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def ParamLength(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def SetParamLength(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aParamLength: float

        Returns
        -------
        None

        """
        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_Surface(StepGeom_GeometricRepresentationItem):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        Returns a surface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Surface_swiginit(self, _StepGeom.new_StepGeom_Surface(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Surface

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

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

    def __init__(self, *args):
        r"""
        Returns a vector.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Vector_swiginit(self, _StepGeom.new_StepGeom_Vector(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aOrientation: StepGeom_Direction
        aMagnitude: float

        Returns
        -------
        None

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

    def Magnitude(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def Orientation(self, *args) -> "opencascade::handle< StepGeom_Direction >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Direction>

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

    def SetMagnitude(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aMagnitude: float

        Returns
        -------
        None

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

    def SetOrientation(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aOrientation: StepGeom_Direction

        Returns
        -------
        None

        """
        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"""
        Returns a axis1placement.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Axis1Placement_swiginit(self, _StepGeom.new_StepGeom_Axis1Placement(*args))

    def Axis(self, *args) -> "opencascade::handle< StepGeom_Direction >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Direction>

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

    def HasAxis(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aLocation: StepGeom_CartesianPoint
        hasAaxis: bool
        aAxis: StepGeom_Direction

        Returns
        -------
        None

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

    def SetAxis(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aAxis: StepGeom_Direction

        Returns
        -------
        None

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

    def UnSetAxis(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        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"""
        Returns a axis2placement2d.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Axis2Placement2d_swiginit(self, _StepGeom.new_StepGeom_Axis2Placement2d(*args))

    def HasRefDirection(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aLocation: StepGeom_CartesianPoint
        hasArefDirection: bool
        aRefDirection: StepGeom_Direction

        Returns
        -------
        None

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

    def RefDirection(self, *args) -> "opencascade::handle< StepGeom_Direction >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Direction>

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

    def SetRefDirection(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRefDirection: StepGeom_Direction

        Returns
        -------
        None

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

    def UnSetRefDirection(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        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"""
        Returns a axis2placement3d.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Axis2Placement3d_swiginit(self, _StepGeom.new_StepGeom_Axis2Placement3d(*args))

    def Axis(self, *args) -> "opencascade::handle< StepGeom_Direction >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Direction>

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

    def HasAxis(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

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

    def HasRefDirection(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aLocation: StepGeom_CartesianPoint
        hasAaxis: bool
        aAxis: StepGeom_Direction
        hasArefDirection: bool
        aRefDirection: StepGeom_Direction

        Returns
        -------
        None

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

    def RefDirection(self, *args) -> "opencascade::handle< StepGeom_Direction >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Direction>

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

    def SetAxis(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aAxis: StepGeom_Direction

        Returns
        -------
        None

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

    def SetRefDirection(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRefDirection: StepGeom_Direction

        Returns
        -------
        None

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

    def UnSetAxis(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

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

    def UnSetRefDirection(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        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"""
        Returns a boundedcurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_BoundedCurve_swiginit(self, _StepGeom.new_StepGeom_BoundedCurve(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BoundedCurve

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

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

    def __init__(self, *args):
        r"""
        Returns a boundedsurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_BoundedSurface_swiginit(self, _StepGeom.new_StepGeom_BoundedSurface(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BoundedSurface

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

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

    def __init__(self, *args):
        r"""
        Returns a cartesianpoint.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_CartesianPoint_swiginit(self, _StepGeom.new_StepGeom_CartesianPoint(*args))

    def Coordinates(self, *args) -> "opencascade::handle< TColStd_HArray1OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfReal>

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

    def CoordinatesValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

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

        Returns
        -------
        float

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aCoordinates: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def Init2D(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        X: float
        Y: float

        Returns
        -------
        None

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

    def Init3D(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        X: float
        Y: float
        Z: float

        Returns
        -------
        None

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

    def NbCoordinates(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def SetCoordinates(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aCoordinates: TColStd_HArray1OfReal

        Returns
        -------
        None

        """
        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"""
        No available documentation.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_CartesianTransformationOperator2d_swiginit(self, _StepGeom.new_StepGeom_CartesianTransformationOperator2d(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_CartesianTransformationOperator2d

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

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

    def __init__(self, *args):
        r"""
        Returns a cartesiantransformationoperator3d.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_CartesianTransformationOperator3d_swiginit(self, _StepGeom.new_StepGeom_CartesianTransformationOperator3d(*args))

    def Axis3(self, *args) -> "opencascade::handle< StepGeom_Direction >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Direction>

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

    def HasAxis3(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        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

        Returns
        -------
        None

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

    def SetAxis3(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aAxis3: StepGeom_Direction

        Returns
        -------
        None

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

    def UnSetAxis3(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        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"""
        Returns a conic.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Conic_swiginit(self, _StepGeom.new_StepGeom_Conic(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement

        Returns
        -------
        None

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

    def Position(self, *args) -> "StepGeom_Axis2Placement":
        r"""
        No available documentation.

        Returns
        -------
        StepGeom_Axis2Placement

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

    def SetPosition(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aPosition: StepGeom_Axis2Placement

        Returns
        -------
        None

        """
        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"""
        Returns a curvereplica.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_CurveReplica_swiginit(self, _StepGeom.new_StepGeom_CurveReplica(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aParentCurve: StepGeom_Curve
        aTransformation: StepGeom_CartesianTransformationOperator

        Returns
        -------
        None

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

    def ParentCurve(self, *args) -> "opencascade::handle< StepGeom_Curve >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Curve>

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

    def SetParentCurve(self, *args) -> "void":
        r"""
        No available documentation.

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

        Returns
        -------
        None

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

    def SetTransformation(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aTransformation: StepGeom_CartesianTransformationOperator

        Returns
        -------
        None

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

    def Transformation(self, *args) -> "opencascade::handle< StepGeom_CartesianTransformationOperator >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_CartesianTransformationOperator>

        """
        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"""
        Returns a degeneratepcurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_DegeneratePcurve_swiginit(self, _StepGeom.new_StepGeom_DegeneratePcurve(*args))

    def BasisSurface(self, *args) -> "opencascade::handle< StepGeom_Surface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Surface>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisSurface: StepGeom_Surface
        aReferenceToCurve: StepRepr_DefinitionalRepresentation

        Returns
        -------
        None

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

    def ReferenceToCurve(self, *args) -> "opencascade::handle< StepRepr_DefinitionalRepresentation >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepRepr_DefinitionalRepresentation>

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

    def SetBasisSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aBasisSurface: StepGeom_Surface

        Returns
        -------
        None

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

    def SetReferenceToCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aReferenceToCurve: StepRepr_DefinitionalRepresentation

        Returns
        -------
        None

        """
        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"""
        Returns a elementarysurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_ElementarySurface_swiginit(self, _StepGeom.new_StepGeom_ElementarySurface(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement3d

        Returns
        -------
        None

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

    def Position(self, *args) -> "opencascade::handle< StepGeom_Axis2Placement3d >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Axis2Placement3d>

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

    def SetPosition(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aPosition: StepGeom_Axis2Placement3d

        Returns
        -------
        None

        """
        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"""
        Returns a line.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Line_swiginit(self, _StepGeom.new_StepGeom_Line(*args))

    def Dir(self, *args) -> "opencascade::handle< StepGeom_Vector >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Vector>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPnt: StepGeom_CartesianPoint
        aDir: StepGeom_Vector

        Returns
        -------
        None

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

    def Pnt(self, *args) -> "opencascade::handle< StepGeom_CartesianPoint >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_CartesianPoint>

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

    def SetDir(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aDir: StepGeom_Vector

        Returns
        -------
        None

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

    def SetPnt(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aPnt: StepGeom_CartesianPoint

        Returns
        -------
        None

        """
        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"""
        Returns a offsetcurve3d.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_OffsetCurve3d_swiginit(self, _StepGeom.new_StepGeom_OffsetCurve3d(*args))

    def BasisCurve(self, *args) -> "opencascade::handle< StepGeom_Curve >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Curve>

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

    def Distance(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisCurve: StepGeom_Curve
        aDistance: float
        aSelfIntersect: StepData_Logical
        aRefDirection: StepGeom_Direction

        Returns
        -------
        None

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

    def RefDirection(self, *args) -> "opencascade::handle< StepGeom_Direction >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Direction>

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

    def SelfIntersect(self, *args) -> "StepData_Logical":
        r"""
        No available documentation.

        Returns
        -------
        StepData_Logical

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

    def SetBasisCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aBasisCurve: StepGeom_Curve

        Returns
        -------
        None

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

    def SetDistance(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aDistance: float

        Returns
        -------
        None

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

    def SetRefDirection(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRefDirection: StepGeom_Direction

        Returns
        -------
        None

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

    def SetSelfIntersect(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSelfIntersect: StepData_Logical

        Returns
        -------
        None

        """
        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"""
        Returns a offsetsurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_OffsetSurface_swiginit(self, _StepGeom.new_StepGeom_OffsetSurface(*args))

    def BasisSurface(self, *args) -> "opencascade::handle< StepGeom_Surface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Surface>

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

    def Distance(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisSurface: StepGeom_Surface
        aDistance: float
        aSelfIntersect: StepData_Logical

        Returns
        -------
        None

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

    def SelfIntersect(self, *args) -> "StepData_Logical":
        r"""
        No available documentation.

        Returns
        -------
        StepData_Logical

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

    def SetBasisSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aBasisSurface: StepGeom_Surface

        Returns
        -------
        None

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

    def SetDistance(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aDistance: float

        Returns
        -------
        None

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

    def SetSelfIntersect(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSelfIntersect: StepData_Logical

        Returns
        -------
        None

        """
        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"""
        Empty constructor.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_OrientedSurface_swiginit(self, _StepGeom.new_StepGeom_OrientedSurface(*args))

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aRepresentationItem_Name: TCollection_HAsciiString
        aOrientation: bool

        Returns
        -------
        None

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

    def Orientation(self, *args) -> "Standard_Boolean":
        r"""
        Returns field orientation.

        Returns
        -------
        bool

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

    def SetOrientation(self, *args) -> "void":
        r"""
        Set field orientation.

        Parameters
        ----------
        Orientation: bool

        Returns
        -------
        None

        """
        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"""
        Returns a pcurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Pcurve_swiginit(self, _StepGeom.new_StepGeom_Pcurve(*args))

    def BasisSurface(self, *args) -> "opencascade::handle< StepGeom_Surface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Surface>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisSurface: StepGeom_Surface
        aReferenceToCurve: StepRepr_DefinitionalRepresentation

        Returns
        -------
        None

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

    def ReferenceToCurve(self, *args) -> "opencascade::handle< StepRepr_DefinitionalRepresentation >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepRepr_DefinitionalRepresentation>

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

    def SetBasisSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aBasisSurface: StepGeom_Surface

        Returns
        -------
        None

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

    def SetReferenceToCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aReferenceToCurve: StepRepr_DefinitionalRepresentation

        Returns
        -------
        None

        """
        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"""
        Returns a pointoncurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_PointOnCurve_swiginit(self, _StepGeom.new_StepGeom_PointOnCurve(*args))

    def BasisCurve(self, *args) -> "opencascade::handle< StepGeom_Curve >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Curve>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisCurve: StepGeom_Curve
        aPointParameter: float

        Returns
        -------
        None

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

    def PointParameter(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def SetBasisCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aBasisCurve: StepGeom_Curve

        Returns
        -------
        None

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

    def SetPointParameter(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aPointParameter: float

        Returns
        -------
        None

        """
        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"""
        Returns a pointonsurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_PointOnSurface_swiginit(self, _StepGeom.new_StepGeom_PointOnSurface(*args))

    def BasisSurface(self, *args) -> "opencascade::handle< StepGeom_Surface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Surface>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisSurface: StepGeom_Surface
        aPointParameterU: float
        aPointParameterV: float

        Returns
        -------
        None

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

    def PointParameterU(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def PointParameterV(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def SetBasisSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aBasisSurface: StepGeom_Surface

        Returns
        -------
        None

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

    def SetPointParameterU(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aPointParameterU: float

        Returns
        -------
        None

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

    def SetPointParameterV(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aPointParameterV: float

        Returns
        -------
        None

        """
        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"""
        Returns a pointreplica.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_PointReplica_swiginit(self, _StepGeom.new_StepGeom_PointReplica(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aParentPt: StepGeom_Point
        aTransformation: StepGeom_CartesianTransformationOperator

        Returns
        -------
        None

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

    def ParentPt(self, *args) -> "opencascade::handle< StepGeom_Point >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Point>

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

    def SetParentPt(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aParentPt: StepGeom_Point

        Returns
        -------
        None

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

    def SetTransformation(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aTransformation: StepGeom_CartesianTransformationOperator

        Returns
        -------
        None

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

    def Transformation(self, *args) -> "opencascade::handle< StepGeom_CartesianTransformationOperator >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_CartesianTransformationOperator>

        """
        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"""
        Returns a surfacecurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_SurfaceCurve_swiginit(self, _StepGeom.new_StepGeom_SurfaceCurve(*args))

    def AssociatedGeometry(self, *args) -> "opencascade::handle< StepGeom_HArray1OfPcurveOrSurface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_HArray1OfPcurveOrSurface>

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

    def AssociatedGeometryValue(self, *args) -> "StepGeom_PcurveOrSurface":
        r"""
        No available documentation.

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

        Returns
        -------
        StepGeom_PcurveOrSurface

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

    def Curve3d(self, *args) -> "opencascade::handle< StepGeom_Curve >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Curve>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aCurve3d: StepGeom_Curve
        aAssociatedGeometry: StepGeom_HArray1OfPcurveOrSurface
        aMasterRepresentation: StepGeom_PreferredSurfaceCurveRepresentation

        Returns
        -------
        None

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

    def MasterRepresentation(self, *args) -> "StepGeom_PreferredSurfaceCurveRepresentation":
        r"""
        No available documentation.

        Returns
        -------
        StepGeom_PreferredSurfaceCurveRepresentation

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

    def NbAssociatedGeometry(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def SetAssociatedGeometry(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aAssociatedGeometry: StepGeom_HArray1OfPcurveOrSurface

        Returns
        -------
        None

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

    def SetCurve3d(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aCurve3d: StepGeom_Curve

        Returns
        -------
        None

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

    def SetMasterRepresentation(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aMasterRepresentation: StepGeom_PreferredSurfaceCurveRepresentation

        Returns
        -------
        None

        """
        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"""
        Returns a surfacereplica.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_SurfaceReplica_swiginit(self, _StepGeom.new_StepGeom_SurfaceReplica(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aParentSurface: StepGeom_Surface
        aTransformation: StepGeom_CartesianTransformationOperator3d

        Returns
        -------
        None

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

    def ParentSurface(self, *args) -> "opencascade::handle< StepGeom_Surface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Surface>

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

    def SetParentSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aParentSurface: StepGeom_Surface

        Returns
        -------
        None

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

    def SetTransformation(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aTransformation: StepGeom_CartesianTransformationOperator3d

        Returns
        -------
        None

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

    def Transformation(self, *args) -> "opencascade::handle< StepGeom_CartesianTransformationOperator3d >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_CartesianTransformationOperator3d>

        """
        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"""
        Returns a sweptsurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_SweptSurface_swiginit(self, _StepGeom.new_StepGeom_SweptSurface(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSweptCurve: StepGeom_Curve

        Returns
        -------
        None

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

    def SetSweptCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSweptCurve: StepGeom_Curve

        Returns
        -------
        None

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

    def SweptCurve(self, *args) -> "opencascade::handle< StepGeom_Curve >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Curve>

        """
        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"""
        Returns a bsplinecurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_BSplineCurve_swiginit(self, _StepGeom.new_StepGeom_BSplineCurve(*args))

    def ClosedCurve(self, *args) -> "StepData_Logical":
        r"""
        No available documentation.

        Returns
        -------
        StepData_Logical

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

    def ControlPointsList(self, *args) -> "opencascade::handle< StepGeom_HArray1OfCartesianPoint >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_HArray1OfCartesianPoint>

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

    def ControlPointsListValue(self, *args) -> "opencascade::handle< StepGeom_CartesianPoint >":
        r"""
        No available documentation.

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

        Returns
        -------
        opencascade::handle<StepGeom_CartesianPoint>

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

    def CurveForm(self, *args) -> "StepGeom_BSplineCurveForm":
        r"""
        No available documentation.

        Returns
        -------
        StepGeom_BSplineCurveForm

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

    def Degree(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical

        Returns
        -------
        None

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

    def NbControlPointsList(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def SelfIntersect(self, *args) -> "StepData_Logical":
        r"""
        No available documentation.

        Returns
        -------
        StepData_Logical

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

    def SetClosedCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aClosedCurve: StepData_Logical

        Returns
        -------
        None

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

    def SetControlPointsList(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aControlPointsList: StepGeom_HArray1OfCartesianPoint

        Returns
        -------
        None

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

    def SetCurveForm(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aCurveForm: StepGeom_BSplineCurveForm

        Returns
        -------
        None

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

    def SetDegree(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aDegree: int

        Returns
        -------
        None

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

    def SetSelfIntersect(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSelfIntersect: StepData_Logical

        Returns
        -------
        None

        """
        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"""
        Returns a bsplinesurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_BSplineSurface_swiginit(self, _StepGeom.new_StepGeom_BSplineSurface(*args))

    def ControlPointsList(self, *args) -> "opencascade::handle< StepGeom_HArray2OfCartesianPoint >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_HArray2OfCartesianPoint>

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

    def ControlPointsListValue(self, *args) -> "opencascade::handle< StepGeom_CartesianPoint >":
        r"""
        No available documentation.

        Parameters
        ----------
        num1: int
        num2: int

        Returns
        -------
        opencascade::handle<StepGeom_CartesianPoint>

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

    def Init(self, *args) -> "void":
        r"""
        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

        Returns
        -------
        None

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

    def NbControlPointsListI(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbControlPointsListJ(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def SelfIntersect(self, *args) -> "StepData_Logical":
        r"""
        No available documentation.

        Returns
        -------
        StepData_Logical

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

    def SetControlPointsList(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aControlPointsList: StepGeom_HArray2OfCartesianPoint

        Returns
        -------
        None

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

    def SetSelfIntersect(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSelfIntersect: StepData_Logical

        Returns
        -------
        None

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

    def SetSurfaceForm(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSurfaceForm: StepGeom_BSplineSurfaceForm

        Returns
        -------
        None

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

    def SetUClosed(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aUClosed: StepData_Logical

        Returns
        -------
        None

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

    def SetUDegree(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aUDegree: int

        Returns
        -------
        None

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

    def SetVClosed(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aVClosed: StepData_Logical

        Returns
        -------
        None

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

    def SetVDegree(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aVDegree: int

        Returns
        -------
        None

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

    def SurfaceForm(self, *args) -> "StepGeom_BSplineSurfaceForm":
        r"""
        No available documentation.

        Returns
        -------
        StepGeom_BSplineSurfaceForm

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

    def UClosed(self, *args) -> "StepData_Logical":
        r"""
        No available documentation.

        Returns
        -------
        StepData_Logical

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

    def UDegree(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def VClosed(self, *args) -> "StepData_Logical":
        r"""
        No available documentation.

        Returns
        -------
        StepData_Logical

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

    def VDegree(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        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"""
        Returns a circle.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Circle_swiginit(self, _StepGeom.new_StepGeom_Circle(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement
        aRadius: float

        Returns
        -------
        None

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

    def Radius(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def SetRadius(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRadius: float

        Returns
        -------
        None

        """
        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"""
        Returns a compositecurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_CompositeCurve_swiginit(self, _StepGeom.new_StepGeom_CompositeCurve(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSegments: StepGeom_HArray1OfCompositeCurveSegment
        aSelfIntersect: StepData_Logical

        Returns
        -------
        None

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

    def NbSegments(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def Segments(self, *args) -> "opencascade::handle< StepGeom_HArray1OfCompositeCurveSegment >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_HArray1OfCompositeCurveSegment>

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

    def SegmentsValue(self, *args) -> "opencascade::handle< StepGeom_CompositeCurveSegment >":
        r"""
        No available documentation.

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

        Returns
        -------
        opencascade::handle<StepGeom_CompositeCurveSegment>

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

    def SelfIntersect(self, *args) -> "StepData_Logical":
        r"""
        No available documentation.

        Returns
        -------
        StepData_Logical

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

    def SetSegments(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSegments: StepGeom_HArray1OfCompositeCurveSegment

        Returns
        -------
        None

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

    def SetSelfIntersect(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSelfIntersect: StepData_Logical

        Returns
        -------
        None

        """
        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"""
        Returns a conicalsurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_ConicalSurface_swiginit(self, _StepGeom.new_StepGeom_ConicalSurface(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement3d
        aRadius: float
        aSemiAngle: float

        Returns
        -------
        None

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

    def Radius(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def SemiAngle(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def SetRadius(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRadius: float

        Returns
        -------
        None

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

    def SetSemiAngle(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSemiAngle: float

        Returns
        -------
        None

        """
        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"""
        Empty constructor.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_CurveBoundedSurface_swiginit(self, _StepGeom.new_StepGeom_CurveBoundedSurface(*args))

    def BasisSurface(self, *args) -> "opencascade::handle< StepGeom_Surface >":
        r"""
        Returns field basissurface.

        Returns
        -------
        opencascade::handle<StepGeom_Surface>

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

    def Boundaries(self, *args) -> "opencascade::handle< StepGeom_HArray1OfSurfaceBoundary >":
        r"""
        Returns field boundaries.

        Returns
        -------
        opencascade::handle<StepGeom_HArray1OfSurfaceBoundary>

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

    def ImplicitOuter(self, *args) -> "Standard_Boolean":
        r"""
        Returns field implicitouter.

        Returns
        -------
        bool

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

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aRepresentationItem_Name: TCollection_HAsciiString
        aBasisSurface: StepGeom_Surface
        aBoundaries: StepGeom_HArray1OfSurfaceBoundary
        aImplicitOuter: bool

        Returns
        -------
        None

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

    def SetBasisSurface(self, *args) -> "void":
        r"""
        Set field basissurface.

        Parameters
        ----------
        BasisSurface: StepGeom_Surface

        Returns
        -------
        None

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

    def SetBoundaries(self, *args) -> "void":
        r"""
        Set field boundaries.

        Parameters
        ----------
        Boundaries: StepGeom_HArray1OfSurfaceBoundary

        Returns
        -------
        None

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

    def SetImplicitOuter(self, *args) -> "void":
        r"""
        Set field implicitouter.

        Parameters
        ----------
        ImplicitOuter: bool

        Returns
        -------
        None

        """
        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"""
        Returns a cylindricalsurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_CylindricalSurface_swiginit(self, _StepGeom.new_StepGeom_CylindricalSurface(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement3d
        aRadius: float

        Returns
        -------
        None

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

    def Radius(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def SetRadius(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRadius: float

        Returns
        -------
        None

        """
        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"""
        Returns a ellipse.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Ellipse_swiginit(self, _StepGeom.new_StepGeom_Ellipse(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement
        aSemiAxis1: float
        aSemiAxis2: float

        Returns
        -------
        None

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

    def SemiAxis1(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def SemiAxis2(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def SetSemiAxis1(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSemiAxis1: float

        Returns
        -------
        None

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

    def SetSemiAxis2(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSemiAxis2: float

        Returns
        -------
        None

        """
        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"""
        Returns a evaluateddegeneratepcurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_EvaluatedDegeneratePcurve_swiginit(self, _StepGeom.new_StepGeom_EvaluatedDegeneratePcurve(*args))

    def EquivalentPoint(self, *args) -> "opencascade::handle< StepGeom_CartesianPoint >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_CartesianPoint>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisSurface: StepGeom_Surface
        aReferenceToCurve: StepRepr_DefinitionalRepresentation
        aEquivalentPoint: StepGeom_CartesianPoint

        Returns
        -------
        None

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

    def SetEquivalentPoint(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aEquivalentPoint: StepGeom_CartesianPoint

        Returns
        -------
        None

        """
        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"""
        Returns a hyperbola.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Hyperbola_swiginit(self, _StepGeom.new_StepGeom_Hyperbola(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement
        aSemiAxis: float
        aSemiImagAxis: float

        Returns
        -------
        None

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

    def SemiAxis(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def SemiImagAxis(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def SetSemiAxis(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSemiAxis: float

        Returns
        -------
        None

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

    def SetSemiImagAxis(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSemiImagAxis: float

        Returns
        -------
        None

        """
        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"""
        Returns a intersectioncurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_IntersectionCurve_swiginit(self, _StepGeom.new_StepGeom_IntersectionCurve(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_IntersectionCurve

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

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

    def __init__(self, *args):
        r"""
        Returns a parabola.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Parabola_swiginit(self, _StepGeom.new_StepGeom_Parabola(*args))

    def FocalDist(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement
        aFocalDist: float

        Returns
        -------
        None

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

    def SetFocalDist(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aFocalDist: float

        Returns
        -------
        None

        """
        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"""
        Returns a plane.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Plane_swiginit(self, _StepGeom.new_StepGeom_Plane(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_Plane

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

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

    def __init__(self, *args):
        r"""
        Returns a polyline.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_Polyline_swiginit(self, _StepGeom.new_StepGeom_Polyline(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPoints: StepGeom_HArray1OfCartesianPoint

        Returns
        -------
        None

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

    def NbPoints(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def Points(self, *args) -> "opencascade::handle< StepGeom_HArray1OfCartesianPoint >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_HArray1OfCartesianPoint>

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

    def PointsValue(self, *args) -> "opencascade::handle< StepGeom_CartesianPoint >":
        r"""
        No available documentation.

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

        Returns
        -------
        opencascade::handle<StepGeom_CartesianPoint>

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

    def SetPoints(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aPoints: StepGeom_HArray1OfCartesianPoint

        Returns
        -------
        None

        """
        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"""
        Returns a rectangularcompositesurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_RectangularCompositeSurface_swiginit(self, _StepGeom.new_StepGeom_RectangularCompositeSurface(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSegments: StepGeom_HArray2OfSurfacePatch

        Returns
        -------
        None

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

    def NbSegmentsI(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbSegmentsJ(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def Segments(self, *args) -> "opencascade::handle< StepGeom_HArray2OfSurfacePatch >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_HArray2OfSurfacePatch>

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

    def SegmentsValue(self, *args) -> "opencascade::handle< StepGeom_SurfacePatch >":
        r"""
        No available documentation.

        Parameters
        ----------
        num1: int
        num2: int

        Returns
        -------
        opencascade::handle<StepGeom_SurfacePatch>

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

    def SetSegments(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSegments: StepGeom_HArray2OfSurfacePatch

        Returns
        -------
        None

        """
        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"""
        Returns a rectangulartrimmedsurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_RectangularTrimmedSurface_swiginit(self, _StepGeom.new_StepGeom_RectangularTrimmedSurface(*args))

    def BasisSurface(self, *args) -> "opencascade::handle< StepGeom_Surface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Surface>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisSurface: StepGeom_Surface
        aU1: float
        aU2: float
        aV1: float
        aV2: float
        aUsense: bool
        aVsense: bool

        Returns
        -------
        None

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

    def SetBasisSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aBasisSurface: StepGeom_Surface

        Returns
        -------
        None

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

    def SetU1(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aU1: float

        Returns
        -------
        None

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

    def SetU2(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aU2: float

        Returns
        -------
        None

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

    def SetUsense(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aUsense: bool

        Returns
        -------
        None

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

    def SetV1(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aV1: float

        Returns
        -------
        None

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

    def SetV2(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aV2: float

        Returns
        -------
        None

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

    def SetVsense(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aVsense: bool

        Returns
        -------
        None

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

    def U1(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def U2(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def Usense(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

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

    def V1(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def V2(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def Vsense(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        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"""
        Returns a seamcurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_SeamCurve_swiginit(self, _StepGeom.new_StepGeom_SeamCurve(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_SeamCurve

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

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

    def __init__(self, *args):
        r"""
        Returns a sphericalsurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_SphericalSurface_swiginit(self, _StepGeom.new_StepGeom_SphericalSurface(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement3d
        aRadius: float

        Returns
        -------
        None

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

    def Radius(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def SetRadius(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRadius: float

        Returns
        -------
        None

        """
        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"""
        Creates empty object.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_SurfaceCurveAndBoundedCurve_swiginit(self, _StepGeom.new_StepGeom_SurfaceCurveAndBoundedCurve(*args))

    def BoundedCurve(self, *args) -> "opencascade::handle< StepGeom_BoundedCurve > &":
        r"""
        Returns field boundedcurve.

        Returns
        -------
        opencascade::handle<StepGeom_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"""
        Returns a surfaceoflinearextrusion.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_SurfaceOfLinearExtrusion_swiginit(self, _StepGeom.new_StepGeom_SurfaceOfLinearExtrusion(*args))

    def ExtrusionAxis(self, *args) -> "opencascade::handle< StepGeom_Vector >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Vector>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSweptCurve: StepGeom_Curve
        aExtrusionAxis: StepGeom_Vector

        Returns
        -------
        None

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

    def SetExtrusionAxis(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aExtrusionAxis: StepGeom_Vector

        Returns
        -------
        None

        """
        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"""
        Returns a surfaceofrevolution.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_SurfaceOfRevolution_swiginit(self, _StepGeom.new_StepGeom_SurfaceOfRevolution(*args))

    def AxisPosition(self, *args) -> "opencascade::handle< StepGeom_Axis1Placement >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Axis1Placement>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSweptCurve: StepGeom_Curve
        aAxisPosition: StepGeom_Axis1Placement

        Returns
        -------
        None

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

    def SetAxisPosition(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aAxisPosition: StepGeom_Axis1Placement

        Returns
        -------
        None

        """
        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"""
        Returns a toroidalsurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_ToroidalSurface_swiginit(self, _StepGeom.new_StepGeom_ToroidalSurface(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement3d
        aMajorRadius: float
        aMinorRadius: float

        Returns
        -------
        None

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

    def MajorRadius(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def MinorRadius(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

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

    def SetMajorRadius(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aMajorRadius: float

        Returns
        -------
        None

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

    def SetMinorRadius(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aMinorRadius: float

        Returns
        -------
        None

        """
        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"""
        Returns a trimmedcurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_TrimmedCurve_swiginit(self, _StepGeom.new_StepGeom_TrimmedCurve(*args))

    def BasisCurve(self, *args) -> "opencascade::handle< StepGeom_Curve >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_Curve>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBasisCurve: StepGeom_Curve
        aTrim1: StepGeom_HArray1OfTrimmingSelect
        aTrim2: StepGeom_HArray1OfTrimmingSelect
        aSenseAgreement: bool
        aMasterRepresentation: StepGeom_TrimmingPreference

        Returns
        -------
        None

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

    def MasterRepresentation(self, *args) -> "StepGeom_TrimmingPreference":
        r"""
        No available documentation.

        Returns
        -------
        StepGeom_TrimmingPreference

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

    def NbTrim1(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbTrim2(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def SenseAgreement(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

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

    def SetBasisCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aBasisCurve: StepGeom_Curve

        Returns
        -------
        None

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

    def SetMasterRepresentation(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aMasterRepresentation: StepGeom_TrimmingPreference

        Returns
        -------
        None

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

    def SetSenseAgreement(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSenseAgreement: bool

        Returns
        -------
        None

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

    def SetTrim1(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aTrim1: StepGeom_HArray1OfTrimmingSelect

        Returns
        -------
        None

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

    def SetTrim2(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aTrim2: StepGeom_HArray1OfTrimmingSelect

        Returns
        -------
        None

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

    def Trim1(self, *args) -> "opencascade::handle< StepGeom_HArray1OfTrimmingSelect >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_HArray1OfTrimmingSelect>

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

    def Trim1Value(self, *args) -> "StepGeom_TrimmingSelect":
        r"""
        No available documentation.

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

        Returns
        -------
        StepGeom_TrimmingSelect

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

    def Trim2(self, *args) -> "opencascade::handle< StepGeom_HArray1OfTrimmingSelect >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_HArray1OfTrimmingSelect>

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

    def Trim2Value(self, *args) -> "StepGeom_TrimmingSelect":
        r"""
        No available documentation.

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

        Returns
        -------
        StepGeom_TrimmingSelect

        """
        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"""
        Returns a bsplinecurvewithknots.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_BSplineCurveWithKnots_swiginit(self, _StepGeom.new_StepGeom_BSplineCurveWithKnots(*args))

    def Init(self, *args) -> "void":
        r"""
        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

        Returns
        -------
        None

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

    def KnotMultiplicities(self, *args) -> "opencascade::handle< TColStd_HArray1OfInteger >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfInteger>

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

    def KnotMultiplicitiesValue(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

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

        Returns
        -------
        int

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

    def KnotSpec(self, *args) -> "StepGeom_KnotType":
        r"""
        No available documentation.

        Returns
        -------
        StepGeom_KnotType

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

    def Knots(self, *args) -> "opencascade::handle< TColStd_HArray1OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfReal>

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

    def KnotsValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

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

        Returns
        -------
        float

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

    def NbKnotMultiplicities(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbKnots(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def SetKnotMultiplicities(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aKnotMultiplicities: TColStd_HArray1OfInteger

        Returns
        -------
        None

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

    def SetKnotSpec(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aKnotSpec: StepGeom_KnotType

        Returns
        -------
        None

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

    def SetKnots(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aKnots: TColStd_HArray1OfReal

        Returns
        -------
        None

        """
        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"""
        Returns a bsplinecurvewithknotsandrationalbsplinecurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_BSplineCurveWithKnotsAndRationalBSplineCurve(*args))

    def BSplineCurveWithKnots(self, *args) -> "opencascade::handle< StepGeom_BSplineCurveWithKnots >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_BSplineCurveWithKnots>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aBSplineCurveWithKnots: StepGeom_BSplineCurveWithKnots
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Returns
        -------
        None
        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

        Returns
        -------
        None

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

    def KnotMultiplicities(self, *args) -> "opencascade::handle< TColStd_HArray1OfInteger >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfInteger>

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

    def KnotMultiplicitiesValue(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

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

        Returns
        -------
        int

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

    def KnotSpec(self, *args) -> "StepGeom_KnotType":
        r"""
        No available documentation.

        Returns
        -------
        StepGeom_KnotType

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

    def Knots(self, *args) -> "opencascade::handle< TColStd_HArray1OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfReal>

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

    def KnotsValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

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

        Returns
        -------
        float

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

    def NbKnotMultiplicities(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbKnots(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbWeightsData(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def RationalBSplineCurve(self, *args) -> "opencascade::handle< StepGeom_RationalBSplineCurve >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_RationalBSplineCurve>

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

    def SetBSplineCurveWithKnots(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aBSplineCurveWithKnots: StepGeom_BSplineCurveWithKnots

        Returns
        -------
        None

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

    def SetKnotMultiplicities(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aKnotMultiplicities: TColStd_HArray1OfInteger

        Returns
        -------
        None

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

    def SetKnotSpec(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aKnotSpec: StepGeom_KnotType

        Returns
        -------
        None

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

    def SetKnots(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aKnots: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def SetRationalBSplineCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Returns
        -------
        None

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

    def SetWeightsData(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aWeightsData: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def WeightsData(self, *args) -> "opencascade::handle< TColStd_HArray1OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfReal>

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

    def WeightsDataValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

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

        Returns
        -------
        float

        """
        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"""
        Returns a bsplinesurfacewithknots.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_BSplineSurfaceWithKnots_swiginit(self, _StepGeom.new_StepGeom_BSplineSurfaceWithKnots(*args))

    def Init(self, *args) -> "void":
        r"""
        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

        Returns
        -------
        None

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

    def KnotSpec(self, *args) -> "StepGeom_KnotType":
        r"""
        No available documentation.

        Returns
        -------
        StepGeom_KnotType

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

    def NbUKnots(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbUMultiplicities(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbVKnots(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbVMultiplicities(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def SetKnotSpec(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aKnotSpec: StepGeom_KnotType

        Returns
        -------
        None

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

    def SetUKnots(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aUKnots: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def SetUMultiplicities(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aUMultiplicities: TColStd_HArray1OfInteger

        Returns
        -------
        None

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

    def SetVKnots(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aVKnots: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def SetVMultiplicities(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aVMultiplicities: TColStd_HArray1OfInteger

        Returns
        -------
        None

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

    def UKnots(self, *args) -> "opencascade::handle< TColStd_HArray1OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfReal>

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

    def UKnotsValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

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

        Returns
        -------
        float

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

    def UMultiplicities(self, *args) -> "opencascade::handle< TColStd_HArray1OfInteger >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfInteger>

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

    def UMultiplicitiesValue(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

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

        Returns
        -------
        int

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

    def VKnots(self, *args) -> "opencascade::handle< TColStd_HArray1OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfReal>

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

    def VKnotsValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

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

        Returns
        -------
        float

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

    def VMultiplicities(self, *args) -> "opencascade::handle< TColStd_HArray1OfInteger >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfInteger>

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

    def VMultiplicitiesValue(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

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

        Returns
        -------
        int

        """
        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"""
        Returns a bsplinesurfacewithknotsandrationalbsplinesurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_BSplineSurfaceWithKnotsAndRationalBSplineSurface(*args))

    def BSplineSurfaceWithKnots(self, *args) -> "opencascade::handle< StepGeom_BSplineSurfaceWithKnots >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_BSplineSurfaceWithKnots>

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

    def Init(self, *args) -> "void":
        r"""
        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
        aBSplineSurfaceWithKnots: StepGeom_BSplineSurfaceWithKnots
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Returns
        -------
        None
        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

        Returns
        -------
        None

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

    def KnotSpec(self, *args) -> "StepGeom_KnotType":
        r"""
        No available documentation.

        Returns
        -------
        StepGeom_KnotType

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

    def NbUKnots(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbUMultiplicities(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbVKnots(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbVMultiplicities(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbWeightsDataI(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbWeightsDataJ(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def RationalBSplineSurface(self, *args) -> "opencascade::handle< StepGeom_RationalBSplineSurface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_RationalBSplineSurface>

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

    def SetBSplineSurfaceWithKnots(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aBSplineSurfaceWithKnots: StepGeom_BSplineSurfaceWithKnots

        Returns
        -------
        None

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

    def SetKnotSpec(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aKnotSpec: StepGeom_KnotType

        Returns
        -------
        None

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

    def SetRationalBSplineSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Returns
        -------
        None

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

    def SetUKnots(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aUKnots: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def SetUMultiplicities(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aUMultiplicities: TColStd_HArray1OfInteger

        Returns
        -------
        None

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

    def SetVKnots(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aVKnots: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def SetVMultiplicities(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aVMultiplicities: TColStd_HArray1OfInteger

        Returns
        -------
        None

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

    def SetWeightsData(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aWeightsData: TColStd_HArray2OfReal

        Returns
        -------
        None

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

    def UKnots(self, *args) -> "opencascade::handle< TColStd_HArray1OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfReal>

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

    def UKnotsValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

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

        Returns
        -------
        float

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

    def UMultiplicities(self, *args) -> "opencascade::handle< TColStd_HArray1OfInteger >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfInteger>

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

    def UMultiplicitiesValue(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

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

        Returns
        -------
        int

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

    def VKnots(self, *args) -> "opencascade::handle< TColStd_HArray1OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfReal>

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

    def VKnotsValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

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

        Returns
        -------
        float

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

    def VMultiplicities(self, *args) -> "opencascade::handle< TColStd_HArray1OfInteger >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfInteger>

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

    def VMultiplicitiesValue(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

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

        Returns
        -------
        int

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

    def WeightsData(self, *args) -> "opencascade::handle< TColStd_HArray2OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray2OfReal>

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

    def WeightsDataValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Parameters
        ----------
        num1: int
        num2: int

        Returns
        -------
        float

        """
        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"""
        Returns a beziercurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_BezierCurve_swiginit(self, _StepGeom.new_StepGeom_BezierCurve(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BezierCurve

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

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

    def __init__(self, *args):
        r"""
        Returns a beziercurveandrationalbsplinecurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_BezierCurveAndRationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_BezierCurveAndRationalBSplineCurve(*args))

    def BezierCurve(self, *args) -> "opencascade::handle< StepGeom_BezierCurve >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_BezierCurve>

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

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aBezierCurve: StepGeom_BezierCurve
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aWeightsData: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def NbWeightsData(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def RationalBSplineCurve(self, *args) -> "opencascade::handle< StepGeom_RationalBSplineCurve >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_RationalBSplineCurve>

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

    def SetBezierCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aBezierCurve: StepGeom_BezierCurve

        Returns
        -------
        None

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

    def SetRationalBSplineCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Returns
        -------
        None

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

    def SetWeightsData(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aWeightsData: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def WeightsData(self, *args) -> "opencascade::handle< TColStd_HArray1OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfReal>

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

    def WeightsDataValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

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

        Returns
        -------
        float

        """
        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"""
        Returns a beziersurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_BezierSurface_swiginit(self, _StepGeom.new_StepGeom_BezierSurface(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BezierSurface

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

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

    def __init__(self, *args):
        r"""
        Returns a beziersurfaceandrationalbsplinesurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_BezierSurfaceAndRationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_BezierSurfaceAndRationalBSplineSurface(*args))

    def BezierSurface(self, *args) -> "opencascade::handle< StepGeom_BezierSurface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_BezierSurface>

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

    def Init(self, *args) -> "void":
        r"""
        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
        aBezierSurface: StepGeom_BezierSurface
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Returns
        -------
        None
        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

        Returns
        -------
        None

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

    def NbWeightsDataI(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbWeightsDataJ(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def RationalBSplineSurface(self, *args) -> "opencascade::handle< StepGeom_RationalBSplineSurface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_RationalBSplineSurface>

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

    def SetBezierSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aBezierSurface: StepGeom_BezierSurface

        Returns
        -------
        None

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

    def SetRationalBSplineSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Returns
        -------
        None

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

    def SetWeightsData(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aWeightsData: TColStd_HArray2OfReal

        Returns
        -------
        None

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

    def WeightsData(self, *args) -> "opencascade::handle< TColStd_HArray2OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray2OfReal>

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

    def WeightsDataValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Parameters
        ----------
        num1: int
        num2: int

        Returns
        -------
        float

        """
        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"""
        Returns a compositecurveonsurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_CompositeCurveOnSurface_swiginit(self, _StepGeom.new_StepGeom_CompositeCurveOnSurface(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_CompositeCurveOnSurface

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

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

    def __init__(self, *args):
        r"""
        Returns a degeneratetoroidalsurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_DegenerateToroidalSurface_swiginit(self, _StepGeom.new_StepGeom_DegenerateToroidalSurface(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement3d
        aMajorRadius: float
        aMinorRadius: float
        aSelectOuter: bool

        Returns
        -------
        None

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

    def SelectOuter(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

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

    def SetSelectOuter(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aSelectOuter: bool

        Returns
        -------
        None

        """
        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"""
        Returns a quasiuniformcurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_QuasiUniformCurve_swiginit(self, _StepGeom.new_StepGeom_QuasiUniformCurve(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_QuasiUniformCurve

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

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

    def __init__(self, *args):
        r"""
        Returns a quasiuniformcurveandrationalbsplinecurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_QuasiUniformCurveAndRationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_QuasiUniformCurveAndRationalBSplineCurve(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aQuasiUniformCurve: StepGeom_QuasiUniformCurve
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aWeightsData: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def NbWeightsData(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def QuasiUniformCurve(self, *args) -> "opencascade::handle< StepGeom_QuasiUniformCurve >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_QuasiUniformCurve>

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

    def RationalBSplineCurve(self, *args) -> "opencascade::handle< StepGeom_RationalBSplineCurve >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_RationalBSplineCurve>

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

    def SetQuasiUniformCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aQuasiUniformCurve: StepGeom_QuasiUniformCurve

        Returns
        -------
        None

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

    def SetRationalBSplineCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Returns
        -------
        None

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

    def SetWeightsData(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aWeightsData: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def WeightsData(self, *args) -> "opencascade::handle< TColStd_HArray1OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfReal>

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

    def WeightsDataValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

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

        Returns
        -------
        float

        """
        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"""
        Returns a quasiuniformsurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_QuasiUniformSurface_swiginit(self, _StepGeom.new_StepGeom_QuasiUniformSurface(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_QuasiUniformSurface

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

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

    def __init__(self, *args):
        r"""
        Returns a quasiuniformsurfaceandrationalbsplinesurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_QuasiUniformSurfaceAndRationalBSplineSurface(*args))

    def Init(self, *args) -> "void":
        r"""
        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
        aQuasiUniformSurface: StepGeom_QuasiUniformSurface
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Returns
        -------
        None
        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

        Returns
        -------
        None

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

    def NbWeightsDataI(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbWeightsDataJ(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def QuasiUniformSurface(self, *args) -> "opencascade::handle< StepGeom_QuasiUniformSurface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_QuasiUniformSurface>

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

    def RationalBSplineSurface(self, *args) -> "opencascade::handle< StepGeom_RationalBSplineSurface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_RationalBSplineSurface>

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

    def SetQuasiUniformSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aQuasiUniformSurface: StepGeom_QuasiUniformSurface

        Returns
        -------
        None

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

    def SetRationalBSplineSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Returns
        -------
        None

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

    def SetWeightsData(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aWeightsData: TColStd_HArray2OfReal

        Returns
        -------
        None

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

    def WeightsData(self, *args) -> "opencascade::handle< TColStd_HArray2OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray2OfReal>

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

    def WeightsDataValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Parameters
        ----------
        num1: int
        num2: int

        Returns
        -------
        float

        """
        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"""
        Returns a rationalbsplinecurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_RationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_RationalBSplineCurve(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aWeightsData: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def NbWeightsData(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def SetWeightsData(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aWeightsData: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def WeightsData(self, *args) -> "opencascade::handle< TColStd_HArray1OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfReal>

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

    def WeightsDataValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

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

        Returns
        -------
        float

        """
        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"""
        Returns a rationalbsplinesurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_RationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_RationalBSplineSurface(*args))

    def Init(self, *args) -> "void":
        r"""
        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

        Returns
        -------
        None

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

    def NbWeightsDataI(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbWeightsDataJ(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def SetWeightsData(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aWeightsData: TColStd_HArray2OfReal

        Returns
        -------
        None

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

    def WeightsData(self, *args) -> "opencascade::handle< TColStd_HArray2OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray2OfReal>

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

    def WeightsDataValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Parameters
        ----------
        num1: int
        num2: int

        Returns
        -------
        float

        """
        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"""
        Returns a uniformcurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_UniformCurve_swiginit(self, _StepGeom.new_StepGeom_UniformCurve(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_UniformCurve

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

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

    def __init__(self, *args):
        r"""
        Returns a uniformcurveandrationalbsplinecurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_UniformCurveAndRationalBSplineCurve_swiginit(self, _StepGeom.new_StepGeom_UniformCurveAndRationalBSplineCurve(*args))

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aUniformCurve: StepGeom_UniformCurve
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDegree: int
        aControlPointsList: StepGeom_HArray1OfCartesianPoint
        aCurveForm: StepGeom_BSplineCurveForm
        aClosedCurve: StepData_Logical
        aSelfIntersect: StepData_Logical
        aWeightsData: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def NbWeightsData(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def RationalBSplineCurve(self, *args) -> "opencascade::handle< StepGeom_RationalBSplineCurve >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_RationalBSplineCurve>

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

    def SetRationalBSplineCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRationalBSplineCurve: StepGeom_RationalBSplineCurve

        Returns
        -------
        None

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

    def SetUniformCurve(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aUniformCurve: StepGeom_UniformCurve

        Returns
        -------
        None

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

    def SetWeightsData(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aWeightsData: TColStd_HArray1OfReal

        Returns
        -------
        None

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

    def UniformCurve(self, *args) -> "opencascade::handle< StepGeom_UniformCurve >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_UniformCurve>

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

    def WeightsData(self, *args) -> "opencascade::handle< TColStd_HArray1OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfReal>

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

    def WeightsDataValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

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

        Returns
        -------
        float

        """
        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"""
        Returns a uniformsurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_UniformSurface_swiginit(self, _StepGeom.new_StepGeom_UniformSurface(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_UniformSurface

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

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

    def __init__(self, *args):
        r"""
        Returns a uniformsurfaceandrationalbsplinesurface.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_UniformSurfaceAndRationalBSplineSurface_swiginit(self, _StepGeom.new_StepGeom_UniformSurfaceAndRationalBSplineSurface(*args))

    def Init(self, *args) -> "void":
        r"""
        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
        aUniformSurface: StepGeom_UniformSurface
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Returns
        -------
        None
        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

        Returns
        -------
        None

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

    def NbWeightsDataI(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def NbWeightsDataJ(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

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

    def RationalBSplineSurface(self, *args) -> "opencascade::handle< StepGeom_RationalBSplineSurface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_RationalBSplineSurface>

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

    def SetRationalBSplineSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aRationalBSplineSurface: StepGeom_RationalBSplineSurface

        Returns
        -------
        None

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

    def SetUniformSurface(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aUniformSurface: StepGeom_UniformSurface

        Returns
        -------
        None

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

    def SetWeightsData(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aWeightsData: TColStd_HArray2OfReal

        Returns
        -------
        None

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

    def UniformSurface(self, *args) -> "opencascade::handle< StepGeom_UniformSurface >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StepGeom_UniformSurface>

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

    def WeightsData(self, *args) -> "opencascade::handle< TColStd_HArray2OfReal >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TColStd_HArray2OfReal>

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

    def WeightsDataValue(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Parameters
        ----------
        num1: int
        num2: int

        Returns
        -------
        float

        """
        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"""
        Returns a boundarycurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_BoundaryCurve_swiginit(self, _StepGeom.new_StepGeom_BoundaryCurve(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_BoundaryCurve

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

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

    def __init__(self, *args):
        r"""
        Returns a outerboundarycurve.

        Returns
        -------
        None

        """
        _StepGeom.StepGeom_OuterBoundaryCurve_swiginit(self, _StepGeom.new_StepGeom_OuterBoundaryCurve(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepGeom.delete_StepGeom_OuterBoundaryCurve

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

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

    def __init__(self, *args):
        _StepGeom.StepGeom_HArray1OfCartesianPoint_swiginit(self, _StepGeom.new_StepGeom_HArray1OfCartesianPoint(*args))

    def Array1(self) -> "StepGeom_Array1OfCartesianPoint const &":
        return _StepGeom.StepGeom_HArray1OfCartesianPoint_Array1(self)

    def ChangeArray1(self) -> "StepGeom_Array1OfCartesianPoint &":
        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_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) -> "StepGeom_Array1OfPcurveOrSurface const &":
        return _StepGeom.StepGeom_HArray1OfPcurveOrSurface_Array1(self)

    def ChangeArray1(self) -> "StepGeom_Array1OfPcurveOrSurface &":
        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_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) -> "StepGeom_Array1OfSurfaceBoundary const &":
        return _StepGeom.StepGeom_HArray1OfSurfaceBoundary_Array1(self)

    def ChangeArray1(self) -> "StepGeom_Array1OfSurfaceBoundary &":
        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_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) -> "StepGeom_Array1OfBoundaryCurve const &":
        return _StepGeom.StepGeom_HArray1OfBoundaryCurve_Array1(self)

    def ChangeArray1(self) -> "StepGeom_Array1OfBoundaryCurve &":
        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_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) -> "StepGeom_Array1OfCompositeCurveSegment const &":
        return _StepGeom.StepGeom_HArray1OfCompositeCurveSegment_Array1(self)

    def ChangeArray1(self) -> "StepGeom_Array1OfCompositeCurveSegment &":
        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_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) -> "StepGeom_Array1OfCurve const &":
        return _StepGeom.StepGeom_HArray1OfCurve_Array1(self)

    def ChangeArray1(self) -> "StepGeom_Array1OfCurve &":
        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) -> "StepGeom_Array1OfTrimmingSelect const &":
        return _StepGeom.StepGeom_HArray1OfTrimmingSelect_Array1(self)

    def ChangeArray1(self) -> "StepGeom_Array1OfTrimmingSelect &":
        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_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) -> "StepGeom_Array2OfSurfacePatch const &":
        return _StepGeom.StepGeom_HArray2OfSurfacePatch_Array2(self)

    def ChangeArray2(self) -> "StepGeom_Array2OfSurfacePatch &":
        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)

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) -> "StepGeom_Array2OfCartesianPoint const &":
        return _StepGeom.StepGeom_HArray2OfCartesianPoint_Array2(self)

    def ChangeArray2(self) -> "StepGeom_Array2OfCartesianPoint &":
        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)





