# 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.

"""
StepShape module, see official documentation at
https://www.opencascade.com/doc/occt-7.4.0/refman/html/package_stepshape.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 _StepShape
else:
    import _StepShape

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__ = _StepShape.delete_SwigPyIterator

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    def __sub__(self, *args) -> "ptrdiff_t":
        return _StepShape.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

# Register SwigPyIterator in _StepShape:
_StepShape.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 _StepShape.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.StepGeom
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 *

StepShape_Equal = _StepShape.StepShape_Equal
StepShape_Large = _StepShape.StepShape_Large
StepShape_Small = _StepShape.StepShape_Small
StepShape_boDifference = _StepShape.StepShape_boDifference
StepShape_boIntersection = _StepShape.StepShape_boIntersection
StepShape_boUnion = _StepShape.StepShape_boUnion


class StepShape_AngleRelator(IntEnum):
	StepShape_Equal = 0
	StepShape_Large = 1
	StepShape_Small = 2
StepShape_Equal = StepShape_AngleRelator.StepShape_Equal
StepShape_Large = StepShape_AngleRelator.StepShape_Large
StepShape_Small = StepShape_AngleRelator.StepShape_Small

class StepShape_BooleanOperator(IntEnum):
	StepShape_boDifference = 0
	StepShape_boIntersection = 1
	StepShape_boUnion = 2
StepShape_boDifference = StepShape_BooleanOperator.StepShape_boDifference
StepShape_boIntersection = StepShape_BooleanOperator.StepShape_boIntersection
StepShape_boUnion = StepShape_BooleanOperator.StepShape_boUnion


def Handle_StepShape_Block_Create() -> "opencascade::handle< StepShape_Block >":
    return _StepShape.Handle_StepShape_Block_Create()

def Handle_StepShape_Block_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_Block >":
    return _StepShape.Handle_StepShape_Block_DownCast(t)

def Handle_StepShape_Block_IsNull(t: "opencascade::handle< StepShape_Block > const &") -> "bool":
    return _StepShape.Handle_StepShape_Block_IsNull(t)

def Handle_StepShape_BooleanResult_Create() -> "opencascade::handle< StepShape_BooleanResult >":
    return _StepShape.Handle_StepShape_BooleanResult_Create()

def Handle_StepShape_BooleanResult_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_BooleanResult >":
    return _StepShape.Handle_StepShape_BooleanResult_DownCast(t)

def Handle_StepShape_BooleanResult_IsNull(t: "opencascade::handle< StepShape_BooleanResult > const &") -> "bool":
    return _StepShape.Handle_StepShape_BooleanResult_IsNull(t)

def Handle_StepShape_BoxDomain_Create() -> "opencascade::handle< StepShape_BoxDomain >":
    return _StepShape.Handle_StepShape_BoxDomain_Create()

def Handle_StepShape_BoxDomain_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_BoxDomain >":
    return _StepShape.Handle_StepShape_BoxDomain_DownCast(t)

def Handle_StepShape_BoxDomain_IsNull(t: "opencascade::handle< StepShape_BoxDomain > const &") -> "bool":
    return _StepShape.Handle_StepShape_BoxDomain_IsNull(t)

def Handle_StepShape_ConnectedFaceShapeRepresentation_Create() -> "opencascade::handle< StepShape_ConnectedFaceShapeRepresentation >":
    return _StepShape.Handle_StepShape_ConnectedFaceShapeRepresentation_Create()

def Handle_StepShape_ConnectedFaceShapeRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ConnectedFaceShapeRepresentation >":
    return _StepShape.Handle_StepShape_ConnectedFaceShapeRepresentation_DownCast(t)

def Handle_StepShape_ConnectedFaceShapeRepresentation_IsNull(t: "opencascade::handle< StepShape_ConnectedFaceShapeRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_ConnectedFaceShapeRepresentation_IsNull(t)

def Handle_StepShape_ContextDependentShapeRepresentation_Create() -> "opencascade::handle< StepShape_ContextDependentShapeRepresentation >":
    return _StepShape.Handle_StepShape_ContextDependentShapeRepresentation_Create()

def Handle_StepShape_ContextDependentShapeRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ContextDependentShapeRepresentation >":
    return _StepShape.Handle_StepShape_ContextDependentShapeRepresentation_DownCast(t)

def Handle_StepShape_ContextDependentShapeRepresentation_IsNull(t: "opencascade::handle< StepShape_ContextDependentShapeRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_ContextDependentShapeRepresentation_IsNull(t)

def Handle_StepShape_DefinitionalRepresentationAndShapeRepresentation_Create() -> "opencascade::handle< StepShape_DefinitionalRepresentationAndShapeRepresentation >":
    return _StepShape.Handle_StepShape_DefinitionalRepresentationAndShapeRepresentation_Create()

def Handle_StepShape_DefinitionalRepresentationAndShapeRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_DefinitionalRepresentationAndShapeRepresentation >":
    return _StepShape.Handle_StepShape_DefinitionalRepresentationAndShapeRepresentation_DownCast(t)

def Handle_StepShape_DefinitionalRepresentationAndShapeRepresentation_IsNull(t: "opencascade::handle< StepShape_DefinitionalRepresentationAndShapeRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_DefinitionalRepresentationAndShapeRepresentation_IsNull(t)

def Handle_StepShape_DimensionalCharacteristicRepresentation_Create() -> "opencascade::handle< StepShape_DimensionalCharacteristicRepresentation >":
    return _StepShape.Handle_StepShape_DimensionalCharacteristicRepresentation_Create()

def Handle_StepShape_DimensionalCharacteristicRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_DimensionalCharacteristicRepresentation >":
    return _StepShape.Handle_StepShape_DimensionalCharacteristicRepresentation_DownCast(t)

def Handle_StepShape_DimensionalCharacteristicRepresentation_IsNull(t: "opencascade::handle< StepShape_DimensionalCharacteristicRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_DimensionalCharacteristicRepresentation_IsNull(t)

def Handle_StepShape_DimensionalLocation_Create() -> "opencascade::handle< StepShape_DimensionalLocation >":
    return _StepShape.Handle_StepShape_DimensionalLocation_Create()

def Handle_StepShape_DimensionalLocation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_DimensionalLocation >":
    return _StepShape.Handle_StepShape_DimensionalLocation_DownCast(t)

def Handle_StepShape_DimensionalLocation_IsNull(t: "opencascade::handle< StepShape_DimensionalLocation > const &") -> "bool":
    return _StepShape.Handle_StepShape_DimensionalLocation_IsNull(t)

def Handle_StepShape_DimensionalSize_Create() -> "opencascade::handle< StepShape_DimensionalSize >":
    return _StepShape.Handle_StepShape_DimensionalSize_Create()

def Handle_StepShape_DimensionalSize_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_DimensionalSize >":
    return _StepShape.Handle_StepShape_DimensionalSize_DownCast(t)

def Handle_StepShape_DimensionalSize_IsNull(t: "opencascade::handle< StepShape_DimensionalSize > const &") -> "bool":
    return _StepShape.Handle_StepShape_DimensionalSize_IsNull(t)

def Handle_StepShape_EdgeBasedWireframeModel_Create() -> "opencascade::handle< StepShape_EdgeBasedWireframeModel >":
    return _StepShape.Handle_StepShape_EdgeBasedWireframeModel_Create()

def Handle_StepShape_EdgeBasedWireframeModel_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_EdgeBasedWireframeModel >":
    return _StepShape.Handle_StepShape_EdgeBasedWireframeModel_DownCast(t)

def Handle_StepShape_EdgeBasedWireframeModel_IsNull(t: "opencascade::handle< StepShape_EdgeBasedWireframeModel > const &") -> "bool":
    return _StepShape.Handle_StepShape_EdgeBasedWireframeModel_IsNull(t)

def Handle_StepShape_FaceBasedSurfaceModel_Create() -> "opencascade::handle< StepShape_FaceBasedSurfaceModel >":
    return _StepShape.Handle_StepShape_FaceBasedSurfaceModel_Create()

def Handle_StepShape_FaceBasedSurfaceModel_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_FaceBasedSurfaceModel >":
    return _StepShape.Handle_StepShape_FaceBasedSurfaceModel_DownCast(t)

def Handle_StepShape_FaceBasedSurfaceModel_IsNull(t: "opencascade::handle< StepShape_FaceBasedSurfaceModel > const &") -> "bool":
    return _StepShape.Handle_StepShape_FaceBasedSurfaceModel_IsNull(t)

def Handle_StepShape_GeometricSet_Create() -> "opencascade::handle< StepShape_GeometricSet >":
    return _StepShape.Handle_StepShape_GeometricSet_Create()

def Handle_StepShape_GeometricSet_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_GeometricSet >":
    return _StepShape.Handle_StepShape_GeometricSet_DownCast(t)

def Handle_StepShape_GeometricSet_IsNull(t: "opencascade::handle< StepShape_GeometricSet > const &") -> "bool":
    return _StepShape.Handle_StepShape_GeometricSet_IsNull(t)

def Handle_StepShape_HalfSpaceSolid_Create() -> "opencascade::handle< StepShape_HalfSpaceSolid >":
    return _StepShape.Handle_StepShape_HalfSpaceSolid_Create()

def Handle_StepShape_HalfSpaceSolid_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_HalfSpaceSolid >":
    return _StepShape.Handle_StepShape_HalfSpaceSolid_DownCast(t)

def Handle_StepShape_HalfSpaceSolid_IsNull(t: "opencascade::handle< StepShape_HalfSpaceSolid > const &") -> "bool":
    return _StepShape.Handle_StepShape_HalfSpaceSolid_IsNull(t)

def Handle_StepShape_LimitsAndFits_Create() -> "opencascade::handle< StepShape_LimitsAndFits >":
    return _StepShape.Handle_StepShape_LimitsAndFits_Create()

def Handle_StepShape_LimitsAndFits_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_LimitsAndFits >":
    return _StepShape.Handle_StepShape_LimitsAndFits_DownCast(t)

def Handle_StepShape_LimitsAndFits_IsNull(t: "opencascade::handle< StepShape_LimitsAndFits > const &") -> "bool":
    return _StepShape.Handle_StepShape_LimitsAndFits_IsNull(t)

def Handle_StepShape_MeasureQualification_Create() -> "opencascade::handle< StepShape_MeasureQualification >":
    return _StepShape.Handle_StepShape_MeasureQualification_Create()

def Handle_StepShape_MeasureQualification_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_MeasureQualification >":
    return _StepShape.Handle_StepShape_MeasureQualification_DownCast(t)

def Handle_StepShape_MeasureQualification_IsNull(t: "opencascade::handle< StepShape_MeasureQualification > const &") -> "bool":
    return _StepShape.Handle_StepShape_MeasureQualification_IsNull(t)

def Handle_StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_Create() -> "opencascade::handle< StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem >":
    return _StepShape.Handle_StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_Create()

def Handle_StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem >":
    return _StepShape.Handle_StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_DownCast(t)

def Handle_StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_IsNull(t: "opencascade::handle< StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem > const &") -> "bool":
    return _StepShape.Handle_StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_IsNull(t)

def Handle_StepShape_PlusMinusTolerance_Create() -> "opencascade::handle< StepShape_PlusMinusTolerance >":
    return _StepShape.Handle_StepShape_PlusMinusTolerance_Create()

def Handle_StepShape_PlusMinusTolerance_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_PlusMinusTolerance >":
    return _StepShape.Handle_StepShape_PlusMinusTolerance_DownCast(t)

def Handle_StepShape_PlusMinusTolerance_IsNull(t: "opencascade::handle< StepShape_PlusMinusTolerance > const &") -> "bool":
    return _StepShape.Handle_StepShape_PlusMinusTolerance_IsNull(t)

def Handle_StepShape_PrecisionQualifier_Create() -> "opencascade::handle< StepShape_PrecisionQualifier >":
    return _StepShape.Handle_StepShape_PrecisionQualifier_Create()

def Handle_StepShape_PrecisionQualifier_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_PrecisionQualifier >":
    return _StepShape.Handle_StepShape_PrecisionQualifier_DownCast(t)

def Handle_StepShape_PrecisionQualifier_IsNull(t: "opencascade::handle< StepShape_PrecisionQualifier > const &") -> "bool":
    return _StepShape.Handle_StepShape_PrecisionQualifier_IsNull(t)

def Handle_StepShape_QualifiedRepresentationItem_Create() -> "opencascade::handle< StepShape_QualifiedRepresentationItem >":
    return _StepShape.Handle_StepShape_QualifiedRepresentationItem_Create()

def Handle_StepShape_QualifiedRepresentationItem_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_QualifiedRepresentationItem >":
    return _StepShape.Handle_StepShape_QualifiedRepresentationItem_DownCast(t)

def Handle_StepShape_QualifiedRepresentationItem_IsNull(t: "opencascade::handle< StepShape_QualifiedRepresentationItem > const &") -> "bool":
    return _StepShape.Handle_StepShape_QualifiedRepresentationItem_IsNull(t)

def Handle_StepShape_RightAngularWedge_Create() -> "opencascade::handle< StepShape_RightAngularWedge >":
    return _StepShape.Handle_StepShape_RightAngularWedge_Create()

def Handle_StepShape_RightAngularWedge_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_RightAngularWedge >":
    return _StepShape.Handle_StepShape_RightAngularWedge_DownCast(t)

def Handle_StepShape_RightAngularWedge_IsNull(t: "opencascade::handle< StepShape_RightAngularWedge > const &") -> "bool":
    return _StepShape.Handle_StepShape_RightAngularWedge_IsNull(t)

def Handle_StepShape_RightCircularCone_Create() -> "opencascade::handle< StepShape_RightCircularCone >":
    return _StepShape.Handle_StepShape_RightCircularCone_Create()

def Handle_StepShape_RightCircularCone_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_RightCircularCone >":
    return _StepShape.Handle_StepShape_RightCircularCone_DownCast(t)

def Handle_StepShape_RightCircularCone_IsNull(t: "opencascade::handle< StepShape_RightCircularCone > const &") -> "bool":
    return _StepShape.Handle_StepShape_RightCircularCone_IsNull(t)

def Handle_StepShape_RightCircularCylinder_Create() -> "opencascade::handle< StepShape_RightCircularCylinder >":
    return _StepShape.Handle_StepShape_RightCircularCylinder_Create()

def Handle_StepShape_RightCircularCylinder_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_RightCircularCylinder >":
    return _StepShape.Handle_StepShape_RightCircularCylinder_DownCast(t)

def Handle_StepShape_RightCircularCylinder_IsNull(t: "opencascade::handle< StepShape_RightCircularCylinder > const &") -> "bool":
    return _StepShape.Handle_StepShape_RightCircularCylinder_IsNull(t)

def Handle_StepShape_ShapeDefinitionRepresentation_Create() -> "opencascade::handle< StepShape_ShapeDefinitionRepresentation >":
    return _StepShape.Handle_StepShape_ShapeDefinitionRepresentation_Create()

def Handle_StepShape_ShapeDefinitionRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ShapeDefinitionRepresentation >":
    return _StepShape.Handle_StepShape_ShapeDefinitionRepresentation_DownCast(t)

def Handle_StepShape_ShapeDefinitionRepresentation_IsNull(t: "opencascade::handle< StepShape_ShapeDefinitionRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_ShapeDefinitionRepresentation_IsNull(t)

def Handle_StepShape_ShapeRepresentation_Create() -> "opencascade::handle< StepShape_ShapeRepresentation >":
    return _StepShape.Handle_StepShape_ShapeRepresentation_Create()

def Handle_StepShape_ShapeRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ShapeRepresentation >":
    return _StepShape.Handle_StepShape_ShapeRepresentation_DownCast(t)

def Handle_StepShape_ShapeRepresentation_IsNull(t: "opencascade::handle< StepShape_ShapeRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_ShapeRepresentation_IsNull(t)

def Handle_StepShape_ShellBasedSurfaceModel_Create() -> "opencascade::handle< StepShape_ShellBasedSurfaceModel >":
    return _StepShape.Handle_StepShape_ShellBasedSurfaceModel_Create()

def Handle_StepShape_ShellBasedSurfaceModel_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ShellBasedSurfaceModel >":
    return _StepShape.Handle_StepShape_ShellBasedSurfaceModel_DownCast(t)

def Handle_StepShape_ShellBasedSurfaceModel_IsNull(t: "opencascade::handle< StepShape_ShellBasedSurfaceModel > const &") -> "bool":
    return _StepShape.Handle_StepShape_ShellBasedSurfaceModel_IsNull(t)

def Handle_StepShape_SolidModel_Create() -> "opencascade::handle< StepShape_SolidModel >":
    return _StepShape.Handle_StepShape_SolidModel_Create()

def Handle_StepShape_SolidModel_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_SolidModel >":
    return _StepShape.Handle_StepShape_SolidModel_DownCast(t)

def Handle_StepShape_SolidModel_IsNull(t: "opencascade::handle< StepShape_SolidModel > const &") -> "bool":
    return _StepShape.Handle_StepShape_SolidModel_IsNull(t)

def Handle_StepShape_Sphere_Create() -> "opencascade::handle< StepShape_Sphere >":
    return _StepShape.Handle_StepShape_Sphere_Create()

def Handle_StepShape_Sphere_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_Sphere >":
    return _StepShape.Handle_StepShape_Sphere_DownCast(t)

def Handle_StepShape_Sphere_IsNull(t: "opencascade::handle< StepShape_Sphere > const &") -> "bool":
    return _StepShape.Handle_StepShape_Sphere_IsNull(t)

def Handle_StepShape_ToleranceValue_Create() -> "opencascade::handle< StepShape_ToleranceValue >":
    return _StepShape.Handle_StepShape_ToleranceValue_Create()

def Handle_StepShape_ToleranceValue_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ToleranceValue >":
    return _StepShape.Handle_StepShape_ToleranceValue_DownCast(t)

def Handle_StepShape_ToleranceValue_IsNull(t: "opencascade::handle< StepShape_ToleranceValue > const &") -> "bool":
    return _StepShape.Handle_StepShape_ToleranceValue_IsNull(t)

def Handle_StepShape_TopologicalRepresentationItem_Create() -> "opencascade::handle< StepShape_TopologicalRepresentationItem >":
    return _StepShape.Handle_StepShape_TopologicalRepresentationItem_Create()

def Handle_StepShape_TopologicalRepresentationItem_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_TopologicalRepresentationItem >":
    return _StepShape.Handle_StepShape_TopologicalRepresentationItem_DownCast(t)

def Handle_StepShape_TopologicalRepresentationItem_IsNull(t: "opencascade::handle< StepShape_TopologicalRepresentationItem > const &") -> "bool":
    return _StepShape.Handle_StepShape_TopologicalRepresentationItem_IsNull(t)

def Handle_StepShape_Torus_Create() -> "opencascade::handle< StepShape_Torus >":
    return _StepShape.Handle_StepShape_Torus_Create()

def Handle_StepShape_Torus_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_Torus >":
    return _StepShape.Handle_StepShape_Torus_DownCast(t)

def Handle_StepShape_Torus_IsNull(t: "opencascade::handle< StepShape_Torus > const &") -> "bool":
    return _StepShape.Handle_StepShape_Torus_IsNull(t)

def Handle_StepShape_TypeQualifier_Create() -> "opencascade::handle< StepShape_TypeQualifier >":
    return _StepShape.Handle_StepShape_TypeQualifier_Create()

def Handle_StepShape_TypeQualifier_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_TypeQualifier >":
    return _StepShape.Handle_StepShape_TypeQualifier_DownCast(t)

def Handle_StepShape_TypeQualifier_IsNull(t: "opencascade::handle< StepShape_TypeQualifier > const &") -> "bool":
    return _StepShape.Handle_StepShape_TypeQualifier_IsNull(t)

def Handle_StepShape_ValueFormatTypeQualifier_Create() -> "opencascade::handle< StepShape_ValueFormatTypeQualifier >":
    return _StepShape.Handle_StepShape_ValueFormatTypeQualifier_Create()

def Handle_StepShape_ValueFormatTypeQualifier_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ValueFormatTypeQualifier >":
    return _StepShape.Handle_StepShape_ValueFormatTypeQualifier_DownCast(t)

def Handle_StepShape_ValueFormatTypeQualifier_IsNull(t: "opencascade::handle< StepShape_ValueFormatTypeQualifier > const &") -> "bool":
    return _StepShape.Handle_StepShape_ValueFormatTypeQualifier_IsNull(t)

def Handle_StepShape_AdvancedBrepShapeRepresentation_Create() -> "opencascade::handle< StepShape_AdvancedBrepShapeRepresentation >":
    return _StepShape.Handle_StepShape_AdvancedBrepShapeRepresentation_Create()

def Handle_StepShape_AdvancedBrepShapeRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_AdvancedBrepShapeRepresentation >":
    return _StepShape.Handle_StepShape_AdvancedBrepShapeRepresentation_DownCast(t)

def Handle_StepShape_AdvancedBrepShapeRepresentation_IsNull(t: "opencascade::handle< StepShape_AdvancedBrepShapeRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_AdvancedBrepShapeRepresentation_IsNull(t)

def Handle_StepShape_AngularLocation_Create() -> "opencascade::handle< StepShape_AngularLocation >":
    return _StepShape.Handle_StepShape_AngularLocation_Create()

def Handle_StepShape_AngularLocation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_AngularLocation >":
    return _StepShape.Handle_StepShape_AngularLocation_DownCast(t)

def Handle_StepShape_AngularLocation_IsNull(t: "opencascade::handle< StepShape_AngularLocation > const &") -> "bool":
    return _StepShape.Handle_StepShape_AngularLocation_IsNull(t)

def Handle_StepShape_AngularSize_Create() -> "opencascade::handle< StepShape_AngularSize >":
    return _StepShape.Handle_StepShape_AngularSize_Create()

def Handle_StepShape_AngularSize_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_AngularSize >":
    return _StepShape.Handle_StepShape_AngularSize_DownCast(t)

def Handle_StepShape_AngularSize_IsNull(t: "opencascade::handle< StepShape_AngularSize > const &") -> "bool":
    return _StepShape.Handle_StepShape_AngularSize_IsNull(t)

def Handle_StepShape_BoxedHalfSpace_Create() -> "opencascade::handle< StepShape_BoxedHalfSpace >":
    return _StepShape.Handle_StepShape_BoxedHalfSpace_Create()

def Handle_StepShape_BoxedHalfSpace_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_BoxedHalfSpace >":
    return _StepShape.Handle_StepShape_BoxedHalfSpace_DownCast(t)

def Handle_StepShape_BoxedHalfSpace_IsNull(t: "opencascade::handle< StepShape_BoxedHalfSpace > const &") -> "bool":
    return _StepShape.Handle_StepShape_BoxedHalfSpace_IsNull(t)

def Handle_StepShape_CompoundShapeRepresentation_Create() -> "opencascade::handle< StepShape_CompoundShapeRepresentation >":
    return _StepShape.Handle_StepShape_CompoundShapeRepresentation_Create()

def Handle_StepShape_CompoundShapeRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_CompoundShapeRepresentation >":
    return _StepShape.Handle_StepShape_CompoundShapeRepresentation_DownCast(t)

def Handle_StepShape_CompoundShapeRepresentation_IsNull(t: "opencascade::handle< StepShape_CompoundShapeRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_CompoundShapeRepresentation_IsNull(t)

def Handle_StepShape_ConnectedEdgeSet_Create() -> "opencascade::handle< StepShape_ConnectedEdgeSet >":
    return _StepShape.Handle_StepShape_ConnectedEdgeSet_Create()

def Handle_StepShape_ConnectedEdgeSet_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ConnectedEdgeSet >":
    return _StepShape.Handle_StepShape_ConnectedEdgeSet_DownCast(t)

def Handle_StepShape_ConnectedEdgeSet_IsNull(t: "opencascade::handle< StepShape_ConnectedEdgeSet > const &") -> "bool":
    return _StepShape.Handle_StepShape_ConnectedEdgeSet_IsNull(t)

def Handle_StepShape_ConnectedFaceSet_Create() -> "opencascade::handle< StepShape_ConnectedFaceSet >":
    return _StepShape.Handle_StepShape_ConnectedFaceSet_Create()

def Handle_StepShape_ConnectedFaceSet_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ConnectedFaceSet >":
    return _StepShape.Handle_StepShape_ConnectedFaceSet_DownCast(t)

def Handle_StepShape_ConnectedFaceSet_IsNull(t: "opencascade::handle< StepShape_ConnectedFaceSet > const &") -> "bool":
    return _StepShape.Handle_StepShape_ConnectedFaceSet_IsNull(t)

def Handle_StepShape_CsgShapeRepresentation_Create() -> "opencascade::handle< StepShape_CsgShapeRepresentation >":
    return _StepShape.Handle_StepShape_CsgShapeRepresentation_Create()

def Handle_StepShape_CsgShapeRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_CsgShapeRepresentation >":
    return _StepShape.Handle_StepShape_CsgShapeRepresentation_DownCast(t)

def Handle_StepShape_CsgShapeRepresentation_IsNull(t: "opencascade::handle< StepShape_CsgShapeRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_CsgShapeRepresentation_IsNull(t)

def Handle_StepShape_CsgSolid_Create() -> "opencascade::handle< StepShape_CsgSolid >":
    return _StepShape.Handle_StepShape_CsgSolid_Create()

def Handle_StepShape_CsgSolid_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_CsgSolid >":
    return _StepShape.Handle_StepShape_CsgSolid_DownCast(t)

def Handle_StepShape_CsgSolid_IsNull(t: "opencascade::handle< StepShape_CsgSolid > const &") -> "bool":
    return _StepShape.Handle_StepShape_CsgSolid_IsNull(t)

def Handle_StepShape_DimensionalLocationWithPath_Create() -> "opencascade::handle< StepShape_DimensionalLocationWithPath >":
    return _StepShape.Handle_StepShape_DimensionalLocationWithPath_Create()

def Handle_StepShape_DimensionalLocationWithPath_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_DimensionalLocationWithPath >":
    return _StepShape.Handle_StepShape_DimensionalLocationWithPath_DownCast(t)

def Handle_StepShape_DimensionalLocationWithPath_IsNull(t: "opencascade::handle< StepShape_DimensionalLocationWithPath > const &") -> "bool":
    return _StepShape.Handle_StepShape_DimensionalLocationWithPath_IsNull(t)

def Handle_StepShape_DimensionalSizeWithPath_Create() -> "opencascade::handle< StepShape_DimensionalSizeWithPath >":
    return _StepShape.Handle_StepShape_DimensionalSizeWithPath_Create()

def Handle_StepShape_DimensionalSizeWithPath_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_DimensionalSizeWithPath >":
    return _StepShape.Handle_StepShape_DimensionalSizeWithPath_DownCast(t)

def Handle_StepShape_DimensionalSizeWithPath_IsNull(t: "opencascade::handle< StepShape_DimensionalSizeWithPath > const &") -> "bool":
    return _StepShape.Handle_StepShape_DimensionalSizeWithPath_IsNull(t)

def Handle_StepShape_DirectedDimensionalLocation_Create() -> "opencascade::handle< StepShape_DirectedDimensionalLocation >":
    return _StepShape.Handle_StepShape_DirectedDimensionalLocation_Create()

def Handle_StepShape_DirectedDimensionalLocation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_DirectedDimensionalLocation >":
    return _StepShape.Handle_StepShape_DirectedDimensionalLocation_DownCast(t)

def Handle_StepShape_DirectedDimensionalLocation_IsNull(t: "opencascade::handle< StepShape_DirectedDimensionalLocation > const &") -> "bool":
    return _StepShape.Handle_StepShape_DirectedDimensionalLocation_IsNull(t)

def Handle_StepShape_Edge_Create() -> "opencascade::handle< StepShape_Edge >":
    return _StepShape.Handle_StepShape_Edge_Create()

def Handle_StepShape_Edge_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_Edge >":
    return _StepShape.Handle_StepShape_Edge_DownCast(t)

def Handle_StepShape_Edge_IsNull(t: "opencascade::handle< StepShape_Edge > const &") -> "bool":
    return _StepShape.Handle_StepShape_Edge_IsNull(t)

def Handle_StepShape_EdgeBasedWireframeShapeRepresentation_Create() -> "opencascade::handle< StepShape_EdgeBasedWireframeShapeRepresentation >":
    return _StepShape.Handle_StepShape_EdgeBasedWireframeShapeRepresentation_Create()

def Handle_StepShape_EdgeBasedWireframeShapeRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_EdgeBasedWireframeShapeRepresentation >":
    return _StepShape.Handle_StepShape_EdgeBasedWireframeShapeRepresentation_DownCast(t)

def Handle_StepShape_EdgeBasedWireframeShapeRepresentation_IsNull(t: "opencascade::handle< StepShape_EdgeBasedWireframeShapeRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_EdgeBasedWireframeShapeRepresentation_IsNull(t)

def Handle_StepShape_Face_Create() -> "opencascade::handle< StepShape_Face >":
    return _StepShape.Handle_StepShape_Face_Create()

def Handle_StepShape_Face_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_Face >":
    return _StepShape.Handle_StepShape_Face_DownCast(t)

def Handle_StepShape_Face_IsNull(t: "opencascade::handle< StepShape_Face > const &") -> "bool":
    return _StepShape.Handle_StepShape_Face_IsNull(t)

def Handle_StepShape_FaceBound_Create() -> "opencascade::handle< StepShape_FaceBound >":
    return _StepShape.Handle_StepShape_FaceBound_Create()

def Handle_StepShape_FaceBound_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_FaceBound >":
    return _StepShape.Handle_StepShape_FaceBound_DownCast(t)

def Handle_StepShape_FaceBound_IsNull(t: "opencascade::handle< StepShape_FaceBound > const &") -> "bool":
    return _StepShape.Handle_StepShape_FaceBound_IsNull(t)

def Handle_StepShape_FacetedBrepShapeRepresentation_Create() -> "opencascade::handle< StepShape_FacetedBrepShapeRepresentation >":
    return _StepShape.Handle_StepShape_FacetedBrepShapeRepresentation_Create()

def Handle_StepShape_FacetedBrepShapeRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_FacetedBrepShapeRepresentation >":
    return _StepShape.Handle_StepShape_FacetedBrepShapeRepresentation_DownCast(t)

def Handle_StepShape_FacetedBrepShapeRepresentation_IsNull(t: "opencascade::handle< StepShape_FacetedBrepShapeRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_FacetedBrepShapeRepresentation_IsNull(t)

def Handle_StepShape_GeometricCurveSet_Create() -> "opencascade::handle< StepShape_GeometricCurveSet >":
    return _StepShape.Handle_StepShape_GeometricCurveSet_Create()

def Handle_StepShape_GeometricCurveSet_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_GeometricCurveSet >":
    return _StepShape.Handle_StepShape_GeometricCurveSet_DownCast(t)

def Handle_StepShape_GeometricCurveSet_IsNull(t: "opencascade::handle< StepShape_GeometricCurveSet > const &") -> "bool":
    return _StepShape.Handle_StepShape_GeometricCurveSet_IsNull(t)

def Handle_StepShape_GeometricallyBoundedSurfaceShapeRepresentation_Create() -> "opencascade::handle< StepShape_GeometricallyBoundedSurfaceShapeRepresentation >":
    return _StepShape.Handle_StepShape_GeometricallyBoundedSurfaceShapeRepresentation_Create()

def Handle_StepShape_GeometricallyBoundedSurfaceShapeRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_GeometricallyBoundedSurfaceShapeRepresentation >":
    return _StepShape.Handle_StepShape_GeometricallyBoundedSurfaceShapeRepresentation_DownCast(t)

def Handle_StepShape_GeometricallyBoundedSurfaceShapeRepresentation_IsNull(t: "opencascade::handle< StepShape_GeometricallyBoundedSurfaceShapeRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_GeometricallyBoundedSurfaceShapeRepresentation_IsNull(t)

def Handle_StepShape_GeometricallyBoundedWireframeShapeRepresentation_Create() -> "opencascade::handle< StepShape_GeometricallyBoundedWireframeShapeRepresentation >":
    return _StepShape.Handle_StepShape_GeometricallyBoundedWireframeShapeRepresentation_Create()

def Handle_StepShape_GeometricallyBoundedWireframeShapeRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_GeometricallyBoundedWireframeShapeRepresentation >":
    return _StepShape.Handle_StepShape_GeometricallyBoundedWireframeShapeRepresentation_DownCast(t)

def Handle_StepShape_GeometricallyBoundedWireframeShapeRepresentation_IsNull(t: "opencascade::handle< StepShape_GeometricallyBoundedWireframeShapeRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_GeometricallyBoundedWireframeShapeRepresentation_IsNull(t)

def Handle_StepShape_Loop_Create() -> "opencascade::handle< StepShape_Loop >":
    return _StepShape.Handle_StepShape_Loop_Create()

def Handle_StepShape_Loop_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_Loop >":
    return _StepShape.Handle_StepShape_Loop_DownCast(t)

def Handle_StepShape_Loop_IsNull(t: "opencascade::handle< StepShape_Loop > const &") -> "bool":
    return _StepShape.Handle_StepShape_Loop_IsNull(t)

def Handle_StepShape_LoopAndPath_Create() -> "opencascade::handle< StepShape_LoopAndPath >":
    return _StepShape.Handle_StepShape_LoopAndPath_Create()

def Handle_StepShape_LoopAndPath_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_LoopAndPath >":
    return _StepShape.Handle_StepShape_LoopAndPath_DownCast(t)

def Handle_StepShape_LoopAndPath_IsNull(t: "opencascade::handle< StepShape_LoopAndPath > const &") -> "bool":
    return _StepShape.Handle_StepShape_LoopAndPath_IsNull(t)

def Handle_StepShape_ManifoldSolidBrep_Create() -> "opencascade::handle< StepShape_ManifoldSolidBrep >":
    return _StepShape.Handle_StepShape_ManifoldSolidBrep_Create()

def Handle_StepShape_ManifoldSolidBrep_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ManifoldSolidBrep >":
    return _StepShape.Handle_StepShape_ManifoldSolidBrep_DownCast(t)

def Handle_StepShape_ManifoldSolidBrep_IsNull(t: "opencascade::handle< StepShape_ManifoldSolidBrep > const &") -> "bool":
    return _StepShape.Handle_StepShape_ManifoldSolidBrep_IsNull(t)

def Handle_StepShape_ManifoldSurfaceShapeRepresentation_Create() -> "opencascade::handle< StepShape_ManifoldSurfaceShapeRepresentation >":
    return _StepShape.Handle_StepShape_ManifoldSurfaceShapeRepresentation_Create()

def Handle_StepShape_ManifoldSurfaceShapeRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ManifoldSurfaceShapeRepresentation >":
    return _StepShape.Handle_StepShape_ManifoldSurfaceShapeRepresentation_DownCast(t)

def Handle_StepShape_ManifoldSurfaceShapeRepresentation_IsNull(t: "opencascade::handle< StepShape_ManifoldSurfaceShapeRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_ManifoldSurfaceShapeRepresentation_IsNull(t)

def Handle_StepShape_NonManifoldSurfaceShapeRepresentation_Create() -> "opencascade::handle< StepShape_NonManifoldSurfaceShapeRepresentation >":
    return _StepShape.Handle_StepShape_NonManifoldSurfaceShapeRepresentation_Create()

def Handle_StepShape_NonManifoldSurfaceShapeRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_NonManifoldSurfaceShapeRepresentation >":
    return _StepShape.Handle_StepShape_NonManifoldSurfaceShapeRepresentation_DownCast(t)

def Handle_StepShape_NonManifoldSurfaceShapeRepresentation_IsNull(t: "opencascade::handle< StepShape_NonManifoldSurfaceShapeRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_NonManifoldSurfaceShapeRepresentation_IsNull(t)

def Handle_StepShape_Path_Create() -> "opencascade::handle< StepShape_Path >":
    return _StepShape.Handle_StepShape_Path_Create()

def Handle_StepShape_Path_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_Path >":
    return _StepShape.Handle_StepShape_Path_DownCast(t)

def Handle_StepShape_Path_IsNull(t: "opencascade::handle< StepShape_Path > const &") -> "bool":
    return _StepShape.Handle_StepShape_Path_IsNull(t)

def Handle_StepShape_PointRepresentation_Create() -> "opencascade::handle< StepShape_PointRepresentation >":
    return _StepShape.Handle_StepShape_PointRepresentation_Create()

def Handle_StepShape_PointRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_PointRepresentation >":
    return _StepShape.Handle_StepShape_PointRepresentation_DownCast(t)

def Handle_StepShape_PointRepresentation_IsNull(t: "opencascade::handle< StepShape_PointRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_PointRepresentation_IsNull(t)

def Handle_StepShape_ShapeDimensionRepresentation_Create() -> "opencascade::handle< StepShape_ShapeDimensionRepresentation >":
    return _StepShape.Handle_StepShape_ShapeDimensionRepresentation_Create()

def Handle_StepShape_ShapeDimensionRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ShapeDimensionRepresentation >":
    return _StepShape.Handle_StepShape_ShapeDimensionRepresentation_DownCast(t)

def Handle_StepShape_ShapeDimensionRepresentation_IsNull(t: "opencascade::handle< StepShape_ShapeDimensionRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_ShapeDimensionRepresentation_IsNull(t)

def Handle_StepShape_ShapeRepresentationWithParameters_Create() -> "opencascade::handle< StepShape_ShapeRepresentationWithParameters >":
    return _StepShape.Handle_StepShape_ShapeRepresentationWithParameters_Create()

def Handle_StepShape_ShapeRepresentationWithParameters_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ShapeRepresentationWithParameters >":
    return _StepShape.Handle_StepShape_ShapeRepresentationWithParameters_DownCast(t)

def Handle_StepShape_ShapeRepresentationWithParameters_IsNull(t: "opencascade::handle< StepShape_ShapeRepresentationWithParameters > const &") -> "bool":
    return _StepShape.Handle_StepShape_ShapeRepresentationWithParameters_IsNull(t)

def Handle_StepShape_SolidReplica_Create() -> "opencascade::handle< StepShape_SolidReplica >":
    return _StepShape.Handle_StepShape_SolidReplica_Create()

def Handle_StepShape_SolidReplica_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_SolidReplica >":
    return _StepShape.Handle_StepShape_SolidReplica_DownCast(t)

def Handle_StepShape_SolidReplica_IsNull(t: "opencascade::handle< StepShape_SolidReplica > const &") -> "bool":
    return _StepShape.Handle_StepShape_SolidReplica_IsNull(t)

def Handle_StepShape_SweptAreaSolid_Create() -> "opencascade::handle< StepShape_SweptAreaSolid >":
    return _StepShape.Handle_StepShape_SweptAreaSolid_Create()

def Handle_StepShape_SweptAreaSolid_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_SweptAreaSolid >":
    return _StepShape.Handle_StepShape_SweptAreaSolid_DownCast(t)

def Handle_StepShape_SweptAreaSolid_IsNull(t: "opencascade::handle< StepShape_SweptAreaSolid > const &") -> "bool":
    return _StepShape.Handle_StepShape_SweptAreaSolid_IsNull(t)

def Handle_StepShape_SweptFaceSolid_Create() -> "opencascade::handle< StepShape_SweptFaceSolid >":
    return _StepShape.Handle_StepShape_SweptFaceSolid_Create()

def Handle_StepShape_SweptFaceSolid_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_SweptFaceSolid >":
    return _StepShape.Handle_StepShape_SweptFaceSolid_DownCast(t)

def Handle_StepShape_SweptFaceSolid_IsNull(t: "opencascade::handle< StepShape_SweptFaceSolid > const &") -> "bool":
    return _StepShape.Handle_StepShape_SweptFaceSolid_IsNull(t)

def Handle_StepShape_TransitionalShapeRepresentation_Create() -> "opencascade::handle< StepShape_TransitionalShapeRepresentation >":
    return _StepShape.Handle_StepShape_TransitionalShapeRepresentation_Create()

def Handle_StepShape_TransitionalShapeRepresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_TransitionalShapeRepresentation >":
    return _StepShape.Handle_StepShape_TransitionalShapeRepresentation_DownCast(t)

def Handle_StepShape_TransitionalShapeRepresentation_IsNull(t: "opencascade::handle< StepShape_TransitionalShapeRepresentation > const &") -> "bool":
    return _StepShape.Handle_StepShape_TransitionalShapeRepresentation_IsNull(t)

def Handle_StepShape_Vertex_Create() -> "opencascade::handle< StepShape_Vertex >":
    return _StepShape.Handle_StepShape_Vertex_Create()

def Handle_StepShape_Vertex_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_Vertex >":
    return _StepShape.Handle_StepShape_Vertex_DownCast(t)

def Handle_StepShape_Vertex_IsNull(t: "opencascade::handle< StepShape_Vertex > const &") -> "bool":
    return _StepShape.Handle_StepShape_Vertex_IsNull(t)

def Handle_StepShape_BrepWithVoids_Create() -> "opencascade::handle< StepShape_BrepWithVoids >":
    return _StepShape.Handle_StepShape_BrepWithVoids_Create()

def Handle_StepShape_BrepWithVoids_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_BrepWithVoids >":
    return _StepShape.Handle_StepShape_BrepWithVoids_DownCast(t)

def Handle_StepShape_BrepWithVoids_IsNull(t: "opencascade::handle< StepShape_BrepWithVoids > const &") -> "bool":
    return _StepShape.Handle_StepShape_BrepWithVoids_IsNull(t)

def Handle_StepShape_ClosedShell_Create() -> "opencascade::handle< StepShape_ClosedShell >":
    return _StepShape.Handle_StepShape_ClosedShell_Create()

def Handle_StepShape_ClosedShell_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ClosedShell >":
    return _StepShape.Handle_StepShape_ClosedShell_DownCast(t)

def Handle_StepShape_ClosedShell_IsNull(t: "opencascade::handle< StepShape_ClosedShell > const &") -> "bool":
    return _StepShape.Handle_StepShape_ClosedShell_IsNull(t)

def Handle_StepShape_ConnectedFaceSubSet_Create() -> "opencascade::handle< StepShape_ConnectedFaceSubSet >":
    return _StepShape.Handle_StepShape_ConnectedFaceSubSet_Create()

def Handle_StepShape_ConnectedFaceSubSet_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ConnectedFaceSubSet >":
    return _StepShape.Handle_StepShape_ConnectedFaceSubSet_DownCast(t)

def Handle_StepShape_ConnectedFaceSubSet_IsNull(t: "opencascade::handle< StepShape_ConnectedFaceSubSet > const &") -> "bool":
    return _StepShape.Handle_StepShape_ConnectedFaceSubSet_IsNull(t)

def Handle_StepShape_EdgeCurve_Create() -> "opencascade::handle< StepShape_EdgeCurve >":
    return _StepShape.Handle_StepShape_EdgeCurve_Create()

def Handle_StepShape_EdgeCurve_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_EdgeCurve >":
    return _StepShape.Handle_StepShape_EdgeCurve_DownCast(t)

def Handle_StepShape_EdgeCurve_IsNull(t: "opencascade::handle< StepShape_EdgeCurve > const &") -> "bool":
    return _StepShape.Handle_StepShape_EdgeCurve_IsNull(t)

def Handle_StepShape_EdgeLoop_Create() -> "opencascade::handle< StepShape_EdgeLoop >":
    return _StepShape.Handle_StepShape_EdgeLoop_Create()

def Handle_StepShape_EdgeLoop_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_EdgeLoop >":
    return _StepShape.Handle_StepShape_EdgeLoop_DownCast(t)

def Handle_StepShape_EdgeLoop_IsNull(t: "opencascade::handle< StepShape_EdgeLoop > const &") -> "bool":
    return _StepShape.Handle_StepShape_EdgeLoop_IsNull(t)

def Handle_StepShape_ExtrudedAreaSolid_Create() -> "opencascade::handle< StepShape_ExtrudedAreaSolid >":
    return _StepShape.Handle_StepShape_ExtrudedAreaSolid_Create()

def Handle_StepShape_ExtrudedAreaSolid_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ExtrudedAreaSolid >":
    return _StepShape.Handle_StepShape_ExtrudedAreaSolid_DownCast(t)

def Handle_StepShape_ExtrudedAreaSolid_IsNull(t: "opencascade::handle< StepShape_ExtrudedAreaSolid > const &") -> "bool":
    return _StepShape.Handle_StepShape_ExtrudedAreaSolid_IsNull(t)

def Handle_StepShape_ExtrudedFaceSolid_Create() -> "opencascade::handle< StepShape_ExtrudedFaceSolid >":
    return _StepShape.Handle_StepShape_ExtrudedFaceSolid_Create()

def Handle_StepShape_ExtrudedFaceSolid_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_ExtrudedFaceSolid >":
    return _StepShape.Handle_StepShape_ExtrudedFaceSolid_DownCast(t)

def Handle_StepShape_ExtrudedFaceSolid_IsNull(t: "opencascade::handle< StepShape_ExtrudedFaceSolid > const &") -> "bool":
    return _StepShape.Handle_StepShape_ExtrudedFaceSolid_IsNull(t)

def Handle_StepShape_FaceOuterBound_Create() -> "opencascade::handle< StepShape_FaceOuterBound >":
    return _StepShape.Handle_StepShape_FaceOuterBound_Create()

def Handle_StepShape_FaceOuterBound_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_FaceOuterBound >":
    return _StepShape.Handle_StepShape_FaceOuterBound_DownCast(t)

def Handle_StepShape_FaceOuterBound_IsNull(t: "opencascade::handle< StepShape_FaceOuterBound > const &") -> "bool":
    return _StepShape.Handle_StepShape_FaceOuterBound_IsNull(t)

def Handle_StepShape_FaceSurface_Create() -> "opencascade::handle< StepShape_FaceSurface >":
    return _StepShape.Handle_StepShape_FaceSurface_Create()

def Handle_StepShape_FaceSurface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_FaceSurface >":
    return _StepShape.Handle_StepShape_FaceSurface_DownCast(t)

def Handle_StepShape_FaceSurface_IsNull(t: "opencascade::handle< StepShape_FaceSurface > const &") -> "bool":
    return _StepShape.Handle_StepShape_FaceSurface_IsNull(t)

def Handle_StepShape_FacetedBrep_Create() -> "opencascade::handle< StepShape_FacetedBrep >":
    return _StepShape.Handle_StepShape_FacetedBrep_Create()

def Handle_StepShape_FacetedBrep_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_FacetedBrep >":
    return _StepShape.Handle_StepShape_FacetedBrep_DownCast(t)

def Handle_StepShape_FacetedBrep_IsNull(t: "opencascade::handle< StepShape_FacetedBrep > const &") -> "bool":
    return _StepShape.Handle_StepShape_FacetedBrep_IsNull(t)

def Handle_StepShape_FacetedBrepAndBrepWithVoids_Create() -> "opencascade::handle< StepShape_FacetedBrepAndBrepWithVoids >":
    return _StepShape.Handle_StepShape_FacetedBrepAndBrepWithVoids_Create()

def Handle_StepShape_FacetedBrepAndBrepWithVoids_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_FacetedBrepAndBrepWithVoids >":
    return _StepShape.Handle_StepShape_FacetedBrepAndBrepWithVoids_DownCast(t)

def Handle_StepShape_FacetedBrepAndBrepWithVoids_IsNull(t: "opencascade::handle< StepShape_FacetedBrepAndBrepWithVoids > const &") -> "bool":
    return _StepShape.Handle_StepShape_FacetedBrepAndBrepWithVoids_IsNull(t)

def Handle_StepShape_OpenShell_Create() -> "opencascade::handle< StepShape_OpenShell >":
    return _StepShape.Handle_StepShape_OpenShell_Create()

def Handle_StepShape_OpenShell_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_OpenShell >":
    return _StepShape.Handle_StepShape_OpenShell_DownCast(t)

def Handle_StepShape_OpenShell_IsNull(t: "opencascade::handle< StepShape_OpenShell > const &") -> "bool":
    return _StepShape.Handle_StepShape_OpenShell_IsNull(t)

def Handle_StepShape_OrientedEdge_Create() -> "opencascade::handle< StepShape_OrientedEdge >":
    return _StepShape.Handle_StepShape_OrientedEdge_Create()

def Handle_StepShape_OrientedEdge_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_OrientedEdge >":
    return _StepShape.Handle_StepShape_OrientedEdge_DownCast(t)

def Handle_StepShape_OrientedEdge_IsNull(t: "opencascade::handle< StepShape_OrientedEdge > const &") -> "bool":
    return _StepShape.Handle_StepShape_OrientedEdge_IsNull(t)

def Handle_StepShape_OrientedFace_Create() -> "opencascade::handle< StepShape_OrientedFace >":
    return _StepShape.Handle_StepShape_OrientedFace_Create()

def Handle_StepShape_OrientedFace_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_OrientedFace >":
    return _StepShape.Handle_StepShape_OrientedFace_DownCast(t)

def Handle_StepShape_OrientedFace_IsNull(t: "opencascade::handle< StepShape_OrientedFace > const &") -> "bool":
    return _StepShape.Handle_StepShape_OrientedFace_IsNull(t)

def Handle_StepShape_OrientedPath_Create() -> "opencascade::handle< StepShape_OrientedPath >":
    return _StepShape.Handle_StepShape_OrientedPath_Create()

def Handle_StepShape_OrientedPath_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_OrientedPath >":
    return _StepShape.Handle_StepShape_OrientedPath_DownCast(t)

def Handle_StepShape_OrientedPath_IsNull(t: "opencascade::handle< StepShape_OrientedPath > const &") -> "bool":
    return _StepShape.Handle_StepShape_OrientedPath_IsNull(t)

def Handle_StepShape_PolyLoop_Create() -> "opencascade::handle< StepShape_PolyLoop >":
    return _StepShape.Handle_StepShape_PolyLoop_Create()

def Handle_StepShape_PolyLoop_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_PolyLoop >":
    return _StepShape.Handle_StepShape_PolyLoop_DownCast(t)

def Handle_StepShape_PolyLoop_IsNull(t: "opencascade::handle< StepShape_PolyLoop > const &") -> "bool":
    return _StepShape.Handle_StepShape_PolyLoop_IsNull(t)

def Handle_StepShape_RevolvedAreaSolid_Create() -> "opencascade::handle< StepShape_RevolvedAreaSolid >":
    return _StepShape.Handle_StepShape_RevolvedAreaSolid_Create()

def Handle_StepShape_RevolvedAreaSolid_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_RevolvedAreaSolid >":
    return _StepShape.Handle_StepShape_RevolvedAreaSolid_DownCast(t)

def Handle_StepShape_RevolvedAreaSolid_IsNull(t: "opencascade::handle< StepShape_RevolvedAreaSolid > const &") -> "bool":
    return _StepShape.Handle_StepShape_RevolvedAreaSolid_IsNull(t)

def Handle_StepShape_RevolvedFaceSolid_Create() -> "opencascade::handle< StepShape_RevolvedFaceSolid >":
    return _StepShape.Handle_StepShape_RevolvedFaceSolid_Create()

def Handle_StepShape_RevolvedFaceSolid_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_RevolvedFaceSolid >":
    return _StepShape.Handle_StepShape_RevolvedFaceSolid_DownCast(t)

def Handle_StepShape_RevolvedFaceSolid_IsNull(t: "opencascade::handle< StepShape_RevolvedFaceSolid > const &") -> "bool":
    return _StepShape.Handle_StepShape_RevolvedFaceSolid_IsNull(t)

def Handle_StepShape_Subedge_Create() -> "opencascade::handle< StepShape_Subedge >":
    return _StepShape.Handle_StepShape_Subedge_Create()

def Handle_StepShape_Subedge_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_Subedge >":
    return _StepShape.Handle_StepShape_Subedge_DownCast(t)

def Handle_StepShape_Subedge_IsNull(t: "opencascade::handle< StepShape_Subedge > const &") -> "bool":
    return _StepShape.Handle_StepShape_Subedge_IsNull(t)

def Handle_StepShape_Subface_Create() -> "opencascade::handle< StepShape_Subface >":
    return _StepShape.Handle_StepShape_Subface_Create()

def Handle_StepShape_Subface_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_Subface >":
    return _StepShape.Handle_StepShape_Subface_DownCast(t)

def Handle_StepShape_Subface_IsNull(t: "opencascade::handle< StepShape_Subface > const &") -> "bool":
    return _StepShape.Handle_StepShape_Subface_IsNull(t)

def Handle_StepShape_VertexLoop_Create() -> "opencascade::handle< StepShape_VertexLoop >":
    return _StepShape.Handle_StepShape_VertexLoop_Create()

def Handle_StepShape_VertexLoop_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_VertexLoop >":
    return _StepShape.Handle_StepShape_VertexLoop_DownCast(t)

def Handle_StepShape_VertexLoop_IsNull(t: "opencascade::handle< StepShape_VertexLoop > const &") -> "bool":
    return _StepShape.Handle_StepShape_VertexLoop_IsNull(t)

def Handle_StepShape_VertexPoint_Create() -> "opencascade::handle< StepShape_VertexPoint >":
    return _StepShape.Handle_StepShape_VertexPoint_Create()

def Handle_StepShape_VertexPoint_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_VertexPoint >":
    return _StepShape.Handle_StepShape_VertexPoint_DownCast(t)

def Handle_StepShape_VertexPoint_IsNull(t: "opencascade::handle< StepShape_VertexPoint > const &") -> "bool":
    return _StepShape.Handle_StepShape_VertexPoint_IsNull(t)

def Handle_StepShape_AdvancedFace_Create() -> "opencascade::handle< StepShape_AdvancedFace >":
    return _StepShape.Handle_StepShape_AdvancedFace_Create()

def Handle_StepShape_AdvancedFace_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_AdvancedFace >":
    return _StepShape.Handle_StepShape_AdvancedFace_DownCast(t)

def Handle_StepShape_AdvancedFace_IsNull(t: "opencascade::handle< StepShape_AdvancedFace > const &") -> "bool":
    return _StepShape.Handle_StepShape_AdvancedFace_IsNull(t)

def Handle_StepShape_OrientedClosedShell_Create() -> "opencascade::handle< StepShape_OrientedClosedShell >":
    return _StepShape.Handle_StepShape_OrientedClosedShell_Create()

def Handle_StepShape_OrientedClosedShell_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_OrientedClosedShell >":
    return _StepShape.Handle_StepShape_OrientedClosedShell_DownCast(t)

def Handle_StepShape_OrientedClosedShell_IsNull(t: "opencascade::handle< StepShape_OrientedClosedShell > const &") -> "bool":
    return _StepShape.Handle_StepShape_OrientedClosedShell_IsNull(t)

def Handle_StepShape_OrientedOpenShell_Create() -> "opencascade::handle< StepShape_OrientedOpenShell >":
    return _StepShape.Handle_StepShape_OrientedOpenShell_Create()

def Handle_StepShape_OrientedOpenShell_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_OrientedOpenShell >":
    return _StepShape.Handle_StepShape_OrientedOpenShell_DownCast(t)

def Handle_StepShape_OrientedOpenShell_IsNull(t: "opencascade::handle< StepShape_OrientedOpenShell > const &") -> "bool":
    return _StepShape.Handle_StepShape_OrientedOpenShell_IsNull(t)

def Handle_StepShape_SeamEdge_Create() -> "opencascade::handle< StepShape_SeamEdge >":
    return _StepShape.Handle_StepShape_SeamEdge_Create()

def Handle_StepShape_SeamEdge_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_SeamEdge >":
    return _StepShape.Handle_StepShape_SeamEdge_DownCast(t)

def Handle_StepShape_SeamEdge_IsNull(t: "opencascade::handle< StepShape_SeamEdge > const &") -> "bool":
    return _StepShape.Handle_StepShape_SeamEdge_IsNull(t)

def Handle_StepShape_HArray1OfConnectedEdgeSet_Create() -> "opencascade::handle< StepShape_HArray1OfConnectedEdgeSet >":
    return _StepShape.Handle_StepShape_HArray1OfConnectedEdgeSet_Create()

def Handle_StepShape_HArray1OfConnectedEdgeSet_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_HArray1OfConnectedEdgeSet >":
    return _StepShape.Handle_StepShape_HArray1OfConnectedEdgeSet_DownCast(t)

def Handle_StepShape_HArray1OfConnectedEdgeSet_IsNull(t: "opencascade::handle< StepShape_HArray1OfConnectedEdgeSet > const &") -> "bool":
    return _StepShape.Handle_StepShape_HArray1OfConnectedEdgeSet_IsNull(t)

def Handle_StepShape_HArray1OfFaceBound_Create() -> "opencascade::handle< StepShape_HArray1OfFaceBound >":
    return _StepShape.Handle_StepShape_HArray1OfFaceBound_Create()

def Handle_StepShape_HArray1OfFaceBound_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_HArray1OfFaceBound >":
    return _StepShape.Handle_StepShape_HArray1OfFaceBound_DownCast(t)

def Handle_StepShape_HArray1OfFaceBound_IsNull(t: "opencascade::handle< StepShape_HArray1OfFaceBound > const &") -> "bool":
    return _StepShape.Handle_StepShape_HArray1OfFaceBound_IsNull(t)

def Handle_StepShape_HArray1OfGeometricSetSelect_Create() -> "opencascade::handle< StepShape_HArray1OfGeometricSetSelect >":
    return _StepShape.Handle_StepShape_HArray1OfGeometricSetSelect_Create()

def Handle_StepShape_HArray1OfGeometricSetSelect_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_HArray1OfGeometricSetSelect >":
    return _StepShape.Handle_StepShape_HArray1OfGeometricSetSelect_DownCast(t)

def Handle_StepShape_HArray1OfGeometricSetSelect_IsNull(t: "opencascade::handle< StepShape_HArray1OfGeometricSetSelect > const &") -> "bool":
    return _StepShape.Handle_StepShape_HArray1OfGeometricSetSelect_IsNull(t)

def Handle_StepShape_HArray1OfConnectedFaceSet_Create() -> "opencascade::handle< StepShape_HArray1OfConnectedFaceSet >":
    return _StepShape.Handle_StepShape_HArray1OfConnectedFaceSet_Create()

def Handle_StepShape_HArray1OfConnectedFaceSet_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_HArray1OfConnectedFaceSet >":
    return _StepShape.Handle_StepShape_HArray1OfConnectedFaceSet_DownCast(t)

def Handle_StepShape_HArray1OfConnectedFaceSet_IsNull(t: "opencascade::handle< StepShape_HArray1OfConnectedFaceSet > const &") -> "bool":
    return _StepShape.Handle_StepShape_HArray1OfConnectedFaceSet_IsNull(t)

def Handle_StepShape_HArray1OfEdge_Create() -> "opencascade::handle< StepShape_HArray1OfEdge >":
    return _StepShape.Handle_StepShape_HArray1OfEdge_Create()

def Handle_StepShape_HArray1OfEdge_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_HArray1OfEdge >":
    return _StepShape.Handle_StepShape_HArray1OfEdge_DownCast(t)

def Handle_StepShape_HArray1OfEdge_IsNull(t: "opencascade::handle< StepShape_HArray1OfEdge > const &") -> "bool":
    return _StepShape.Handle_StepShape_HArray1OfEdge_IsNull(t)

def Handle_StepShape_HArray1OfFace_Create() -> "opencascade::handle< StepShape_HArray1OfFace >":
    return _StepShape.Handle_StepShape_HArray1OfFace_Create()

def Handle_StepShape_HArray1OfFace_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_HArray1OfFace >":
    return _StepShape.Handle_StepShape_HArray1OfFace_DownCast(t)

def Handle_StepShape_HArray1OfFace_IsNull(t: "opencascade::handle< StepShape_HArray1OfFace > const &") -> "bool":
    return _StepShape.Handle_StepShape_HArray1OfFace_IsNull(t)

def Handle_StepShape_HArray1OfShapeDimensionRepresentationItem_Create() -> "opencascade::handle< StepShape_HArray1OfShapeDimensionRepresentationItem >":
    return _StepShape.Handle_StepShape_HArray1OfShapeDimensionRepresentationItem_Create()

def Handle_StepShape_HArray1OfShapeDimensionRepresentationItem_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_HArray1OfShapeDimensionRepresentationItem >":
    return _StepShape.Handle_StepShape_HArray1OfShapeDimensionRepresentationItem_DownCast(t)

def Handle_StepShape_HArray1OfShapeDimensionRepresentationItem_IsNull(t: "opencascade::handle< StepShape_HArray1OfShapeDimensionRepresentationItem > const &") -> "bool":
    return _StepShape.Handle_StepShape_HArray1OfShapeDimensionRepresentationItem_IsNull(t)

def Handle_StepShape_HArray1OfValueQualifier_Create() -> "opencascade::handle< StepShape_HArray1OfValueQualifier >":
    return _StepShape.Handle_StepShape_HArray1OfValueQualifier_Create()

def Handle_StepShape_HArray1OfValueQualifier_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_HArray1OfValueQualifier >":
    return _StepShape.Handle_StepShape_HArray1OfValueQualifier_DownCast(t)

def Handle_StepShape_HArray1OfValueQualifier_IsNull(t: "opencascade::handle< StepShape_HArray1OfValueQualifier > const &") -> "bool":
    return _StepShape.Handle_StepShape_HArray1OfValueQualifier_IsNull(t)

def Handle_StepShape_HArray1OfShell_Create() -> "opencascade::handle< StepShape_HArray1OfShell >":
    return _StepShape.Handle_StepShape_HArray1OfShell_Create()

def Handle_StepShape_HArray1OfShell_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_HArray1OfShell >":
    return _StepShape.Handle_StepShape_HArray1OfShell_DownCast(t)

def Handle_StepShape_HArray1OfShell_IsNull(t: "opencascade::handle< StepShape_HArray1OfShell > const &") -> "bool":
    return _StepShape.Handle_StepShape_HArray1OfShell_IsNull(t)

def Handle_StepShape_HArray1OfOrientedClosedShell_Create() -> "opencascade::handle< StepShape_HArray1OfOrientedClosedShell >":
    return _StepShape.Handle_StepShape_HArray1OfOrientedClosedShell_Create()

def Handle_StepShape_HArray1OfOrientedClosedShell_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_HArray1OfOrientedClosedShell >":
    return _StepShape.Handle_StepShape_HArray1OfOrientedClosedShell_DownCast(t)

def Handle_StepShape_HArray1OfOrientedClosedShell_IsNull(t: "opencascade::handle< StepShape_HArray1OfOrientedClosedShell > const &") -> "bool":
    return _StepShape.Handle_StepShape_HArray1OfOrientedClosedShell_IsNull(t)

def Handle_StepShape_HArray1OfOrientedEdge_Create() -> "opencascade::handle< StepShape_HArray1OfOrientedEdge >":
    return _StepShape.Handle_StepShape_HArray1OfOrientedEdge_Create()

def Handle_StepShape_HArray1OfOrientedEdge_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< StepShape_HArray1OfOrientedEdge >":
    return _StepShape.Handle_StepShape_HArray1OfOrientedEdge_DownCast(t)

def Handle_StepShape_HArray1OfOrientedEdge_IsNull(t: "opencascade::handle< StepShape_HArray1OfOrientedEdge > const &") -> "bool":
    return _StepShape.Handle_StepShape_HArray1OfOrientedEdge_IsNull(t)
class StepShape_Array1OfConnectedEdgeSet(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< StepShape_ConnectedEdgeSet > >::iterator":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_begin(self)

    def end(self) -> "NCollection_Array1< opencascade::handle< StepShape_ConnectedEdgeSet > >::iterator":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_end(self)

    def cbegin(self) -> "NCollection_Array1< opencascade::handle< StepShape_ConnectedEdgeSet > >::const_iterator":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_cbegin(self)

    def cend(self) -> "NCollection_Array1< opencascade::handle< StepShape_ConnectedEdgeSet > >::const_iterator":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_cend(self)

    def __init__(self, *args):
        _StepShape.StepShape_Array1OfConnectedEdgeSet_swiginit(self, _StepShape.new_StepShape_Array1OfConnectedEdgeSet(*args))

    def Init(self, theValue: "opencascade::handle< StepShape_ConnectedEdgeSet > const &") -> "void":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_IsAllocated(self)

    def Assign(self, theOther: "StepShape_Array1OfConnectedEdgeSet") -> "NCollection_Array1< opencascade::handle< StepShape_ConnectedEdgeSet > > &":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_Assign(self, theOther)

    def Move(self, theOther: "StepShape_Array1OfConnectedEdgeSet") -> "NCollection_Array1< opencascade::handle< StepShape_ConnectedEdgeSet > > &":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< opencascade::handle< StepShape_ConnectedEdgeSet > > &":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_Set(self, *args)

    def First(self) -> "opencascade::handle< StepShape_ConnectedEdgeSet > const &":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_First(self)

    def ChangeFirst(self) -> "opencascade::handle< StepShape_ConnectedEdgeSet > &":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_ChangeFirst(self)

    def Last(self) -> "opencascade::handle< StepShape_ConnectedEdgeSet > const &":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_Last(self)

    def ChangeLast(self) -> "opencascade::handle< StepShape_ConnectedEdgeSet > &":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepShape_ConnectedEdgeSet > const &":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepShape_ConnectedEdgeSet > &":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "opencascade::handle< StepShape_ConnectedEdgeSet > &":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "opencascade::handle< StepShape_ConnectedEdgeSet > const &") -> "void":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        return _StepShape.StepShape_Array1OfConnectedEdgeSet_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepShape.delete_StepShape_Array1OfConnectedEdgeSet

    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 StepShape_Array1OfConnectedEdgeSet in _StepShape:
_StepShape.StepShape_Array1OfConnectedEdgeSet_swigregister(StepShape_Array1OfConnectedEdgeSet)

class StepShape_Array1OfConnectedFaceSet(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< StepShape_ConnectedFaceSet > >::iterator":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_begin(self)

    def end(self) -> "NCollection_Array1< opencascade::handle< StepShape_ConnectedFaceSet > >::iterator":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_end(self)

    def cbegin(self) -> "NCollection_Array1< opencascade::handle< StepShape_ConnectedFaceSet > >::const_iterator":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_cbegin(self)

    def cend(self) -> "NCollection_Array1< opencascade::handle< StepShape_ConnectedFaceSet > >::const_iterator":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_cend(self)

    def __init__(self, *args):
        _StepShape.StepShape_Array1OfConnectedFaceSet_swiginit(self, _StepShape.new_StepShape_Array1OfConnectedFaceSet(*args))

    def Init(self, theValue: "opencascade::handle< StepShape_ConnectedFaceSet > const &") -> "void":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_IsAllocated(self)

    def Assign(self, theOther: "StepShape_Array1OfConnectedFaceSet") -> "NCollection_Array1< opencascade::handle< StepShape_ConnectedFaceSet > > &":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_Assign(self, theOther)

    def Move(self, theOther: "StepShape_Array1OfConnectedFaceSet") -> "NCollection_Array1< opencascade::handle< StepShape_ConnectedFaceSet > > &":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< opencascade::handle< StepShape_ConnectedFaceSet > > &":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_Set(self, *args)

    def First(self) -> "opencascade::handle< StepShape_ConnectedFaceSet > const &":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_First(self)

    def ChangeFirst(self) -> "opencascade::handle< StepShape_ConnectedFaceSet > &":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_ChangeFirst(self)

    def Last(self) -> "opencascade::handle< StepShape_ConnectedFaceSet > const &":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_Last(self)

    def ChangeLast(self) -> "opencascade::handle< StepShape_ConnectedFaceSet > &":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepShape_ConnectedFaceSet > const &":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepShape_ConnectedFaceSet > &":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "opencascade::handle< StepShape_ConnectedFaceSet > &":
        return _StepShape.StepShape_Array1OfConnectedFaceSet___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "opencascade::handle< StepShape_ConnectedFaceSet > const &") -> "void":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        return _StepShape.StepShape_Array1OfConnectedFaceSet_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepShape.delete_StepShape_Array1OfConnectedFaceSet

    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 StepShape_Array1OfConnectedFaceSet in _StepShape:
_StepShape.StepShape_Array1OfConnectedFaceSet_swigregister(StepShape_Array1OfConnectedFaceSet)

class StepShape_Array1OfEdge(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< StepShape_Edge > >::iterator":
        return _StepShape.StepShape_Array1OfEdge_begin(self)

    def end(self) -> "NCollection_Array1< opencascade::handle< StepShape_Edge > >::iterator":
        return _StepShape.StepShape_Array1OfEdge_end(self)

    def cbegin(self) -> "NCollection_Array1< opencascade::handle< StepShape_Edge > >::const_iterator":
        return _StepShape.StepShape_Array1OfEdge_cbegin(self)

    def cend(self) -> "NCollection_Array1< opencascade::handle< StepShape_Edge > >::const_iterator":
        return _StepShape.StepShape_Array1OfEdge_cend(self)

    def __init__(self, *args):
        _StepShape.StepShape_Array1OfEdge_swiginit(self, _StepShape.new_StepShape_Array1OfEdge(*args))

    def Init(self, theValue: "opencascade::handle< StepShape_Edge > const &") -> "void":
        return _StepShape.StepShape_Array1OfEdge_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfEdge_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfEdge_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfEdge_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfEdge_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfEdge_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfEdge_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfEdge_IsAllocated(self)

    def Assign(self, theOther: "StepShape_Array1OfEdge") -> "NCollection_Array1< opencascade::handle< StepShape_Edge > > &":
        return _StepShape.StepShape_Array1OfEdge_Assign(self, theOther)

    def Move(self, theOther: "StepShape_Array1OfEdge") -> "NCollection_Array1< opencascade::handle< StepShape_Edge > > &":
        return _StepShape.StepShape_Array1OfEdge_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< opencascade::handle< StepShape_Edge > > &":
        return _StepShape.StepShape_Array1OfEdge_Set(self, *args)

    def First(self) -> "opencascade::handle< StepShape_Edge > const &":
        return _StepShape.StepShape_Array1OfEdge_First(self)

    def ChangeFirst(self) -> "opencascade::handle< StepShape_Edge > &":
        return _StepShape.StepShape_Array1OfEdge_ChangeFirst(self)

    def Last(self) -> "opencascade::handle< StepShape_Edge > const &":
        return _StepShape.StepShape_Array1OfEdge_Last(self)

    def ChangeLast(self) -> "opencascade::handle< StepShape_Edge > &":
        return _StepShape.StepShape_Array1OfEdge_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepShape_Edge > const &":
        return _StepShape.StepShape_Array1OfEdge_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepShape_Edge > &":
        return _StepShape.StepShape_Array1OfEdge_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "opencascade::handle< StepShape_Edge > &":
        return _StepShape.StepShape_Array1OfEdge___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "opencascade::handle< StepShape_Edge > const &") -> "void":
        return _StepShape.StepShape_Array1OfEdge_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        return _StepShape.StepShape_Array1OfEdge_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepShape.delete_StepShape_Array1OfEdge

    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 StepShape_Array1OfEdge in _StepShape:
_StepShape.StepShape_Array1OfEdge_swigregister(StepShape_Array1OfEdge)

class StepShape_Array1OfFace(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< StepShape_Face > >::iterator":
        return _StepShape.StepShape_Array1OfFace_begin(self)

    def end(self) -> "NCollection_Array1< opencascade::handle< StepShape_Face > >::iterator":
        return _StepShape.StepShape_Array1OfFace_end(self)

    def cbegin(self) -> "NCollection_Array1< opencascade::handle< StepShape_Face > >::const_iterator":
        return _StepShape.StepShape_Array1OfFace_cbegin(self)

    def cend(self) -> "NCollection_Array1< opencascade::handle< StepShape_Face > >::const_iterator":
        return _StepShape.StepShape_Array1OfFace_cend(self)

    def __init__(self, *args):
        _StepShape.StepShape_Array1OfFace_swiginit(self, _StepShape.new_StepShape_Array1OfFace(*args))

    def Init(self, theValue: "opencascade::handle< StepShape_Face > const &") -> "void":
        return _StepShape.StepShape_Array1OfFace_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfFace_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfFace_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfFace_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfFace_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfFace_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfFace_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfFace_IsAllocated(self)

    def Assign(self, theOther: "StepShape_Array1OfFace") -> "NCollection_Array1< opencascade::handle< StepShape_Face > > &":
        return _StepShape.StepShape_Array1OfFace_Assign(self, theOther)

    def Move(self, theOther: "StepShape_Array1OfFace") -> "NCollection_Array1< opencascade::handle< StepShape_Face > > &":
        return _StepShape.StepShape_Array1OfFace_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< opencascade::handle< StepShape_Face > > &":
        return _StepShape.StepShape_Array1OfFace_Set(self, *args)

    def First(self) -> "opencascade::handle< StepShape_Face > const &":
        return _StepShape.StepShape_Array1OfFace_First(self)

    def ChangeFirst(self) -> "opencascade::handle< StepShape_Face > &":
        return _StepShape.StepShape_Array1OfFace_ChangeFirst(self)

    def Last(self) -> "opencascade::handle< StepShape_Face > const &":
        return _StepShape.StepShape_Array1OfFace_Last(self)

    def ChangeLast(self) -> "opencascade::handle< StepShape_Face > &":
        return _StepShape.StepShape_Array1OfFace_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepShape_Face > const &":
        return _StepShape.StepShape_Array1OfFace_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepShape_Face > &":
        return _StepShape.StepShape_Array1OfFace_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "opencascade::handle< StepShape_Face > &":
        return _StepShape.StepShape_Array1OfFace___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "opencascade::handle< StepShape_Face > const &") -> "void":
        return _StepShape.StepShape_Array1OfFace_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        return _StepShape.StepShape_Array1OfFace_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepShape.delete_StepShape_Array1OfFace

    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 StepShape_Array1OfFace in _StepShape:
_StepShape.StepShape_Array1OfFace_swigregister(StepShape_Array1OfFace)

class StepShape_Array1OfFaceBound(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< StepShape_FaceBound > >::iterator":
        return _StepShape.StepShape_Array1OfFaceBound_begin(self)

    def end(self) -> "NCollection_Array1< opencascade::handle< StepShape_FaceBound > >::iterator":
        return _StepShape.StepShape_Array1OfFaceBound_end(self)

    def cbegin(self) -> "NCollection_Array1< opencascade::handle< StepShape_FaceBound > >::const_iterator":
        return _StepShape.StepShape_Array1OfFaceBound_cbegin(self)

    def cend(self) -> "NCollection_Array1< opencascade::handle< StepShape_FaceBound > >::const_iterator":
        return _StepShape.StepShape_Array1OfFaceBound_cend(self)

    def __init__(self, *args):
        _StepShape.StepShape_Array1OfFaceBound_swiginit(self, _StepShape.new_StepShape_Array1OfFaceBound(*args))

    def Init(self, theValue: "opencascade::handle< StepShape_FaceBound > const &") -> "void":
        return _StepShape.StepShape_Array1OfFaceBound_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfFaceBound_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfFaceBound_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfFaceBound_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfFaceBound_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfFaceBound_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfFaceBound_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfFaceBound_IsAllocated(self)

    def Assign(self, theOther: "StepShape_Array1OfFaceBound") -> "NCollection_Array1< opencascade::handle< StepShape_FaceBound > > &":
        return _StepShape.StepShape_Array1OfFaceBound_Assign(self, theOther)

    def Move(self, theOther: "StepShape_Array1OfFaceBound") -> "NCollection_Array1< opencascade::handle< StepShape_FaceBound > > &":
        return _StepShape.StepShape_Array1OfFaceBound_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< opencascade::handle< StepShape_FaceBound > > &":
        return _StepShape.StepShape_Array1OfFaceBound_Set(self, *args)

    def First(self) -> "opencascade::handle< StepShape_FaceBound > const &":
        return _StepShape.StepShape_Array1OfFaceBound_First(self)

    def ChangeFirst(self) -> "opencascade::handle< StepShape_FaceBound > &":
        return _StepShape.StepShape_Array1OfFaceBound_ChangeFirst(self)

    def Last(self) -> "opencascade::handle< StepShape_FaceBound > const &":
        return _StepShape.StepShape_Array1OfFaceBound_Last(self)

    def ChangeLast(self) -> "opencascade::handle< StepShape_FaceBound > &":
        return _StepShape.StepShape_Array1OfFaceBound_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepShape_FaceBound > const &":
        return _StepShape.StepShape_Array1OfFaceBound_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepShape_FaceBound > &":
        return _StepShape.StepShape_Array1OfFaceBound_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "opencascade::handle< StepShape_FaceBound > &":
        return _StepShape.StepShape_Array1OfFaceBound___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "opencascade::handle< StepShape_FaceBound > const &") -> "void":
        return _StepShape.StepShape_Array1OfFaceBound_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        return _StepShape.StepShape_Array1OfFaceBound_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepShape.delete_StepShape_Array1OfFaceBound

    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 StepShape_Array1OfFaceBound in _StepShape:
_StepShape.StepShape_Array1OfFaceBound_swigregister(StepShape_Array1OfFaceBound)

class StepShape_Array1OfGeometricSetSelect(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< StepShape_GeometricSetSelect >::iterator":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_begin(self)

    def end(self) -> "NCollection_Array1< StepShape_GeometricSetSelect >::iterator":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_end(self)

    def cbegin(self) -> "NCollection_Array1< StepShape_GeometricSetSelect >::const_iterator":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_cbegin(self)

    def cend(self) -> "NCollection_Array1< StepShape_GeometricSetSelect >::const_iterator":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_cend(self)

    def __init__(self, *args):
        _StepShape.StepShape_Array1OfGeometricSetSelect_swiginit(self, _StepShape.new_StepShape_Array1OfGeometricSetSelect(*args))

    def Init(self, theValue: "StepShape_GeometricSetSelect") -> "void":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_IsAllocated(self)

    def Assign(self, theOther: "StepShape_Array1OfGeometricSetSelect") -> "NCollection_Array1< StepShape_GeometricSetSelect > &":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_Assign(self, theOther)

    def Move(self, theOther: "StepShape_Array1OfGeometricSetSelect") -> "NCollection_Array1< StepShape_GeometricSetSelect > &":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< StepShape_GeometricSetSelect > &":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_Set(self, *args)

    def First(self) -> "StepShape_GeometricSetSelect const &":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_First(self)

    def ChangeFirst(self) -> "StepShape_GeometricSetSelect &":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_ChangeFirst(self)

    def Last(self) -> "StepShape_GeometricSetSelect const &":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_Last(self)

    def ChangeLast(self) -> "StepShape_GeometricSetSelect &":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "StepShape_GeometricSetSelect const &":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "StepShape_GeometricSetSelect &":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "StepShape_GeometricSetSelect &":
        return _StepShape.StepShape_Array1OfGeometricSetSelect___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "StepShape_GeometricSetSelect") -> "void":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        return _StepShape.StepShape_Array1OfGeometricSetSelect_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepShape.delete_StepShape_Array1OfGeometricSetSelect

    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 StepShape_Array1OfGeometricSetSelect in _StepShape:
_StepShape.StepShape_Array1OfGeometricSetSelect_swigregister(StepShape_Array1OfGeometricSetSelect)

class StepShape_Array1OfOrientedClosedShell(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< StepShape_OrientedClosedShell > >::iterator":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_begin(self)

    def end(self) -> "NCollection_Array1< opencascade::handle< StepShape_OrientedClosedShell > >::iterator":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_end(self)

    def cbegin(self) -> "NCollection_Array1< opencascade::handle< StepShape_OrientedClosedShell > >::const_iterator":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_cbegin(self)

    def cend(self) -> "NCollection_Array1< opencascade::handle< StepShape_OrientedClosedShell > >::const_iterator":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_cend(self)

    def __init__(self, *args):
        _StepShape.StepShape_Array1OfOrientedClosedShell_swiginit(self, _StepShape.new_StepShape_Array1OfOrientedClosedShell(*args))

    def Init(self, theValue: "opencascade::handle< StepShape_OrientedClosedShell > const &") -> "void":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_IsAllocated(self)

    def Assign(self, theOther: "StepShape_Array1OfOrientedClosedShell") -> "NCollection_Array1< opencascade::handle< StepShape_OrientedClosedShell > > &":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_Assign(self, theOther)

    def Move(self, theOther: "StepShape_Array1OfOrientedClosedShell") -> "NCollection_Array1< opencascade::handle< StepShape_OrientedClosedShell > > &":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< opencascade::handle< StepShape_OrientedClosedShell > > &":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_Set(self, *args)

    def First(self) -> "opencascade::handle< StepShape_OrientedClosedShell > const &":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_First(self)

    def ChangeFirst(self) -> "opencascade::handle< StepShape_OrientedClosedShell > &":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_ChangeFirst(self)

    def Last(self) -> "opencascade::handle< StepShape_OrientedClosedShell > const &":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_Last(self)

    def ChangeLast(self) -> "opencascade::handle< StepShape_OrientedClosedShell > &":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepShape_OrientedClosedShell > const &":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepShape_OrientedClosedShell > &":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "opencascade::handle< StepShape_OrientedClosedShell > &":
        return _StepShape.StepShape_Array1OfOrientedClosedShell___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "opencascade::handle< StepShape_OrientedClosedShell > const &") -> "void":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        return _StepShape.StepShape_Array1OfOrientedClosedShell_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepShape.delete_StepShape_Array1OfOrientedClosedShell

    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 StepShape_Array1OfOrientedClosedShell in _StepShape:
_StepShape.StepShape_Array1OfOrientedClosedShell_swigregister(StepShape_Array1OfOrientedClosedShell)

class StepShape_Array1OfOrientedEdge(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< StepShape_OrientedEdge > >::iterator":
        return _StepShape.StepShape_Array1OfOrientedEdge_begin(self)

    def end(self) -> "NCollection_Array1< opencascade::handle< StepShape_OrientedEdge > >::iterator":
        return _StepShape.StepShape_Array1OfOrientedEdge_end(self)

    def cbegin(self) -> "NCollection_Array1< opencascade::handle< StepShape_OrientedEdge > >::const_iterator":
        return _StepShape.StepShape_Array1OfOrientedEdge_cbegin(self)

    def cend(self) -> "NCollection_Array1< opencascade::handle< StepShape_OrientedEdge > >::const_iterator":
        return _StepShape.StepShape_Array1OfOrientedEdge_cend(self)

    def __init__(self, *args):
        _StepShape.StepShape_Array1OfOrientedEdge_swiginit(self, _StepShape.new_StepShape_Array1OfOrientedEdge(*args))

    def Init(self, theValue: "opencascade::handle< StepShape_OrientedEdge > const &") -> "void":
        return _StepShape.StepShape_Array1OfOrientedEdge_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfOrientedEdge_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfOrientedEdge_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfOrientedEdge_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfOrientedEdge_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfOrientedEdge_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfOrientedEdge_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfOrientedEdge_IsAllocated(self)

    def Assign(self, theOther: "StepShape_Array1OfOrientedEdge") -> "NCollection_Array1< opencascade::handle< StepShape_OrientedEdge > > &":
        return _StepShape.StepShape_Array1OfOrientedEdge_Assign(self, theOther)

    def Move(self, theOther: "StepShape_Array1OfOrientedEdge") -> "NCollection_Array1< opencascade::handle< StepShape_OrientedEdge > > &":
        return _StepShape.StepShape_Array1OfOrientedEdge_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< opencascade::handle< StepShape_OrientedEdge > > &":
        return _StepShape.StepShape_Array1OfOrientedEdge_Set(self, *args)

    def First(self) -> "opencascade::handle< StepShape_OrientedEdge > const &":
        return _StepShape.StepShape_Array1OfOrientedEdge_First(self)

    def ChangeFirst(self) -> "opencascade::handle< StepShape_OrientedEdge > &":
        return _StepShape.StepShape_Array1OfOrientedEdge_ChangeFirst(self)

    def Last(self) -> "opencascade::handle< StepShape_OrientedEdge > const &":
        return _StepShape.StepShape_Array1OfOrientedEdge_Last(self)

    def ChangeLast(self) -> "opencascade::handle< StepShape_OrientedEdge > &":
        return _StepShape.StepShape_Array1OfOrientedEdge_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepShape_OrientedEdge > const &":
        return _StepShape.StepShape_Array1OfOrientedEdge_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "opencascade::handle< StepShape_OrientedEdge > &":
        return _StepShape.StepShape_Array1OfOrientedEdge_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "opencascade::handle< StepShape_OrientedEdge > &":
        return _StepShape.StepShape_Array1OfOrientedEdge___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "opencascade::handle< StepShape_OrientedEdge > const &") -> "void":
        return _StepShape.StepShape_Array1OfOrientedEdge_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        return _StepShape.StepShape_Array1OfOrientedEdge_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepShape.delete_StepShape_Array1OfOrientedEdge

    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 StepShape_Array1OfOrientedEdge in _StepShape:
_StepShape.StepShape_Array1OfOrientedEdge_swigregister(StepShape_Array1OfOrientedEdge)

class StepShape_Array1OfShapeDimensionRepresentationItem(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< StepShape_ShapeDimensionRepresentationItem >::iterator":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_begin(self)

    def end(self) -> "NCollection_Array1< StepShape_ShapeDimensionRepresentationItem >::iterator":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_end(self)

    def cbegin(self) -> "NCollection_Array1< StepShape_ShapeDimensionRepresentationItem >::const_iterator":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_cbegin(self)

    def cend(self) -> "NCollection_Array1< StepShape_ShapeDimensionRepresentationItem >::const_iterator":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_cend(self)

    def __init__(self, *args):
        _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_swiginit(self, _StepShape.new_StepShape_Array1OfShapeDimensionRepresentationItem(*args))

    def Init(self, theValue: "StepShape_ShapeDimensionRepresentationItem") -> "void":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_IsAllocated(self)

    def Assign(self, theOther: "StepShape_Array1OfShapeDimensionRepresentationItem") -> "NCollection_Array1< StepShape_ShapeDimensionRepresentationItem > &":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_Assign(self, theOther)

    def Move(self, theOther: "StepShape_Array1OfShapeDimensionRepresentationItem") -> "NCollection_Array1< StepShape_ShapeDimensionRepresentationItem > &":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< StepShape_ShapeDimensionRepresentationItem > &":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_Set(self, *args)

    def First(self) -> "StepShape_ShapeDimensionRepresentationItem const &":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_First(self)

    def ChangeFirst(self) -> "StepShape_ShapeDimensionRepresentationItem &":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_ChangeFirst(self)

    def Last(self) -> "StepShape_ShapeDimensionRepresentationItem const &":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_Last(self)

    def ChangeLast(self) -> "StepShape_ShapeDimensionRepresentationItem &":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "StepShape_ShapeDimensionRepresentationItem const &":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "StepShape_ShapeDimensionRepresentationItem &":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "StepShape_ShapeDimensionRepresentationItem &":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "StepShape_ShapeDimensionRepresentationItem") -> "void":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        return _StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepShape.delete_StepShape_Array1OfShapeDimensionRepresentationItem

    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 StepShape_Array1OfShapeDimensionRepresentationItem in _StepShape:
_StepShape.StepShape_Array1OfShapeDimensionRepresentationItem_swigregister(StepShape_Array1OfShapeDimensionRepresentationItem)

class StepShape_Array1OfShell(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< StepShape_Shell >::iterator":
        return _StepShape.StepShape_Array1OfShell_begin(self)

    def end(self) -> "NCollection_Array1< StepShape_Shell >::iterator":
        return _StepShape.StepShape_Array1OfShell_end(self)

    def cbegin(self) -> "NCollection_Array1< StepShape_Shell >::const_iterator":
        return _StepShape.StepShape_Array1OfShell_cbegin(self)

    def cend(self) -> "NCollection_Array1< StepShape_Shell >::const_iterator":
        return _StepShape.StepShape_Array1OfShell_cend(self)

    def __init__(self, *args):
        _StepShape.StepShape_Array1OfShell_swiginit(self, _StepShape.new_StepShape_Array1OfShell(*args))

    def Init(self, theValue: "StepShape_Shell") -> "void":
        return _StepShape.StepShape_Array1OfShell_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfShell_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfShell_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfShell_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfShell_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfShell_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfShell_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfShell_IsAllocated(self)

    def Assign(self, theOther: "StepShape_Array1OfShell") -> "NCollection_Array1< StepShape_Shell > &":
        return _StepShape.StepShape_Array1OfShell_Assign(self, theOther)

    def Move(self, theOther: "StepShape_Array1OfShell") -> "NCollection_Array1< StepShape_Shell > &":
        return _StepShape.StepShape_Array1OfShell_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< StepShape_Shell > &":
        return _StepShape.StepShape_Array1OfShell_Set(self, *args)

    def First(self) -> "StepShape_Shell const &":
        return _StepShape.StepShape_Array1OfShell_First(self)

    def ChangeFirst(self) -> "StepShape_Shell &":
        return _StepShape.StepShape_Array1OfShell_ChangeFirst(self)

    def Last(self) -> "StepShape_Shell const &":
        return _StepShape.StepShape_Array1OfShell_Last(self)

    def ChangeLast(self) -> "StepShape_Shell &":
        return _StepShape.StepShape_Array1OfShell_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "StepShape_Shell const &":
        return _StepShape.StepShape_Array1OfShell_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "StepShape_Shell &":
        return _StepShape.StepShape_Array1OfShell_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "StepShape_Shell &":
        return _StepShape.StepShape_Array1OfShell___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "StepShape_Shell") -> "void":
        return _StepShape.StepShape_Array1OfShell_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        return _StepShape.StepShape_Array1OfShell_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepShape.delete_StepShape_Array1OfShell

    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 StepShape_Array1OfShell in _StepShape:
_StepShape.StepShape_Array1OfShell_swigregister(StepShape_Array1OfShell)

class StepShape_Array1OfValueQualifier(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< StepShape_ValueQualifier >::iterator":
        return _StepShape.StepShape_Array1OfValueQualifier_begin(self)

    def end(self) -> "NCollection_Array1< StepShape_ValueQualifier >::iterator":
        return _StepShape.StepShape_Array1OfValueQualifier_end(self)

    def cbegin(self) -> "NCollection_Array1< StepShape_ValueQualifier >::const_iterator":
        return _StepShape.StepShape_Array1OfValueQualifier_cbegin(self)

    def cend(self) -> "NCollection_Array1< StepShape_ValueQualifier >::const_iterator":
        return _StepShape.StepShape_Array1OfValueQualifier_cend(self)

    def __init__(self, *args):
        _StepShape.StepShape_Array1OfValueQualifier_swiginit(self, _StepShape.new_StepShape_Array1OfValueQualifier(*args))

    def Init(self, theValue: "StepShape_ValueQualifier") -> "void":
        return _StepShape.StepShape_Array1OfValueQualifier_Init(self, theValue)

    def Size(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfValueQualifier_Size(self)

    def Length(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfValueQualifier_Length(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfValueQualifier_IsEmpty(self)

    def Lower(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfValueQualifier_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _StepShape.StepShape_Array1OfValueQualifier_Upper(self)

    def IsDeletable(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfValueQualifier_IsDeletable(self)

    def IsAllocated(self) -> "Standard_Boolean":
        return _StepShape.StepShape_Array1OfValueQualifier_IsAllocated(self)

    def Assign(self, theOther: "StepShape_Array1OfValueQualifier") -> "NCollection_Array1< StepShape_ValueQualifier > &":
        return _StepShape.StepShape_Array1OfValueQualifier_Assign(self, theOther)

    def Move(self, theOther: "StepShape_Array1OfValueQualifier") -> "NCollection_Array1< StepShape_ValueQualifier > &":
        return _StepShape.StepShape_Array1OfValueQualifier_Move(self, theOther)

    def Set(self, *args) -> "NCollection_Array1< StepShape_ValueQualifier > &":
        return _StepShape.StepShape_Array1OfValueQualifier_Set(self, *args)

    def First(self) -> "StepShape_ValueQualifier const &":
        return _StepShape.StepShape_Array1OfValueQualifier_First(self)

    def ChangeFirst(self) -> "StepShape_ValueQualifier &":
        return _StepShape.StepShape_Array1OfValueQualifier_ChangeFirst(self)

    def Last(self) -> "StepShape_ValueQualifier const &":
        return _StepShape.StepShape_Array1OfValueQualifier_Last(self)

    def ChangeLast(self) -> "StepShape_ValueQualifier &":
        return _StepShape.StepShape_Array1OfValueQualifier_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "StepShape_ValueQualifier const &":
        return _StepShape.StepShape_Array1OfValueQualifier_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "StepShape_ValueQualifier &":
        return _StepShape.StepShape_Array1OfValueQualifier_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "StepShape_ValueQualifier &":
        return _StepShape.StepShape_Array1OfValueQualifier___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "StepShape_ValueQualifier") -> "void":
        return _StepShape.StepShape_Array1OfValueQualifier_SetValue(self, theIndex, theItem)

    def Resize(self, theLower: "Standard_Integer const", theUpper: "Standard_Integer const", theToCopyData: "Standard_Boolean const") -> "void":
        return _StepShape.StepShape_Array1OfValueQualifier_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepShape.delete_StepShape_Array1OfValueQualifier

    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 StepShape_Array1OfValueQualifier in _StepShape:
_StepShape.StepShape_Array1OfValueQualifier_swigregister(StepShape_Array1OfValueQualifier)

class StepShape_Block(OCC.Core.StepGeom.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 block.

        Returns
        -------
        None

        """
        _StepShape.StepShape_Block_swiginit(self, _StepShape.new_StepShape_Block(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement3d
        aX: float
        aY: float
        aZ: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Block_Init(self, *args)

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

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

        """
        return _StepShape.StepShape_Block_Position(self, *args)

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

        Parameters
        ----------
        aPosition: StepGeom_Axis2Placement3d

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Block_SetPosition(self, *args)

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

        Parameters
        ----------
        aX: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Block_SetX(self, *args)

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

        Parameters
        ----------
        aY: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Block_SetY(self, *args)

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

        Parameters
        ----------
        aZ: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Block_SetZ(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_Block_X(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_Block_Y(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_Block_Z(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_Block

# Register StepShape_Block in _StepShape:
_StepShape.StepShape_Block_swigregister(StepShape_Block)

class StepShape_BooleanOperand(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):
        r"""
        Returns a booleanoperand selecttype.

        Returns
        -------
        None

        """
        _StepShape.StepShape_BooleanOperand_swiginit(self, _StepShape.new_StepShape_BooleanOperand(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_BooleanResult>

        """
        return _StepShape.StepShape_BooleanOperand_BooleanResult(self, *args)

    def CsgPrimitive(self, *args) -> "StepShape_CsgPrimitive":
        r"""
        Returns value as a csgprimitive (null if another type) csgprimitive is another select type.

        Returns
        -------
        StepShape_CsgPrimitive

        """
        return _StepShape.StepShape_BooleanOperand_CsgPrimitive(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_HalfSpaceSolid>

        """
        return _StepShape.StepShape_BooleanOperand_HalfSpaceSolid(self, *args)

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

        Parameters
        ----------
        aBooleanResult: StepShape_BooleanResult

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BooleanOperand_SetBooleanResult(self, *args)

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

        Parameters
        ----------
        aCsgPrimitive: StepShape_CsgPrimitive

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BooleanOperand_SetCsgPrimitive(self, *args)

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

        Parameters
        ----------
        aHalfSpaceSolid: StepShape_HalfSpaceSolid

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BooleanOperand_SetHalfSpaceSolid(self, *args)

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

        Parameters
        ----------
        aSolidModel: StepShape_SolidModel

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BooleanOperand_SetSolidModel(self, *args)

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

        Parameters
        ----------
        aTypeOfContent: int

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BooleanOperand_SetTypeOfContent(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_SolidModel>

        """
        return _StepShape.StepShape_BooleanOperand_SolidModel(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_BooleanOperand_TypeOfContent(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_BooleanOperand

# Register StepShape_BooleanOperand in _StepShape:
_StepShape.StepShape_BooleanOperand_swigregister(StepShape_BooleanOperand)

class StepShape_BooleanResult(OCC.Core.StepGeom.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 booleanresult.

        Returns
        -------
        None

        """
        _StepShape.StepShape_BooleanResult_swiginit(self, _StepShape.new_StepShape_BooleanResult(*args))

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

        Returns
        -------
        StepShape_BooleanOperand

        """
        return _StepShape.StepShape_BooleanResult_FirstOperand(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aOperator: StepShape_BooleanOperator
        aFirstOperand: StepShape_BooleanOperand
        aSecondOperand: StepShape_BooleanOperand

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BooleanResult_Init(self, *args)

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

        Returns
        -------
        StepShape_BooleanOperator

        """
        return _StepShape.StepShape_BooleanResult_Operator(self, *args)

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

        Returns
        -------
        StepShape_BooleanOperand

        """
        return _StepShape.StepShape_BooleanResult_SecondOperand(self, *args)

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

        Parameters
        ----------
        aFirstOperand: StepShape_BooleanOperand

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BooleanResult_SetFirstOperand(self, *args)

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

        Parameters
        ----------
        aOperator: StepShape_BooleanOperator

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BooleanResult_SetOperator(self, *args)

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

        Parameters
        ----------
        aSecondOperand: StepShape_BooleanOperand

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BooleanResult_SetSecondOperand(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_BooleanResult

# Register StepShape_BooleanResult in _StepShape:
_StepShape.StepShape_BooleanResult_swigregister(StepShape_BooleanResult)

class StepShape_BoxDomain(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 boxdomain.

        Returns
        -------
        None

        """
        _StepShape.StepShape_BoxDomain_swiginit(self, _StepShape.new_StepShape_BoxDomain(*args))

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

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

        """
        return _StepShape.StepShape_BoxDomain_Corner(self, *args)

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

        Parameters
        ----------
        aCorner: StepGeom_CartesianPoint
        aXlength: float
        aYlength: float
        aZlength: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BoxDomain_Init(self, *args)

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

        Parameters
        ----------
        aCorner: StepGeom_CartesianPoint

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BoxDomain_SetCorner(self, *args)

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

        Parameters
        ----------
        aXlength: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BoxDomain_SetXlength(self, *args)

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

        Parameters
        ----------
        aYlength: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BoxDomain_SetYlength(self, *args)

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

        Parameters
        ----------
        aZlength: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BoxDomain_SetZlength(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_BoxDomain_Xlength(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_BoxDomain_Ylength(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_BoxDomain_Zlength(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_BoxDomain

# Register StepShape_BoxDomain in _StepShape:
_StepShape.StepShape_BoxDomain_swigregister(StepShape_BoxDomain)

class StepShape_ConnectedFaceShapeRepresentation(OCC.Core.StepRepr.StepRepr_Representation):
    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

        """
        _StepShape.StepShape_ConnectedFaceShapeRepresentation_swiginit(self, _StepShape.new_StepShape_ConnectedFaceShapeRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ConnectedFaceShapeRepresentation

# Register StepShape_ConnectedFaceShapeRepresentation in _StepShape:
_StepShape.StepShape_ConnectedFaceShapeRepresentation_swigregister(StepShape_ConnectedFaceShapeRepresentation)

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

        Returns
        -------
        None

        """
        _StepShape.StepShape_ContextDependentShapeRepresentation_swiginit(self, _StepShape.new_StepShape_ContextDependentShapeRepresentation(*args))

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

        Parameters
        ----------
        aRepRel: StepRepr_ShapeRepresentationRelationship
        aProRel: StepRepr_ProductDefinitionShape

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ContextDependentShapeRepresentation_Init(self, *args)

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

        Returns
        -------
        opencascade::handle<StepRepr_ShapeRepresentationRelationship>

        """
        return _StepShape.StepShape_ContextDependentShapeRepresentation_RepresentationRelation(self, *args)

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

        Returns
        -------
        opencascade::handle<StepRepr_ProductDefinitionShape>

        """
        return _StepShape.StepShape_ContextDependentShapeRepresentation_RepresentedProductRelation(self, *args)

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

        Parameters
        ----------
        aRepRel: StepRepr_ShapeRepresentationRelationship

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ContextDependentShapeRepresentation_SetRepresentationRelation(self, *args)

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

        Parameters
        ----------
        aProRel: StepRepr_ProductDefinitionShape

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ContextDependentShapeRepresentation_SetRepresentedProductRelation(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ContextDependentShapeRepresentation

# Register StepShape_ContextDependentShapeRepresentation in _StepShape:
_StepShape.StepShape_ContextDependentShapeRepresentation_swigregister(StepShape_ContextDependentShapeRepresentation)

class StepShape_CsgPrimitive(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 csgprimitive selecttype.

        Returns
        -------
        None

        """
        _StepShape.StepShape_CsgPrimitive_swiginit(self, _StepShape.new_StepShape_CsgPrimitive(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_Block>

        """
        return _StepShape.StepShape_CsgPrimitive_Block(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_RightAngularWedge>

        """
        return _StepShape.StepShape_CsgPrimitive_RightAngularWedge(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_RightCircularCone>

        """
        return _StepShape.StepShape_CsgPrimitive_RightCircularCone(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_RightCircularCylinder>

        """
        return _StepShape.StepShape_CsgPrimitive_RightCircularCylinder(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_Sphere>

        """
        return _StepShape.StepShape_CsgPrimitive_Sphere(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_Torus>

        """
        return _StepShape.StepShape_CsgPrimitive_Torus(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_CsgPrimitive

# Register StepShape_CsgPrimitive in _StepShape:
_StepShape.StepShape_CsgPrimitive_swigregister(StepShape_CsgPrimitive)

class StepShape_CsgSelect(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):
        r"""
        Returns a csgselect selecttype.

        Returns
        -------
        None

        """
        _StepShape.StepShape_CsgSelect_swiginit(self, _StepShape.new_StepShape_CsgSelect(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_BooleanResult>

        """
        return _StepShape.StepShape_CsgSelect_BooleanResult(self, *args)

    def CsgPrimitive(self, *args) -> "StepShape_CsgPrimitive":
        r"""
        Returns value as a csgprimitive (null if another type).

        Returns
        -------
        StepShape_CsgPrimitive

        """
        return _StepShape.StepShape_CsgSelect_CsgPrimitive(self, *args)

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

        Parameters
        ----------
        aBooleanResult: StepShape_BooleanResult

        Returns
        -------
        None

        """
        return _StepShape.StepShape_CsgSelect_SetBooleanResult(self, *args)

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

        Parameters
        ----------
        aCsgPrimitive: StepShape_CsgPrimitive

        Returns
        -------
        None

        """
        return _StepShape.StepShape_CsgSelect_SetCsgPrimitive(self, *args)

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

        Parameters
        ----------
        aTypeOfContent: int

        Returns
        -------
        None

        """
        return _StepShape.StepShape_CsgSelect_SetTypeOfContent(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_CsgSelect_TypeOfContent(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_CsgSelect

# Register StepShape_CsgSelect in _StepShape:
_StepShape.StepShape_CsgSelect_swigregister(StepShape_CsgSelect)

class StepShape_DefinitionalRepresentationAndShapeRepresentation(OCC.Core.StepRepr.StepRepr_DefinitionalRepresentation):
    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

        """
        _StepShape.StepShape_DefinitionalRepresentationAndShapeRepresentation_swiginit(self, _StepShape.new_StepShape_DefinitionalRepresentationAndShapeRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_DefinitionalRepresentationAndShapeRepresentation

# Register StepShape_DefinitionalRepresentationAndShapeRepresentation in _StepShape:
_StepShape.StepShape_DefinitionalRepresentationAndShapeRepresentation_swigregister(StepShape_DefinitionalRepresentationAndShapeRepresentation)

class StepShape_DimensionalCharacteristic(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

        """
        _StepShape.StepShape_DimensionalCharacteristic_swiginit(self, _StepShape.new_StepShape_DimensionalCharacteristic(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_DimensionalLocation>

        """
        return _StepShape.StepShape_DimensionalCharacteristic_DimensionalLocation(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_DimensionalSize>

        """
        return _StepShape.StepShape_DimensionalCharacteristic_DimensionalSize(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_DimensionalCharacteristic

# Register StepShape_DimensionalCharacteristic in _StepShape:
_StepShape.StepShape_DimensionalCharacteristic_swigregister(StepShape_DimensionalCharacteristic)

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

        Returns
        -------
        None

        """
        _StepShape.StepShape_DimensionalCharacteristicRepresentation_swiginit(self, _StepShape.new_StepShape_DimensionalCharacteristicRepresentation(*args))

    def Dimension(self, *args) -> "StepShape_DimensionalCharacteristic":
        r"""
        Returns field dimension.

        Returns
        -------
        StepShape_DimensionalCharacteristic

        """
        return _StepShape.StepShape_DimensionalCharacteristicRepresentation_Dimension(self, *args)

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aDimension: StepShape_DimensionalCharacteristic
        aRepresentation: StepShape_ShapeDimensionRepresentation

        Returns
        -------
        None

        """
        return _StepShape.StepShape_DimensionalCharacteristicRepresentation_Init(self, *args)

    def Representation(self, *args) -> "opencascade::handle< StepShape_ShapeDimensionRepresentation >":
        r"""
        Returns field representation.

        Returns
        -------
        opencascade::handle<StepShape_ShapeDimensionRepresentation>

        """
        return _StepShape.StepShape_DimensionalCharacteristicRepresentation_Representation(self, *args)

    def SetDimension(self, *args) -> "void":
        r"""
        Set field dimension.

        Parameters
        ----------
        Dimension: StepShape_DimensionalCharacteristic

        Returns
        -------
        None

        """
        return _StepShape.StepShape_DimensionalCharacteristicRepresentation_SetDimension(self, *args)

    def SetRepresentation(self, *args) -> "void":
        r"""
        Set field representation.

        Parameters
        ----------
        Representation: StepShape_ShapeDimensionRepresentation

        Returns
        -------
        None

        """
        return _StepShape.StepShape_DimensionalCharacteristicRepresentation_SetRepresentation(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_DimensionalCharacteristicRepresentation

# Register StepShape_DimensionalCharacteristicRepresentation in _StepShape:
_StepShape.StepShape_DimensionalCharacteristicRepresentation_swigregister(StepShape_DimensionalCharacteristicRepresentation)

class StepShape_DimensionalLocation(OCC.Core.StepRepr.StepRepr_ShapeAspectRelationship):
    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

        """
        _StepShape.StepShape_DimensionalLocation_swiginit(self, _StepShape.new_StepShape_DimensionalLocation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_DimensionalLocation

# Register StepShape_DimensionalLocation in _StepShape:
_StepShape.StepShape_DimensionalLocation_swigregister(StepShape_DimensionalLocation)

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

        Returns
        -------
        None

        """
        _StepShape.StepShape_DimensionalSize_swiginit(self, _StepShape.new_StepShape_DimensionalSize(*args))

    def AppliesTo(self, *args) -> "opencascade::handle< StepRepr_ShapeAspect >":
        r"""
        Returns field appliesto.

        Returns
        -------
        opencascade::handle<StepRepr_ShapeAspect>

        """
        return _StepShape.StepShape_DimensionalSize_AppliesTo(self, *args)

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aAppliesTo: StepRepr_ShapeAspect
        aName: TCollection_HAsciiString

        Returns
        -------
        None

        """
        return _StepShape.StepShape_DimensionalSize_Init(self, *args)

    def Name(self, *args) -> "opencascade::handle< TCollection_HAsciiString >":
        r"""
        Returns field name.

        Returns
        -------
        opencascade::handle<TCollection_HAsciiString>

        """
        return _StepShape.StepShape_DimensionalSize_Name(self, *args)

    def SetAppliesTo(self, *args) -> "void":
        r"""
        Set field appliesto.

        Parameters
        ----------
        AppliesTo: StepRepr_ShapeAspect

        Returns
        -------
        None

        """
        return _StepShape.StepShape_DimensionalSize_SetAppliesTo(self, *args)

    def SetName(self, *args) -> "void":
        r"""
        Set field name.

        Parameters
        ----------
        Name: TCollection_HAsciiString

        Returns
        -------
        None

        """
        return _StepShape.StepShape_DimensionalSize_SetName(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_DimensionalSize

# Register StepShape_DimensionalSize in _StepShape:
_StepShape.StepShape_DimensionalSize_swigregister(StepShape_DimensionalSize)

class StepShape_EdgeBasedWireframeModel(OCC.Core.StepGeom.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"""
        Empty constructor.

        Returns
        -------
        None

        """
        _StepShape.StepShape_EdgeBasedWireframeModel_swiginit(self, _StepShape.new_StepShape_EdgeBasedWireframeModel(*args))

    def EbwmBoundary(self, *args) -> "opencascade::handle< StepShape_HArray1OfConnectedEdgeSet >":
        r"""
        Returns field ebwmboundary.

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfConnectedEdgeSet>

        """
        return _StepShape.StepShape_EdgeBasedWireframeModel_EbwmBoundary(self, *args)

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aRepresentationItem_Name: TCollection_HAsciiString
        aEbwmBoundary: StepShape_HArray1OfConnectedEdgeSet

        Returns
        -------
        None

        """
        return _StepShape.StepShape_EdgeBasedWireframeModel_Init(self, *args)

    def SetEbwmBoundary(self, *args) -> "void":
        r"""
        Set field ebwmboundary.

        Parameters
        ----------
        EbwmBoundary: StepShape_HArray1OfConnectedEdgeSet

        Returns
        -------
        None

        """
        return _StepShape.StepShape_EdgeBasedWireframeModel_SetEbwmBoundary(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_EdgeBasedWireframeModel

# Register StepShape_EdgeBasedWireframeModel in _StepShape:
_StepShape.StepShape_EdgeBasedWireframeModel_swigregister(StepShape_EdgeBasedWireframeModel)

class StepShape_FaceBasedSurfaceModel(OCC.Core.StepGeom.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"""
        Empty constructor.

        Returns
        -------
        None

        """
        _StepShape.StepShape_FaceBasedSurfaceModel_swiginit(self, _StepShape.new_StepShape_FaceBasedSurfaceModel(*args))

    def FbsmFaces(self, *args) -> "opencascade::handle< StepShape_HArray1OfConnectedFaceSet >":
        r"""
        Returns field fbsmfaces.

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfConnectedFaceSet>

        """
        return _StepShape.StepShape_FaceBasedSurfaceModel_FbsmFaces(self, *args)

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aRepresentationItem_Name: TCollection_HAsciiString
        aFbsmFaces: StepShape_HArray1OfConnectedFaceSet

        Returns
        -------
        None

        """
        return _StepShape.StepShape_FaceBasedSurfaceModel_Init(self, *args)

    def SetFbsmFaces(self, *args) -> "void":
        r"""
        Set field fbsmfaces.

        Parameters
        ----------
        FbsmFaces: StepShape_HArray1OfConnectedFaceSet

        Returns
        -------
        None

        """
        return _StepShape.StepShape_FaceBasedSurfaceModel_SetFbsmFaces(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_FaceBasedSurfaceModel

# Register StepShape_FaceBasedSurfaceModel in _StepShape:
_StepShape.StepShape_FaceBasedSurfaceModel_swigregister(StepShape_FaceBasedSurfaceModel)

class StepShape_GeometricSet(OCC.Core.StepGeom.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 geometricset.

        Returns
        -------
        None

        """
        _StepShape.StepShape_GeometricSet_swiginit(self, _StepShape.new_StepShape_GeometricSet(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfGeometricSetSelect>

        """
        return _StepShape.StepShape_GeometricSet_Elements(self, *args)

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

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

        Returns
        -------
        StepShape_GeometricSetSelect

        """
        return _StepShape.StepShape_GeometricSet_ElementsValue(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aElements: StepShape_HArray1OfGeometricSetSelect

        Returns
        -------
        None

        """
        return _StepShape.StepShape_GeometricSet_Init(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_GeometricSet_NbElements(self, *args)

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

        Parameters
        ----------
        aElements: StepShape_HArray1OfGeometricSetSelect

        Returns
        -------
        None

        """
        return _StepShape.StepShape_GeometricSet_SetElements(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_GeometricSet

# Register StepShape_GeometricSet in _StepShape:
_StepShape.StepShape_GeometricSet_swigregister(StepShape_GeometricSet)

class StepShape_GeometricSetSelect(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 geometricsetselect selecttype.

        Returns
        -------
        None

        """
        _StepShape.StepShape_GeometricSetSelect_swiginit(self, _StepShape.new_StepShape_GeometricSetSelect(*args))

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

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

        """
        return _StepShape.StepShape_GeometricSetSelect_Curve(self, *args)

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

        Returns
        -------
        opencascade::handle<StepGeom_Point>

        """
        return _StepShape.StepShape_GeometricSetSelect_Point(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 _StepShape.StepShape_GeometricSetSelect_Surface(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_GeometricSetSelect

# Register StepShape_GeometricSetSelect in _StepShape:
_StepShape.StepShape_GeometricSetSelect_swigregister(StepShape_GeometricSetSelect)

class StepShape_HalfSpaceSolid(OCC.Core.StepGeom.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 halfspacesolid.

        Returns
        -------
        None

        """
        _StepShape.StepShape_HalfSpaceSolid_swiginit(self, _StepShape.new_StepShape_HalfSpaceSolid(*args))

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

        Returns
        -------
        bool

        """
        return _StepShape.StepShape_HalfSpaceSolid_AgreementFlag(self, *args)

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

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

        """
        return _StepShape.StepShape_HalfSpaceSolid_BaseSurface(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBaseSurface: StepGeom_Surface
        aAgreementFlag: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_HalfSpaceSolid_Init(self, *args)

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

        Parameters
        ----------
        aAgreementFlag: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_HalfSpaceSolid_SetAgreementFlag(self, *args)

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

        Parameters
        ----------
        aBaseSurface: StepGeom_Surface

        Returns
        -------
        None

        """
        return _StepShape.StepShape_HalfSpaceSolid_SetBaseSurface(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_HalfSpaceSolid

# Register StepShape_HalfSpaceSolid in _StepShape:
_StepShape.StepShape_HalfSpaceSolid_swigregister(StepShape_HalfSpaceSolid)

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

        Returns
        -------
        None

        """
        _StepShape.StepShape_LimitsAndFits_swiginit(self, _StepShape.new_StepShape_LimitsAndFits(*args))

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

        Returns
        -------
        opencascade::handle<TCollection_HAsciiString>

        """
        return _StepShape.StepShape_LimitsAndFits_FormVariance(self, *args)

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

        Returns
        -------
        opencascade::handle<TCollection_HAsciiString>

        """
        return _StepShape.StepShape_LimitsAndFits_Grade(self, *args)

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

        Parameters
        ----------
        form_variance: TCollection_HAsciiString
        zone_variance: TCollection_HAsciiString
        grade: TCollection_HAsciiString
        source: TCollection_HAsciiString

        Returns
        -------
        None

        """
        return _StepShape.StepShape_LimitsAndFits_Init(self, *args)

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

        Parameters
        ----------
        form_variance: TCollection_HAsciiString

        Returns
        -------
        None

        """
        return _StepShape.StepShape_LimitsAndFits_SetFormVariance(self, *args)

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

        Parameters
        ----------
        grade: TCollection_HAsciiString

        Returns
        -------
        None

        """
        return _StepShape.StepShape_LimitsAndFits_SetGrade(self, *args)

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

        Parameters
        ----------
        source: TCollection_HAsciiString

        Returns
        -------
        None

        """
        return _StepShape.StepShape_LimitsAndFits_SetSource(self, *args)

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

        Parameters
        ----------
        zone_variance: TCollection_HAsciiString

        Returns
        -------
        None

        """
        return _StepShape.StepShape_LimitsAndFits_SetZoneVariance(self, *args)

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

        Returns
        -------
        opencascade::handle<TCollection_HAsciiString>

        """
        return _StepShape.StepShape_LimitsAndFits_Source(self, *args)

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

        Returns
        -------
        opencascade::handle<TCollection_HAsciiString>

        """
        return _StepShape.StepShape_LimitsAndFits_ZoneVariance(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_LimitsAndFits

# Register StepShape_LimitsAndFits in _StepShape:
_StepShape.StepShape_LimitsAndFits_swigregister(StepShape_LimitsAndFits)

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

        Returns
        -------
        None

        """
        _StepShape.StepShape_MeasureQualification_swiginit(self, _StepShape.new_StepShape_MeasureQualification(*args))

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

        Returns
        -------
        opencascade::handle<TCollection_HAsciiString>

        """
        return _StepShape.StepShape_MeasureQualification_Description(self, *args)

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

        Parameters
        ----------
        name: TCollection_HAsciiString
        description: TCollection_HAsciiString
        qualified_measure: StepBasic_MeasureWithUnit
        qualifiers: StepShape_HArray1OfValueQualifier

        Returns
        -------
        None

        """
        return _StepShape.StepShape_MeasureQualification_Init(self, *args)

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

        Returns
        -------
        opencascade::handle<TCollection_HAsciiString>

        """
        return _StepShape.StepShape_MeasureQualification_Name(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_MeasureQualification_NbQualifiers(self, *args)

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

        Returns
        -------
        opencascade::handle<StepBasic_MeasureWithUnit>

        """
        return _StepShape.StepShape_MeasureQualification_QualifiedMeasure(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfValueQualifier>

        """
        return _StepShape.StepShape_MeasureQualification_Qualifiers(self, *args)

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

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

        Returns
        -------
        StepShape_ValueQualifier

        """
        return _StepShape.StepShape_MeasureQualification_QualifiersValue(self, *args)

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

        Parameters
        ----------
        description: TCollection_HAsciiString

        Returns
        -------
        None

        """
        return _StepShape.StepShape_MeasureQualification_SetDescription(self, *args)

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

        Parameters
        ----------
        name: TCollection_HAsciiString

        Returns
        -------
        None

        """
        return _StepShape.StepShape_MeasureQualification_SetName(self, *args)

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

        Parameters
        ----------
        qualified_measure: StepBasic_MeasureWithUnit

        Returns
        -------
        None

        """
        return _StepShape.StepShape_MeasureQualification_SetQualifiedMeasure(self, *args)

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

        Parameters
        ----------
        qualifiers: StepShape_HArray1OfValueQualifier

        Returns
        -------
        None

        """
        return _StepShape.StepShape_MeasureQualification_SetQualifiers(self, *args)

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

        Parameters
        ----------
        num: int
        aqualifier: StepShape_ValueQualifier

        Returns
        -------
        None

        """
        return _StepShape.StepShape_MeasureQualification_SetQualifiersValue(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_MeasureQualification

# Register StepShape_MeasureQualification in _StepShape:
_StepShape.StepShape_MeasureQualification_swigregister(StepShape_MeasureQualification)

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

        Returns
        -------
        None

        """
        _StepShape.StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_swiginit(self, _StepShape.new_StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aValueComponent: StepBasic_MeasureValueMember
        aUnitComponent: StepBasic_Unit
        qualifiers: StepShape_HArray1OfValueQualifier

        Returns
        -------
        None

        """
        return _StepShape.StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_Init(self, *args)

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

        Returns
        -------
        opencascade::handle<StepBasic_MeasureWithUnit>

        """
        return _StepShape.StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_Measure(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_NbQualifiers(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfValueQualifier>

        """
        return _StepShape.StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_Qualifiers(self, *args)

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

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

        Returns
        -------
        StepShape_ValueQualifier

        """
        return _StepShape.StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_QualifiersValue(self, *args)

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

        Parameters
        ----------
        Measure: StepBasic_MeasureWithUnit

        Returns
        -------
        None

        """
        return _StepShape.StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_SetMeasure(self, *args)

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

        Parameters
        ----------
        qualifiers: StepShape_HArray1OfValueQualifier

        Returns
        -------
        None

        """
        return _StepShape.StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_SetQualifiers(self, *args)

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

        Parameters
        ----------
        num: int
        aqualifier: StepShape_ValueQualifier

        Returns
        -------
        None

        """
        return _StepShape.StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_SetQualifiersValue(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem

# Register StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem in _StepShape:
_StepShape.StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem_swigregister(StepShape_MeasureRepresentationItemAndQualifiedRepresentationItem)

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

        Returns
        -------
        None

        """
        _StepShape.StepShape_PlusMinusTolerance_swiginit(self, _StepShape.new_StepShape_PlusMinusTolerance(*args))

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

        Parameters
        ----------
        range: StepShape_ToleranceMethodDefinition
        toleranced_dimension: StepShape_DimensionalCharacteristic

        Returns
        -------
        None

        """
        return _StepShape.StepShape_PlusMinusTolerance_Init(self, *args)

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

        Returns
        -------
        StepShape_ToleranceMethodDefinition

        """
        return _StepShape.StepShape_PlusMinusTolerance_Range(self, *args)

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

        Parameters
        ----------
        range: StepShape_ToleranceMethodDefinition

        Returns
        -------
        None

        """
        return _StepShape.StepShape_PlusMinusTolerance_SetRange(self, *args)

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

        Parameters
        ----------
        toleranced_dimension: StepShape_DimensionalCharacteristic

        Returns
        -------
        None

        """
        return _StepShape.StepShape_PlusMinusTolerance_SetTolerancedDimension(self, *args)

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

        Returns
        -------
        StepShape_DimensionalCharacteristic

        """
        return _StepShape.StepShape_PlusMinusTolerance_TolerancedDimension(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_PlusMinusTolerance

# Register StepShape_PlusMinusTolerance in _StepShape:
_StepShape.StepShape_PlusMinusTolerance_swigregister(StepShape_PlusMinusTolerance)

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

        Returns
        -------
        None

        """
        _StepShape.StepShape_PrecisionQualifier_swiginit(self, _StepShape.new_StepShape_PrecisionQualifier(*args))

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

        Parameters
        ----------
        precision_value: int

        Returns
        -------
        None

        """
        return _StepShape.StepShape_PrecisionQualifier_Init(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_PrecisionQualifier_PrecisionValue(self, *args)

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

        Parameters
        ----------
        precision_value: int

        Returns
        -------
        None

        """
        return _StepShape.StepShape_PrecisionQualifier_SetPrecisionValue(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_PrecisionQualifier

# Register StepShape_PrecisionQualifier in _StepShape:
_StepShape.StepShape_PrecisionQualifier_swigregister(StepShape_PrecisionQualifier)

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

        Returns
        -------
        None

        """
        _StepShape.StepShape_QualifiedRepresentationItem_swiginit(self, _StepShape.new_StepShape_QualifiedRepresentationItem(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        qualifiers: StepShape_HArray1OfValueQualifier

        Returns
        -------
        None

        """
        return _StepShape.StepShape_QualifiedRepresentationItem_Init(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_QualifiedRepresentationItem_NbQualifiers(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfValueQualifier>

        """
        return _StepShape.StepShape_QualifiedRepresentationItem_Qualifiers(self, *args)

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

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

        Returns
        -------
        StepShape_ValueQualifier

        """
        return _StepShape.StepShape_QualifiedRepresentationItem_QualifiersValue(self, *args)

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

        Parameters
        ----------
        qualifiers: StepShape_HArray1OfValueQualifier

        Returns
        -------
        None

        """
        return _StepShape.StepShape_QualifiedRepresentationItem_SetQualifiers(self, *args)

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

        Parameters
        ----------
        num: int
        aqualifier: StepShape_ValueQualifier

        Returns
        -------
        None

        """
        return _StepShape.StepShape_QualifiedRepresentationItem_SetQualifiersValue(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_QualifiedRepresentationItem

# Register StepShape_QualifiedRepresentationItem in _StepShape:
_StepShape.StepShape_QualifiedRepresentationItem_swigregister(StepShape_QualifiedRepresentationItem)

class StepShape_ReversibleTopologyItem(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 reversibletopologyitem selecttype.

        Returns
        -------
        None

        """
        _StepShape.StepShape_ReversibleTopologyItem_swiginit(self, _StepShape.new_StepShape_ReversibleTopologyItem(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_ClosedShell>

        """
        return _StepShape.StepShape_ReversibleTopologyItem_ClosedShell(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_Edge>

        """
        return _StepShape.StepShape_ReversibleTopologyItem_Edge(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_Face>

        """
        return _StepShape.StepShape_ReversibleTopologyItem_Face(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_FaceBound>

        """
        return _StepShape.StepShape_ReversibleTopologyItem_FaceBound(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_OpenShell>

        """
        return _StepShape.StepShape_ReversibleTopologyItem_OpenShell(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_Path>

        """
        return _StepShape.StepShape_ReversibleTopologyItem_Path(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ReversibleTopologyItem

# Register StepShape_ReversibleTopologyItem in _StepShape:
_StepShape.StepShape_ReversibleTopologyItem_swigregister(StepShape_ReversibleTopologyItem)

class StepShape_RightAngularWedge(OCC.Core.StepGeom.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 rightangularwedge.

        Returns
        -------
        None

        """
        _StepShape.StepShape_RightAngularWedge_swiginit(self, _StepShape.new_StepShape_RightAngularWedge(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis2Placement3d
        aX: float
        aY: float
        aZ: float
        aLtx: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightAngularWedge_Init(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_RightAngularWedge_Ltx(self, *args)

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

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

        """
        return _StepShape.StepShape_RightAngularWedge_Position(self, *args)

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

        Parameters
        ----------
        aLtx: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightAngularWedge_SetLtx(self, *args)

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

        Parameters
        ----------
        aPosition: StepGeom_Axis2Placement3d

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightAngularWedge_SetPosition(self, *args)

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

        Parameters
        ----------
        aX: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightAngularWedge_SetX(self, *args)

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

        Parameters
        ----------
        aY: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightAngularWedge_SetY(self, *args)

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

        Parameters
        ----------
        aZ: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightAngularWedge_SetZ(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_RightAngularWedge_X(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_RightAngularWedge_Y(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_RightAngularWedge_Z(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_RightAngularWedge

# Register StepShape_RightAngularWedge in _StepShape:
_StepShape.StepShape_RightAngularWedge_swigregister(StepShape_RightAngularWedge)

class StepShape_RightCircularCone(OCC.Core.StepGeom.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 rightcircularcone.

        Returns
        -------
        None

        """
        _StepShape.StepShape_RightCircularCone_swiginit(self, _StepShape.new_StepShape_RightCircularCone(*args))

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_RightCircularCone_Height(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis1Placement
        aHeight: float
        aRadius: float
        aSemiAngle: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightCircularCone_Init(self, *args)

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

        Returns
        -------
        opencascade::handle<StepGeom_Axis1Placement>

        """
        return _StepShape.StepShape_RightCircularCone_Position(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_RightCircularCone_Radius(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_RightCircularCone_SemiAngle(self, *args)

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

        Parameters
        ----------
        aHeight: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightCircularCone_SetHeight(self, *args)

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

        Parameters
        ----------
        aPosition: StepGeom_Axis1Placement

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightCircularCone_SetPosition(self, *args)

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

        Parameters
        ----------
        aRadius: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightCircularCone_SetRadius(self, *args)

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

        Parameters
        ----------
        aSemiAngle: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightCircularCone_SetSemiAngle(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_RightCircularCone

# Register StepShape_RightCircularCone in _StepShape:
_StepShape.StepShape_RightCircularCone_swigregister(StepShape_RightCircularCone)

class StepShape_RightCircularCylinder(OCC.Core.StepGeom.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 rightcircularcylinder.

        Returns
        -------
        None

        """
        _StepShape.StepShape_RightCircularCylinder_swiginit(self, _StepShape.new_StepShape_RightCircularCylinder(*args))

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_RightCircularCylinder_Height(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis1Placement
        aHeight: float
        aRadius: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightCircularCylinder_Init(self, *args)

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

        Returns
        -------
        opencascade::handle<StepGeom_Axis1Placement>

        """
        return _StepShape.StepShape_RightCircularCylinder_Position(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_RightCircularCylinder_Radius(self, *args)

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

        Parameters
        ----------
        aHeight: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightCircularCylinder_SetHeight(self, *args)

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

        Parameters
        ----------
        aPosition: StepGeom_Axis1Placement

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightCircularCylinder_SetPosition(self, *args)

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

        Parameters
        ----------
        aRadius: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RightCircularCylinder_SetRadius(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_RightCircularCylinder

# Register StepShape_RightCircularCylinder in _StepShape:
_StepShape.StepShape_RightCircularCylinder_swigregister(StepShape_RightCircularCylinder)

class StepShape_ShapeDefinitionRepresentation(OCC.Core.StepRepr.StepRepr_PropertyDefinitionRepresentation):
    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

        """
        _StepShape.StepShape_ShapeDefinitionRepresentation_swiginit(self, _StepShape.new_StepShape_ShapeDefinitionRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ShapeDefinitionRepresentation

# Register StepShape_ShapeDefinitionRepresentation in _StepShape:
_StepShape.StepShape_ShapeDefinitionRepresentation_swigregister(StepShape_ShapeDefinitionRepresentation)

class StepShape_ShapeDimensionRepresentationItem(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 shapedimensionrepresentationitem select type.

        Returns
        -------
        None

        """
        _StepShape.StepShape_ShapeDimensionRepresentationItem_swiginit(self, _StepShape.new_StepShape_ShapeDimensionRepresentationItem(*args))

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

        Returns
        -------
        opencascade::handle<StepRepr_CompoundRepresentationItem>

        """
        return _StepShape.StepShape_ShapeDimensionRepresentationItem_CompoundRepresentationItem(self, *args)

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

        Returns
        -------
        opencascade::handle<StepRepr_DescriptiveRepresentationItem>

        """
        return _StepShape.StepShape_ShapeDimensionRepresentationItem_DescriptiveRepresentationItem(self, *args)

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

        Returns
        -------
        opencascade::handle<StepRepr_MeasureRepresentationItem>

        """
        return _StepShape.StepShape_ShapeDimensionRepresentationItem_MeasureRepresentationItem(self, *args)

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

        Returns
        -------
        opencascade::handle<StepGeom_Placement>

        """
        return _StepShape.StepShape_ShapeDimensionRepresentationItem_Placement(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ShapeDimensionRepresentationItem

# Register StepShape_ShapeDimensionRepresentationItem in _StepShape:
_StepShape.StepShape_ShapeDimensionRepresentationItem_swigregister(StepShape_ShapeDimensionRepresentationItem)

class StepShape_ShapeRepresentation(OCC.Core.StepRepr.StepRepr_Representation):
    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 shaperepresentation.

        Returns
        -------
        None

        """
        _StepShape.StepShape_ShapeRepresentation_swiginit(self, _StepShape.new_StepShape_ShapeRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ShapeRepresentation

# Register StepShape_ShapeRepresentation in _StepShape:
_StepShape.StepShape_ShapeRepresentation_swigregister(StepShape_ShapeRepresentation)

class StepShape_Shell(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 shell selecttype.

        Returns
        -------
        None

        """
        _StepShape.StepShape_Shell_swiginit(self, _StepShape.new_StepShape_Shell(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_ClosedShell>

        """
        return _StepShape.StepShape_Shell_ClosedShell(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_OpenShell>

        """
        return _StepShape.StepShape_Shell_OpenShell(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_Shell

# Register StepShape_Shell in _StepShape:
_StepShape.StepShape_Shell_swigregister(StepShape_Shell)

class StepShape_ShellBasedSurfaceModel(OCC.Core.StepGeom.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 shellbasedsurfacemodel.

        Returns
        -------
        None

        """
        _StepShape.StepShape_ShellBasedSurfaceModel_swiginit(self, _StepShape.new_StepShape_ShellBasedSurfaceModel(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSbsmBoundary: StepShape_HArray1OfShell

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ShellBasedSurfaceModel_Init(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_ShellBasedSurfaceModel_NbSbsmBoundary(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfShell>

        """
        return _StepShape.StepShape_ShellBasedSurfaceModel_SbsmBoundary(self, *args)

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

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

        Returns
        -------
        StepShape_Shell

        """
        return _StepShape.StepShape_ShellBasedSurfaceModel_SbsmBoundaryValue(self, *args)

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

        Parameters
        ----------
        aSbsmBoundary: StepShape_HArray1OfShell

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ShellBasedSurfaceModel_SetSbsmBoundary(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ShellBasedSurfaceModel

# Register StepShape_ShellBasedSurfaceModel in _StepShape:
_StepShape.StepShape_ShellBasedSurfaceModel_swigregister(StepShape_ShellBasedSurfaceModel)

class StepShape_SolidModel(OCC.Core.StepGeom.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 solidmodel.

        Returns
        -------
        None

        """
        _StepShape.StepShape_SolidModel_swiginit(self, _StepShape.new_StepShape_SolidModel(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_SolidModel

# Register StepShape_SolidModel in _StepShape:
_StepShape.StepShape_SolidModel_swigregister(StepShape_SolidModel)

class StepShape_Sphere(OCC.Core.StepGeom.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 sphere.

        Returns
        -------
        None

        """
        _StepShape.StepShape_Sphere_swiginit(self, _StepShape.new_StepShape_Sphere(*args))

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

        Returns
        -------
        opencascade::handle<StepGeom_Point>

        """
        return _StepShape.StepShape_Sphere_Centre(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aRadius: float
        aCentre: StepGeom_Point

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Sphere_Init(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_Sphere_Radius(self, *args)

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

        Parameters
        ----------
        aCentre: StepGeom_Point

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Sphere_SetCentre(self, *args)

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

        Parameters
        ----------
        aRadius: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Sphere_SetRadius(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_Sphere

# Register StepShape_Sphere in _StepShape:
_StepShape.StepShape_Sphere_swigregister(StepShape_Sphere)

class StepShape_SurfaceModel(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 surfacemodel selecttype.

        Returns
        -------
        None

        """
        _StepShape.StepShape_SurfaceModel_swiginit(self, _StepShape.new_StepShape_SurfaceModel(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_ShellBasedSurfaceModel>

        """
        return _StepShape.StepShape_SurfaceModel_ShellBasedSurfaceModel(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_SurfaceModel

# Register StepShape_SurfaceModel in _StepShape:
_StepShape.StepShape_SurfaceModel_swigregister(StepShape_SurfaceModel)

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

        Returns
        -------
        None

        """
        _StepShape.StepShape_ToleranceMethodDefinition_swiginit(self, _StepShape.new_StepShape_ToleranceMethodDefinition(*args))

    def LimitsAndFits(self, *args) -> "opencascade::handle< StepShape_LimitsAndFits >":
        r"""
        Returns value as limitsandfits.

        Returns
        -------
        opencascade::handle<StepShape_LimitsAndFits>

        """
        return _StepShape.StepShape_ToleranceMethodDefinition_LimitsAndFits(self, *args)

    def ToleranceValue(self, *args) -> "opencascade::handle< StepShape_ToleranceValue >":
        r"""
        Returns value as tolerancevalue.

        Returns
        -------
        opencascade::handle<StepShape_ToleranceValue>

        """
        return _StepShape.StepShape_ToleranceMethodDefinition_ToleranceValue(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ToleranceMethodDefinition

# Register StepShape_ToleranceMethodDefinition in _StepShape:
_StepShape.StepShape_ToleranceMethodDefinition_swigregister(StepShape_ToleranceMethodDefinition)

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

        Returns
        -------
        None

        """
        _StepShape.StepShape_ToleranceValue_swiginit(self, _StepShape.new_StepShape_ToleranceValue(*args))

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

        Parameters
        ----------
        lower_bound: Standard_Transient
        upper_bound: Standard_Transient

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ToleranceValue_Init(self, *args)

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

        Returns
        -------
        opencascade::handle<Standard_Transient>

        """
        return _StepShape.StepShape_ToleranceValue_LowerBound(self, *args)

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

        Parameters
        ----------
        lower_bound: Standard_Transient

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ToleranceValue_SetLowerBound(self, *args)

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

        Parameters
        ----------
        upper_bound: Standard_Transient

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ToleranceValue_SetUpperBound(self, *args)

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

        Returns
        -------
        opencascade::handle<Standard_Transient>

        """
        return _StepShape.StepShape_ToleranceValue_UpperBound(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ToleranceValue

# Register StepShape_ToleranceValue in _StepShape:
_StepShape.StepShape_ToleranceValue_swigregister(StepShape_ToleranceValue)

class StepShape_TopologicalRepresentationItem(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 topologicalrepresentationitem.

        Returns
        -------
        None

        """
        _StepShape.StepShape_TopologicalRepresentationItem_swiginit(self, _StepShape.new_StepShape_TopologicalRepresentationItem(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_TopologicalRepresentationItem

# Register StepShape_TopologicalRepresentationItem in _StepShape:
_StepShape.StepShape_TopologicalRepresentationItem_swigregister(StepShape_TopologicalRepresentationItem)

class StepShape_Torus(OCC.Core.StepGeom.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 torus.

        Returns
        -------
        None

        """
        _StepShape.StepShape_Torus_swiginit(self, _StepShape.new_StepShape_Torus(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPosition: StepGeom_Axis1Placement
        aMajorRadius: float
        aMinorRadius: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Torus_Init(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_Torus_MajorRadius(self, *args)

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_Torus_MinorRadius(self, *args)

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

        Returns
        -------
        opencascade::handle<StepGeom_Axis1Placement>

        """
        return _StepShape.StepShape_Torus_Position(self, *args)

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

        Parameters
        ----------
        aMajorRadius: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Torus_SetMajorRadius(self, *args)

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

        Parameters
        ----------
        aMinorRadius: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Torus_SetMinorRadius(self, *args)

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

        Parameters
        ----------
        aPosition: StepGeom_Axis1Placement

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Torus_SetPosition(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_Torus

# Register StepShape_Torus in _StepShape:
_StepShape.StepShape_Torus_swigregister(StepShape_Torus)

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

        Returns
        -------
        None

        """
        _StepShape.StepShape_TypeQualifier_swiginit(self, _StepShape.new_StepShape_TypeQualifier(*args))

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

        Parameters
        ----------
        name: TCollection_HAsciiString

        Returns
        -------
        None

        """
        return _StepShape.StepShape_TypeQualifier_Init(self, *args)

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

        Returns
        -------
        opencascade::handle<TCollection_HAsciiString>

        """
        return _StepShape.StepShape_TypeQualifier_Name(self, *args)

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

        Parameters
        ----------
        name: TCollection_HAsciiString

        Returns
        -------
        None

        """
        return _StepShape.StepShape_TypeQualifier_SetName(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_TypeQualifier

# Register StepShape_TypeQualifier in _StepShape:
_StepShape.StepShape_TypeQualifier_swigregister(StepShape_TypeQualifier)

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

        Returns
        -------
        None

        """
        _StepShape.StepShape_ValueFormatTypeQualifier_swiginit(self, _StepShape.new_StepShape_ValueFormatTypeQualifier(*args))

    def FormatType(self, *args) -> "opencascade::handle< TCollection_HAsciiString >":
        r"""
        Returns field formattype.

        Returns
        -------
        opencascade::handle<TCollection_HAsciiString>

        """
        return _StepShape.StepShape_ValueFormatTypeQualifier_FormatType(self, *args)

    def Init(self, *args) -> "void":
        r"""
        Init all field own and inherited.

        Parameters
        ----------
        theFormatType: TCollection_HAsciiString

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ValueFormatTypeQualifier_Init(self, *args)

    def SetFormatType(self, *args) -> "void":
        r"""
        Set field formattype.

        Parameters
        ----------
        theFormatType: TCollection_HAsciiString

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ValueFormatTypeQualifier_SetFormatType(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ValueFormatTypeQualifier

# Register StepShape_ValueFormatTypeQualifier in _StepShape:
_StepShape.StepShape_ValueFormatTypeQualifier_swigregister(StepShape_ValueFormatTypeQualifier)

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

        Returns
        -------
        None

        """
        _StepShape.StepShape_ValueQualifier_swiginit(self, _StepShape.new_StepShape_ValueQualifier(*args))

    def PrecisionQualifier(self, *args) -> "opencascade::handle< StepShape_PrecisionQualifier >":
        r"""
        Returns value as precisionqualifier.

        Returns
        -------
        opencascade::handle<StepShape_PrecisionQualifier>

        """
        return _StepShape.StepShape_ValueQualifier_PrecisionQualifier(self, *args)

    def TypeQualifier(self, *args) -> "opencascade::handle< StepShape_TypeQualifier >":
        r"""
        Returns value as typequalifier.

        Returns
        -------
        opencascade::handle<StepShape_TypeQualifier>

        """
        return _StepShape.StepShape_ValueQualifier_TypeQualifier(self, *args)

    def ValueFormatTypeQualifier(self, *args) -> "opencascade::handle< StepShape_ValueFormatTypeQualifier >":
        r"""
        Returns value as valueformattypequalifier.

        Returns
        -------
        opencascade::handle<StepShape_ValueFormatTypeQualifier>

        """
        return _StepShape.StepShape_ValueQualifier_ValueFormatTypeQualifier(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ValueQualifier

# Register StepShape_ValueQualifier in _StepShape:
_StepShape.StepShape_ValueQualifier_swigregister(StepShape_ValueQualifier)

class StepShape_AdvancedBrepShapeRepresentation(StepShape_ShapeRepresentation):
    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 advancedbrepshaperepresentation.

        Returns
        -------
        None

        """
        _StepShape.StepShape_AdvancedBrepShapeRepresentation_swiginit(self, _StepShape.new_StepShape_AdvancedBrepShapeRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_AdvancedBrepShapeRepresentation

# Register StepShape_AdvancedBrepShapeRepresentation in _StepShape:
_StepShape.StepShape_AdvancedBrepShapeRepresentation_swigregister(StepShape_AdvancedBrepShapeRepresentation)

class StepShape_AngularLocation(StepShape_DimensionalLocation):
    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

        """
        _StepShape.StepShape_AngularLocation_swiginit(self, _StepShape.new_StepShape_AngularLocation(*args))

    def AngleSelection(self, *args) -> "StepShape_AngleRelator":
        r"""
        Returns field angleselection.

        Returns
        -------
        StepShape_AngleRelator

        """
        return _StepShape.StepShape_AngularLocation_AngleSelection(self, *args)

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aShapeAspectRelationship_Name: TCollection_HAsciiString
        hasShapeAspectRelationship_Description: bool
        aShapeAspectRelationship_Description: TCollection_HAsciiString
        aShapeAspectRelationship_RelatingShapeAspect: StepRepr_ShapeAspect
        aShapeAspectRelationship_RelatedShapeAspect: StepRepr_ShapeAspect
        aAngleSelection: StepShape_AngleRelator

        Returns
        -------
        None

        """
        return _StepShape.StepShape_AngularLocation_Init(self, *args)

    def SetAngleSelection(self, *args) -> "void":
        r"""
        Set field angleselection.

        Parameters
        ----------
        AngleSelection: StepShape_AngleRelator

        Returns
        -------
        None

        """
        return _StepShape.StepShape_AngularLocation_SetAngleSelection(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_AngularLocation

# Register StepShape_AngularLocation in _StepShape:
_StepShape.StepShape_AngularLocation_swigregister(StepShape_AngularLocation)

class StepShape_AngularSize(StepShape_DimensionalSize):
    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

        """
        _StepShape.StepShape_AngularSize_swiginit(self, _StepShape.new_StepShape_AngularSize(*args))

    def AngleSelection(self, *args) -> "StepShape_AngleRelator":
        r"""
        Returns field angleselection.

        Returns
        -------
        StepShape_AngleRelator

        """
        return _StepShape.StepShape_AngularSize_AngleSelection(self, *args)

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aDimensionalSize_AppliesTo: StepRepr_ShapeAspect
        aDimensionalSize_Name: TCollection_HAsciiString
        aAngleSelection: StepShape_AngleRelator

        Returns
        -------
        None

        """
        return _StepShape.StepShape_AngularSize_Init(self, *args)

    def SetAngleSelection(self, *args) -> "void":
        r"""
        Set field angleselection.

        Parameters
        ----------
        AngleSelection: StepShape_AngleRelator

        Returns
        -------
        None

        """
        return _StepShape.StepShape_AngularSize_SetAngleSelection(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_AngularSize

# Register StepShape_AngularSize in _StepShape:
_StepShape.StepShape_AngularSize_swigregister(StepShape_AngularSize)

class StepShape_BoxedHalfSpace(StepShape_HalfSpaceSolid):
    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 boxedhalfspace.

        Returns
        -------
        None

        """
        _StepShape.StepShape_BoxedHalfSpace_swiginit(self, _StepShape.new_StepShape_BoxedHalfSpace(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_BoxDomain>

        """
        return _StepShape.StepShape_BoxedHalfSpace_Enclosure(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBaseSurface: StepGeom_Surface
        aAgreementFlag: bool
        aEnclosure: StepShape_BoxDomain

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BoxedHalfSpace_Init(self, *args)

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

        Parameters
        ----------
        aEnclosure: StepShape_BoxDomain

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BoxedHalfSpace_SetEnclosure(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_BoxedHalfSpace

# Register StepShape_BoxedHalfSpace in _StepShape:
_StepShape.StepShape_BoxedHalfSpace_swigregister(StepShape_BoxedHalfSpace)

class StepShape_CompoundShapeRepresentation(StepShape_ShapeRepresentation):
    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

        """
        _StepShape.StepShape_CompoundShapeRepresentation_swiginit(self, _StepShape.new_StepShape_CompoundShapeRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_CompoundShapeRepresentation

# Register StepShape_CompoundShapeRepresentation in _StepShape:
_StepShape.StepShape_CompoundShapeRepresentation_swigregister(StepShape_CompoundShapeRepresentation)

class StepShape_ConnectedEdgeSet(StepShape_TopologicalRepresentationItem):
    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

        """
        _StepShape.StepShape_ConnectedEdgeSet_swiginit(self, _StepShape.new_StepShape_ConnectedEdgeSet(*args))

    def CesEdges(self, *args) -> "opencascade::handle< StepShape_HArray1OfEdge >":
        r"""
        Returns field cesedges.

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfEdge>

        """
        return _StepShape.StepShape_ConnectedEdgeSet_CesEdges(self, *args)

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aRepresentationItem_Name: TCollection_HAsciiString
        aCesEdges: StepShape_HArray1OfEdge

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ConnectedEdgeSet_Init(self, *args)

    def SetCesEdges(self, *args) -> "void":
        r"""
        Set field cesedges.

        Parameters
        ----------
        CesEdges: StepShape_HArray1OfEdge

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ConnectedEdgeSet_SetCesEdges(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ConnectedEdgeSet

# Register StepShape_ConnectedEdgeSet in _StepShape:
_StepShape.StepShape_ConnectedEdgeSet_swigregister(StepShape_ConnectedEdgeSet)

class StepShape_ConnectedFaceSet(StepShape_TopologicalRepresentationItem):
    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 connectedfaceset.

        Returns
        -------
        None

        """
        _StepShape.StepShape_ConnectedFaceSet_swiginit(self, _StepShape.new_StepShape_ConnectedFaceSet(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfFace>

        """
        return _StepShape.StepShape_ConnectedFaceSet_CfsFaces(self, *args)

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

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

        Returns
        -------
        opencascade::handle<StepShape_Face>

        """
        return _StepShape.StepShape_ConnectedFaceSet_CfsFacesValue(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aCfsFaces: StepShape_HArray1OfFace

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ConnectedFaceSet_Init(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_ConnectedFaceSet_NbCfsFaces(self, *args)

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

        Parameters
        ----------
        aCfsFaces: StepShape_HArray1OfFace

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ConnectedFaceSet_SetCfsFaces(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ConnectedFaceSet

# Register StepShape_ConnectedFaceSet in _StepShape:
_StepShape.StepShape_ConnectedFaceSet_swigregister(StepShape_ConnectedFaceSet)

class StepShape_CsgShapeRepresentation(StepShape_ShapeRepresentation):
    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 csgshaperepresentation.

        Returns
        -------
        None

        """
        _StepShape.StepShape_CsgShapeRepresentation_swiginit(self, _StepShape.new_StepShape_CsgShapeRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_CsgShapeRepresentation

# Register StepShape_CsgShapeRepresentation in _StepShape:
_StepShape.StepShape_CsgShapeRepresentation_swigregister(StepShape_CsgShapeRepresentation)

class StepShape_CsgSolid(StepShape_SolidModel):
    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 csgsolid.

        Returns
        -------
        None

        """
        _StepShape.StepShape_CsgSolid_swiginit(self, _StepShape.new_StepShape_CsgSolid(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aTreeRootExpression: StepShape_CsgSelect

        Returns
        -------
        None

        """
        return _StepShape.StepShape_CsgSolid_Init(self, *args)

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

        Parameters
        ----------
        aTreeRootExpression: StepShape_CsgSelect

        Returns
        -------
        None

        """
        return _StepShape.StepShape_CsgSolid_SetTreeRootExpression(self, *args)

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

        Returns
        -------
        StepShape_CsgSelect

        """
        return _StepShape.StepShape_CsgSolid_TreeRootExpression(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_CsgSolid

# Register StepShape_CsgSolid in _StepShape:
_StepShape.StepShape_CsgSolid_swigregister(StepShape_CsgSolid)

class StepShape_DimensionalLocationWithPath(StepShape_DimensionalLocation):
    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

        """
        _StepShape.StepShape_DimensionalLocationWithPath_swiginit(self, _StepShape.new_StepShape_DimensionalLocationWithPath(*args))

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aShapeAspectRelationship_Name: TCollection_HAsciiString
        hasShapeAspectRelationship_Description: bool
        aShapeAspectRelationship_Description: TCollection_HAsciiString
        aShapeAspectRelationship_RelatingShapeAspect: StepRepr_ShapeAspect
        aShapeAspectRelationship_RelatedShapeAspect: StepRepr_ShapeAspect
        aPath: StepRepr_ShapeAspect

        Returns
        -------
        None

        """
        return _StepShape.StepShape_DimensionalLocationWithPath_Init(self, *args)

    def Path(self, *args) -> "opencascade::handle< StepRepr_ShapeAspect >":
        r"""
        Returns field path.

        Returns
        -------
        opencascade::handle<StepRepr_ShapeAspect>

        """
        return _StepShape.StepShape_DimensionalLocationWithPath_Path(self, *args)

    def SetPath(self, *args) -> "void":
        r"""
        Set field path.

        Parameters
        ----------
        Path: StepRepr_ShapeAspect

        Returns
        -------
        None

        """
        return _StepShape.StepShape_DimensionalLocationWithPath_SetPath(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_DimensionalLocationWithPath

# Register StepShape_DimensionalLocationWithPath in _StepShape:
_StepShape.StepShape_DimensionalLocationWithPath_swigregister(StepShape_DimensionalLocationWithPath)

class StepShape_DimensionalSizeWithPath(StepShape_DimensionalSize):
    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

        """
        _StepShape.StepShape_DimensionalSizeWithPath_swiginit(self, _StepShape.new_StepShape_DimensionalSizeWithPath(*args))

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aDimensionalSize_AppliesTo: StepRepr_ShapeAspect
        aDimensionalSize_Name: TCollection_HAsciiString
        aPath: StepRepr_ShapeAspect

        Returns
        -------
        None

        """
        return _StepShape.StepShape_DimensionalSizeWithPath_Init(self, *args)

    def Path(self, *args) -> "opencascade::handle< StepRepr_ShapeAspect >":
        r"""
        Returns field path.

        Returns
        -------
        opencascade::handle<StepRepr_ShapeAspect>

        """
        return _StepShape.StepShape_DimensionalSizeWithPath_Path(self, *args)

    def SetPath(self, *args) -> "void":
        r"""
        Set field path.

        Parameters
        ----------
        Path: StepRepr_ShapeAspect

        Returns
        -------
        None

        """
        return _StepShape.StepShape_DimensionalSizeWithPath_SetPath(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_DimensionalSizeWithPath

# Register StepShape_DimensionalSizeWithPath in _StepShape:
_StepShape.StepShape_DimensionalSizeWithPath_swigregister(StepShape_DimensionalSizeWithPath)

class StepShape_DirectedDimensionalLocation(StepShape_DimensionalLocation):
    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

        """
        _StepShape.StepShape_DirectedDimensionalLocation_swiginit(self, _StepShape.new_StepShape_DirectedDimensionalLocation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_DirectedDimensionalLocation

# Register StepShape_DirectedDimensionalLocation in _StepShape:
_StepShape.StepShape_DirectedDimensionalLocation_swigregister(StepShape_DirectedDimensionalLocation)

class StepShape_Edge(StepShape_TopologicalRepresentationItem):
    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 edge.

        Returns
        -------
        None

        """
        _StepShape.StepShape_Edge_swiginit(self, _StepShape.new_StepShape_Edge(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_Vertex>

        """
        return _StepShape.StepShape_Edge_EdgeEnd(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_Vertex>

        """
        return _StepShape.StepShape_Edge_EdgeStart(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aEdgeStart: StepShape_Vertex
        aEdgeEnd: StepShape_Vertex

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Edge_Init(self, *args)

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

        Parameters
        ----------
        aEdgeEnd: StepShape_Vertex

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Edge_SetEdgeEnd(self, *args)

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

        Parameters
        ----------
        aEdgeStart: StepShape_Vertex

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Edge_SetEdgeStart(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_Edge

# Register StepShape_Edge in _StepShape:
_StepShape.StepShape_Edge_swigregister(StepShape_Edge)

class StepShape_EdgeBasedWireframeShapeRepresentation(StepShape_ShapeRepresentation):
    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

        """
        _StepShape.StepShape_EdgeBasedWireframeShapeRepresentation_swiginit(self, _StepShape.new_StepShape_EdgeBasedWireframeShapeRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_EdgeBasedWireframeShapeRepresentation

# Register StepShape_EdgeBasedWireframeShapeRepresentation in _StepShape:
_StepShape.StepShape_EdgeBasedWireframeShapeRepresentation_swigregister(StepShape_EdgeBasedWireframeShapeRepresentation)

class StepShape_Face(StepShape_TopologicalRepresentationItem):
    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 face.

        Returns
        -------
        None

        """
        _StepShape.StepShape_Face_swiginit(self, _StepShape.new_StepShape_Face(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfFaceBound>

        """
        return _StepShape.StepShape_Face_Bounds(self, *args)

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

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

        Returns
        -------
        opencascade::handle<StepShape_FaceBound>

        """
        return _StepShape.StepShape_Face_BoundsValue(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBounds: StepShape_HArray1OfFaceBound

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Face_Init(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_Face_NbBounds(self, *args)

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

        Parameters
        ----------
        aBounds: StepShape_HArray1OfFaceBound

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Face_SetBounds(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_Face

# Register StepShape_Face in _StepShape:
_StepShape.StepShape_Face_swigregister(StepShape_Face)

class StepShape_FaceBound(StepShape_TopologicalRepresentationItem):
    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 facebound.

        Returns
        -------
        None

        """
        _StepShape.StepShape_FaceBound_swiginit(self, _StepShape.new_StepShape_FaceBound(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_Loop>

        """
        return _StepShape.StepShape_FaceBound_Bound(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBound: StepShape_Loop
        aOrientation: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_FaceBound_Init(self, *args)

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

        Returns
        -------
        bool

        """
        return _StepShape.StepShape_FaceBound_Orientation(self, *args)

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

        Parameters
        ----------
        aBound: StepShape_Loop

        Returns
        -------
        None

        """
        return _StepShape.StepShape_FaceBound_SetBound(self, *args)

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

        Parameters
        ----------
        aOrientation: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_FaceBound_SetOrientation(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_FaceBound

# Register StepShape_FaceBound in _StepShape:
_StepShape.StepShape_FaceBound_swigregister(StepShape_FaceBound)

class StepShape_FacetedBrepShapeRepresentation(StepShape_ShapeRepresentation):
    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 facetedbrepshaperepresentation.

        Returns
        -------
        None

        """
        _StepShape.StepShape_FacetedBrepShapeRepresentation_swiginit(self, _StepShape.new_StepShape_FacetedBrepShapeRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_FacetedBrepShapeRepresentation

# Register StepShape_FacetedBrepShapeRepresentation in _StepShape:
_StepShape.StepShape_FacetedBrepShapeRepresentation_swigregister(StepShape_FacetedBrepShapeRepresentation)

class StepShape_GeometricCurveSet(StepShape_GeometricSet):
    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 geometriccurveset.

        Returns
        -------
        None

        """
        _StepShape.StepShape_GeometricCurveSet_swiginit(self, _StepShape.new_StepShape_GeometricCurveSet(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_GeometricCurveSet

# Register StepShape_GeometricCurveSet in _StepShape:
_StepShape.StepShape_GeometricCurveSet_swigregister(StepShape_GeometricCurveSet)

class StepShape_GeometricallyBoundedSurfaceShapeRepresentation(StepShape_ShapeRepresentation):
    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 geometricallyboundedsurfaceshaperepresentation.

        Returns
        -------
        None

        """
        _StepShape.StepShape_GeometricallyBoundedSurfaceShapeRepresentation_swiginit(self, _StepShape.new_StepShape_GeometricallyBoundedSurfaceShapeRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_GeometricallyBoundedSurfaceShapeRepresentation

# Register StepShape_GeometricallyBoundedSurfaceShapeRepresentation in _StepShape:
_StepShape.StepShape_GeometricallyBoundedSurfaceShapeRepresentation_swigregister(StepShape_GeometricallyBoundedSurfaceShapeRepresentation)

class StepShape_GeometricallyBoundedWireframeShapeRepresentation(StepShape_ShapeRepresentation):
    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 geometricallyboundedwireframeshaperepresentation.

        Returns
        -------
        None

        """
        _StepShape.StepShape_GeometricallyBoundedWireframeShapeRepresentation_swiginit(self, _StepShape.new_StepShape_GeometricallyBoundedWireframeShapeRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_GeometricallyBoundedWireframeShapeRepresentation

# Register StepShape_GeometricallyBoundedWireframeShapeRepresentation in _StepShape:
_StepShape.StepShape_GeometricallyBoundedWireframeShapeRepresentation_swigregister(StepShape_GeometricallyBoundedWireframeShapeRepresentation)

class StepShape_Loop(StepShape_TopologicalRepresentationItem):
    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 loop.

        Returns
        -------
        None

        """
        _StepShape.StepShape_Loop_swiginit(self, _StepShape.new_StepShape_Loop(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_Loop

# Register StepShape_Loop in _StepShape:
_StepShape.StepShape_Loop_swigregister(StepShape_Loop)

class StepShape_LoopAndPath(StepShape_TopologicalRepresentationItem):
    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 loopandpath.

        Returns
        -------
        None

        """
        _StepShape.StepShape_LoopAndPath_swiginit(self, _StepShape.new_StepShape_LoopAndPath(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfOrientedEdge>

        """
        return _StepShape.StepShape_LoopAndPath_EdgeList(self, *args)

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

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

        Returns
        -------
        opencascade::handle<StepShape_OrientedEdge>

        """
        return _StepShape.StepShape_LoopAndPath_EdgeListValue(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aLoop: StepShape_Loop
        aPath: StepShape_Path

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aEdgeList: StepShape_HArray1OfOrientedEdge

        Returns
        -------
        None

        """
        return _StepShape.StepShape_LoopAndPath_Init(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_Loop>

        """
        return _StepShape.StepShape_LoopAndPath_Loop(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_LoopAndPath_NbEdgeList(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_Path>

        """
        return _StepShape.StepShape_LoopAndPath_Path(self, *args)

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

        Parameters
        ----------
        aEdgeList: StepShape_HArray1OfOrientedEdge

        Returns
        -------
        None

        """
        return _StepShape.StepShape_LoopAndPath_SetEdgeList(self, *args)

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

        Parameters
        ----------
        aLoop: StepShape_Loop

        Returns
        -------
        None

        """
        return _StepShape.StepShape_LoopAndPath_SetLoop(self, *args)

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

        Parameters
        ----------
        aPath: StepShape_Path

        Returns
        -------
        None

        """
        return _StepShape.StepShape_LoopAndPath_SetPath(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_LoopAndPath

# Register StepShape_LoopAndPath in _StepShape:
_StepShape.StepShape_LoopAndPath_swigregister(StepShape_LoopAndPath)

class StepShape_ManifoldSolidBrep(StepShape_SolidModel):
    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 manifoldsolidbrep.

        Returns
        -------
        None

        """
        _StepShape.StepShape_ManifoldSolidBrep_swiginit(self, _StepShape.new_StepShape_ManifoldSolidBrep(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aOuter: StepShape_ClosedShell

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aOuter: StepShape_ConnectedFaceSet

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ManifoldSolidBrep_Init(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_ConnectedFaceSet>

        """
        return _StepShape.StepShape_ManifoldSolidBrep_Outer(self, *args)

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

        Parameters
        ----------
        aOuter: StepShape_ConnectedFaceSet

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ManifoldSolidBrep_SetOuter(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ManifoldSolidBrep

# Register StepShape_ManifoldSolidBrep in _StepShape:
_StepShape.StepShape_ManifoldSolidBrep_swigregister(StepShape_ManifoldSolidBrep)

class StepShape_ManifoldSurfaceShapeRepresentation(StepShape_ShapeRepresentation):
    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 manifoldsurfaceshaperepresentation.

        Returns
        -------
        None

        """
        _StepShape.StepShape_ManifoldSurfaceShapeRepresentation_swiginit(self, _StepShape.new_StepShape_ManifoldSurfaceShapeRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ManifoldSurfaceShapeRepresentation

# Register StepShape_ManifoldSurfaceShapeRepresentation in _StepShape:
_StepShape.StepShape_ManifoldSurfaceShapeRepresentation_swigregister(StepShape_ManifoldSurfaceShapeRepresentation)

class StepShape_NonManifoldSurfaceShapeRepresentation(StepShape_ShapeRepresentation):
    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

        """
        _StepShape.StepShape_NonManifoldSurfaceShapeRepresentation_swiginit(self, _StepShape.new_StepShape_NonManifoldSurfaceShapeRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_NonManifoldSurfaceShapeRepresentation

# Register StepShape_NonManifoldSurfaceShapeRepresentation in _StepShape:
_StepShape.StepShape_NonManifoldSurfaceShapeRepresentation_swigregister(StepShape_NonManifoldSurfaceShapeRepresentation)

class StepShape_Path(StepShape_TopologicalRepresentationItem):
    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 path.

        Returns
        -------
        None

        """
        _StepShape.StepShape_Path_swiginit(self, _StepShape.new_StepShape_Path(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfOrientedEdge>

        """
        return _StepShape.StepShape_Path_EdgeList(self, *args)

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

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

        Returns
        -------
        opencascade::handle<StepShape_OrientedEdge>

        """
        return _StepShape.StepShape_Path_EdgeListValue(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aEdgeList: StepShape_HArray1OfOrientedEdge

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Path_Init(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_Path_NbEdgeList(self, *args)

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

        Parameters
        ----------
        aEdgeList: StepShape_HArray1OfOrientedEdge

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Path_SetEdgeList(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_Path

# Register StepShape_Path in _StepShape:
_StepShape.StepShape_Path_swigregister(StepShape_Path)

class StepShape_PointRepresentation(StepShape_ShapeRepresentation):
    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

        """
        _StepShape.StepShape_PointRepresentation_swiginit(self, _StepShape.new_StepShape_PointRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_PointRepresentation

# Register StepShape_PointRepresentation in _StepShape:
_StepShape.StepShape_PointRepresentation_swigregister(StepShape_PointRepresentation)

class StepShape_ShapeDimensionRepresentation(StepShape_ShapeRepresentation):
    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

        """
        _StepShape.StepShape_ShapeDimensionRepresentation_swiginit(self, _StepShape.new_StepShape_ShapeDimensionRepresentation(*args))

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields ap214.

        Parameters
        ----------
        theName: TCollection_HAsciiString
        theItems: StepRepr_HArray1OfRepresentationItem
        theContextOfItems: StepRepr_RepresentationContext

        Returns
        -------
        None
        Initialize all fields ap242.

        Parameters
        ----------
        theName: TCollection_HAsciiString
        theItems: StepShape_HArray1OfShapeDimensionRepresentationItem
        theContextOfItems: StepRepr_RepresentationContext

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ShapeDimensionRepresentation_Init(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfShapeDimensionRepresentationItem>

        """
        return _StepShape.StepShape_ShapeDimensionRepresentation_ItemsAP242(self, *args)

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

        Parameters
        ----------
        theItems: StepShape_HArray1OfShapeDimensionRepresentationItem

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ShapeDimensionRepresentation_SetItemsAP242(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ShapeDimensionRepresentation

# Register StepShape_ShapeDimensionRepresentation in _StepShape:
_StepShape.StepShape_ShapeDimensionRepresentation_swigregister(StepShape_ShapeDimensionRepresentation)

class StepShape_ShapeRepresentationWithParameters(StepShape_ShapeRepresentation):
    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

        """
        _StepShape.StepShape_ShapeRepresentationWithParameters_swiginit(self, _StepShape.new_StepShape_ShapeRepresentationWithParameters(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ShapeRepresentationWithParameters

# Register StepShape_ShapeRepresentationWithParameters in _StepShape:
_StepShape.StepShape_ShapeRepresentationWithParameters_swigregister(StepShape_ShapeRepresentationWithParameters)

class StepShape_SolidReplica(StepShape_SolidModel):
    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 solidreplica.

        Returns
        -------
        None

        """
        _StepShape.StepShape_SolidReplica_swiginit(self, _StepShape.new_StepShape_SolidReplica(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aParentSolid: StepShape_SolidModel
        aTransformation: StepGeom_CartesianTransformationOperator3d

        Returns
        -------
        None

        """
        return _StepShape.StepShape_SolidReplica_Init(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_SolidModel>

        """
        return _StepShape.StepShape_SolidReplica_ParentSolid(self, *args)

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

        Parameters
        ----------
        aParentSolid: StepShape_SolidModel

        Returns
        -------
        None

        """
        return _StepShape.StepShape_SolidReplica_SetParentSolid(self, *args)

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

        Parameters
        ----------
        aTransformation: StepGeom_CartesianTransformationOperator3d

        Returns
        -------
        None

        """
        return _StepShape.StepShape_SolidReplica_SetTransformation(self, *args)

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

        Returns
        -------
        opencascade::handle<StepGeom_CartesianTransformationOperator3d>

        """
        return _StepShape.StepShape_SolidReplica_Transformation(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_SolidReplica

# Register StepShape_SolidReplica in _StepShape:
_StepShape.StepShape_SolidReplica_swigregister(StepShape_SolidReplica)

class StepShape_SweptAreaSolid(StepShape_SolidModel):
    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 sweptareasolid.

        Returns
        -------
        None

        """
        _StepShape.StepShape_SweptAreaSolid_swiginit(self, _StepShape.new_StepShape_SweptAreaSolid(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSweptArea: StepGeom_CurveBoundedSurface

        Returns
        -------
        None

        """
        return _StepShape.StepShape_SweptAreaSolid_Init(self, *args)

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

        Parameters
        ----------
        aSweptArea: StepGeom_CurveBoundedSurface

        Returns
        -------
        None

        """
        return _StepShape.StepShape_SweptAreaSolid_SetSweptArea(self, *args)

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

        Returns
        -------
        opencascade::handle<StepGeom_CurveBoundedSurface>

        """
        return _StepShape.StepShape_SweptAreaSolid_SweptArea(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_SweptAreaSolid

# Register StepShape_SweptAreaSolid in _StepShape:
_StepShape.StepShape_SweptAreaSolid_swigregister(StepShape_SweptAreaSolid)

class StepShape_SweptFaceSolid(StepShape_SolidModel):
    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 sweptfacesolid.

        Returns
        -------
        None

        """
        _StepShape.StepShape_SweptFaceSolid_swiginit(self, _StepShape.new_StepShape_SweptFaceSolid(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSweptArea: StepShape_FaceSurface

        Returns
        -------
        None

        """
        return _StepShape.StepShape_SweptFaceSolid_Init(self, *args)

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

        Parameters
        ----------
        aSweptArea: StepShape_FaceSurface

        Returns
        -------
        None

        """
        return _StepShape.StepShape_SweptFaceSolid_SetSweptFace(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_FaceSurface>

        """
        return _StepShape.StepShape_SweptFaceSolid_SweptFace(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_SweptFaceSolid

# Register StepShape_SweptFaceSolid in _StepShape:
_StepShape.StepShape_SweptFaceSolid_swigregister(StepShape_SweptFaceSolid)

class StepShape_TransitionalShapeRepresentation(StepShape_ShapeRepresentation):
    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 transitionalshaperepresentation.

        Returns
        -------
        None

        """
        _StepShape.StepShape_TransitionalShapeRepresentation_swiginit(self, _StepShape.new_StepShape_TransitionalShapeRepresentation(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_TransitionalShapeRepresentation

# Register StepShape_TransitionalShapeRepresentation in _StepShape:
_StepShape.StepShape_TransitionalShapeRepresentation_swigregister(StepShape_TransitionalShapeRepresentation)

class StepShape_Vertex(StepShape_TopologicalRepresentationItem):
    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 vertex.

        Returns
        -------
        None

        """
        _StepShape.StepShape_Vertex_swiginit(self, _StepShape.new_StepShape_Vertex(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_Vertex

# Register StepShape_Vertex in _StepShape:
_StepShape.StepShape_Vertex_swigregister(StepShape_Vertex)

class StepShape_BrepWithVoids(StepShape_ManifoldSolidBrep):
    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 brepwithvoids.

        Returns
        -------
        None

        """
        _StepShape.StepShape_BrepWithVoids_swiginit(self, _StepShape.new_StepShape_BrepWithVoids(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aOuter: StepShape_ClosedShell
        aVoids: StepShape_HArray1OfOrientedClosedShell

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BrepWithVoids_Init(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_BrepWithVoids_NbVoids(self, *args)

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

        Parameters
        ----------
        aVoids: StepShape_HArray1OfOrientedClosedShell

        Returns
        -------
        None

        """
        return _StepShape.StepShape_BrepWithVoids_SetVoids(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfOrientedClosedShell>

        """
        return _StepShape.StepShape_BrepWithVoids_Voids(self, *args)

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

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

        Returns
        -------
        opencascade::handle<StepShape_OrientedClosedShell>

        """
        return _StepShape.StepShape_BrepWithVoids_VoidsValue(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_BrepWithVoids

# Register StepShape_BrepWithVoids in _StepShape:
_StepShape.StepShape_BrepWithVoids_swigregister(StepShape_BrepWithVoids)

class StepShape_ClosedShell(StepShape_ConnectedFaceSet):
    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 closedshell.

        Returns
        -------
        None

        """
        _StepShape.StepShape_ClosedShell_swiginit(self, _StepShape.new_StepShape_ClosedShell(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ClosedShell

# Register StepShape_ClosedShell in _StepShape:
_StepShape.StepShape_ClosedShell_swigregister(StepShape_ClosedShell)

class StepShape_ConnectedFaceSubSet(StepShape_ConnectedFaceSet):
    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

        """
        _StepShape.StepShape_ConnectedFaceSubSet_swiginit(self, _StepShape.new_StepShape_ConnectedFaceSubSet(*args))

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aRepresentationItem_Name: TCollection_HAsciiString
        aConnectedFaceSet_CfsFaces: StepShape_HArray1OfFace
        aParentFaceSet: StepShape_ConnectedFaceSet

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ConnectedFaceSubSet_Init(self, *args)

    def ParentFaceSet(self, *args) -> "opencascade::handle< StepShape_ConnectedFaceSet >":
        r"""
        Returns field parentfaceset.

        Returns
        -------
        opencascade::handle<StepShape_ConnectedFaceSet>

        """
        return _StepShape.StepShape_ConnectedFaceSubSet_ParentFaceSet(self, *args)

    def SetParentFaceSet(self, *args) -> "void":
        r"""
        Set field parentfaceset.

        Parameters
        ----------
        ParentFaceSet: StepShape_ConnectedFaceSet

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ConnectedFaceSubSet_SetParentFaceSet(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ConnectedFaceSubSet

# Register StepShape_ConnectedFaceSubSet in _StepShape:
_StepShape.StepShape_ConnectedFaceSubSet_swigregister(StepShape_ConnectedFaceSubSet)

class StepShape_EdgeCurve(StepShape_Edge):
    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 edgecurve.

        Returns
        -------
        None

        """
        _StepShape.StepShape_EdgeCurve_swiginit(self, _StepShape.new_StepShape_EdgeCurve(*args))

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

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

        """
        return _StepShape.StepShape_EdgeCurve_EdgeGeometry(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aEdgeStart: StepShape_Vertex
        aEdgeEnd: StepShape_Vertex
        aEdgeGeometry: StepGeom_Curve
        aSameSense: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_EdgeCurve_Init(self, *args)

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

        Returns
        -------
        bool

        """
        return _StepShape.StepShape_EdgeCurve_SameSense(self, *args)

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

        Parameters
        ----------
        aEdgeGeometry: StepGeom_Curve

        Returns
        -------
        None

        """
        return _StepShape.StepShape_EdgeCurve_SetEdgeGeometry(self, *args)

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

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

        Returns
        -------
        None

        """
        return _StepShape.StepShape_EdgeCurve_SetSameSense(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_EdgeCurve

# Register StepShape_EdgeCurve in _StepShape:
_StepShape.StepShape_EdgeCurve_swigregister(StepShape_EdgeCurve)

class StepShape_EdgeLoop(StepShape_Loop):
    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 edgeloop.

        Returns
        -------
        None

        """
        _StepShape.StepShape_EdgeLoop_swiginit(self, _StepShape.new_StepShape_EdgeLoop(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfOrientedEdge>

        """
        return _StepShape.StepShape_EdgeLoop_EdgeList(self, *args)

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

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

        Returns
        -------
        opencascade::handle<StepShape_OrientedEdge>

        """
        return _StepShape.StepShape_EdgeLoop_EdgeListValue(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aEdgeList: StepShape_HArray1OfOrientedEdge

        Returns
        -------
        None

        """
        return _StepShape.StepShape_EdgeLoop_Init(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_EdgeLoop_NbEdgeList(self, *args)

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

        Parameters
        ----------
        aEdgeList: StepShape_HArray1OfOrientedEdge

        Returns
        -------
        None

        """
        return _StepShape.StepShape_EdgeLoop_SetEdgeList(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_EdgeLoop

# Register StepShape_EdgeLoop in _StepShape:
_StepShape.StepShape_EdgeLoop_swigregister(StepShape_EdgeLoop)

class StepShape_ExtrudedAreaSolid(StepShape_SweptAreaSolid):
    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 extrudedareasolid.

        Returns
        -------
        None

        """
        _StepShape.StepShape_ExtrudedAreaSolid_swiginit(self, _StepShape.new_StepShape_ExtrudedAreaSolid(*args))

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_ExtrudedAreaSolid_Depth(self, *args)

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

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

        """
        return _StepShape.StepShape_ExtrudedAreaSolid_ExtrudedDirection(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSweptArea: StepGeom_CurveBoundedSurface
        aExtrudedDirection: StepGeom_Direction
        aDepth: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ExtrudedAreaSolid_Init(self, *args)

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

        Parameters
        ----------
        aDepth: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ExtrudedAreaSolid_SetDepth(self, *args)

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

        Parameters
        ----------
        aExtrudedDirection: StepGeom_Direction

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ExtrudedAreaSolid_SetExtrudedDirection(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ExtrudedAreaSolid

# Register StepShape_ExtrudedAreaSolid in _StepShape:
_StepShape.StepShape_ExtrudedAreaSolid_swigregister(StepShape_ExtrudedAreaSolid)

class StepShape_ExtrudedFaceSolid(StepShape_SweptFaceSolid):
    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 extrudedfacesolid.

        Returns
        -------
        None

        """
        _StepShape.StepShape_ExtrudedFaceSolid_swiginit(self, _StepShape.new_StepShape_ExtrudedFaceSolid(*args))

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_ExtrudedFaceSolid_Depth(self, *args)

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

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

        """
        return _StepShape.StepShape_ExtrudedFaceSolid_ExtrudedDirection(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSweptArea: StepShape_FaceSurface
        aExtrudedDirection: StepGeom_Direction
        aDepth: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ExtrudedFaceSolid_Init(self, *args)

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

        Parameters
        ----------
        aDepth: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ExtrudedFaceSolid_SetDepth(self, *args)

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

        Parameters
        ----------
        aExtrudedDirection: StepGeom_Direction

        Returns
        -------
        None

        """
        return _StepShape.StepShape_ExtrudedFaceSolid_SetExtrudedDirection(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_ExtrudedFaceSolid

# Register StepShape_ExtrudedFaceSolid in _StepShape:
_StepShape.StepShape_ExtrudedFaceSolid_swigregister(StepShape_ExtrudedFaceSolid)

class StepShape_FaceOuterBound(StepShape_FaceBound):
    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 faceouterbound.

        Returns
        -------
        None

        """
        _StepShape.StepShape_FaceOuterBound_swiginit(self, _StepShape.new_StepShape_FaceOuterBound(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_FaceOuterBound

# Register StepShape_FaceOuterBound in _StepShape:
_StepShape.StepShape_FaceOuterBound_swigregister(StepShape_FaceOuterBound)

class StepShape_FaceSurface(StepShape_Face):
    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 facesurface.

        Returns
        -------
        None

        """
        _StepShape.StepShape_FaceSurface_swiginit(self, _StepShape.new_StepShape_FaceSurface(*args))

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

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

        """
        return _StepShape.StepShape_FaceSurface_FaceGeometry(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aBounds: StepShape_HArray1OfFaceBound
        aFaceGeometry: StepGeom_Surface
        aSameSense: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_FaceSurface_Init(self, *args)

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

        Returns
        -------
        bool

        """
        return _StepShape.StepShape_FaceSurface_SameSense(self, *args)

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

        Parameters
        ----------
        aFaceGeometry: StepGeom_Surface

        Returns
        -------
        None

        """
        return _StepShape.StepShape_FaceSurface_SetFaceGeometry(self, *args)

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

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

        Returns
        -------
        None

        """
        return _StepShape.StepShape_FaceSurface_SetSameSense(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_FaceSurface

# Register StepShape_FaceSurface in _StepShape:
_StepShape.StepShape_FaceSurface_swigregister(StepShape_FaceSurface)

class StepShape_FacetedBrep(StepShape_ManifoldSolidBrep):
    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 facetedbrep.

        Returns
        -------
        None

        """
        _StepShape.StepShape_FacetedBrep_swiginit(self, _StepShape.new_StepShape_FacetedBrep(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_FacetedBrep

# Register StepShape_FacetedBrep in _StepShape:
_StepShape.StepShape_FacetedBrep_swigregister(StepShape_FacetedBrep)

class StepShape_FacetedBrepAndBrepWithVoids(StepShape_ManifoldSolidBrep):
    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 facetedbrepandbrepwithvoids.

        Returns
        -------
        None

        """
        _StepShape.StepShape_FacetedBrepAndBrepWithVoids_swiginit(self, _StepShape.new_StepShape_FacetedBrepAndBrepWithVoids(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_BrepWithVoids>

        """
        return _StepShape.StepShape_FacetedBrepAndBrepWithVoids_BrepWithVoids(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_FacetedBrep>

        """
        return _StepShape.StepShape_FacetedBrepAndBrepWithVoids_FacetedBrep(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aOuter: StepShape_ClosedShell
        aFacetedBrep: StepShape_FacetedBrep
        aBrepWithVoids: StepShape_BrepWithVoids

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aOuter: StepShape_ClosedShell
        aVoids: StepShape_HArray1OfOrientedClosedShell

        Returns
        -------
        None

        """
        return _StepShape.StepShape_FacetedBrepAndBrepWithVoids_Init(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_FacetedBrepAndBrepWithVoids_NbVoids(self, *args)

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

        Parameters
        ----------
        aBrepWithVoids: StepShape_BrepWithVoids

        Returns
        -------
        None

        """
        return _StepShape.StepShape_FacetedBrepAndBrepWithVoids_SetBrepWithVoids(self, *args)

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

        Parameters
        ----------
        aFacetedBrep: StepShape_FacetedBrep

        Returns
        -------
        None

        """
        return _StepShape.StepShape_FacetedBrepAndBrepWithVoids_SetFacetedBrep(self, *args)

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

        Parameters
        ----------
        aVoids: StepShape_HArray1OfOrientedClosedShell

        Returns
        -------
        None

        """
        return _StepShape.StepShape_FacetedBrepAndBrepWithVoids_SetVoids(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_HArray1OfOrientedClosedShell>

        """
        return _StepShape.StepShape_FacetedBrepAndBrepWithVoids_Voids(self, *args)

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

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

        Returns
        -------
        opencascade::handle<StepShape_OrientedClosedShell>

        """
        return _StepShape.StepShape_FacetedBrepAndBrepWithVoids_VoidsValue(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_FacetedBrepAndBrepWithVoids

# Register StepShape_FacetedBrepAndBrepWithVoids in _StepShape:
_StepShape.StepShape_FacetedBrepAndBrepWithVoids_swigregister(StepShape_FacetedBrepAndBrepWithVoids)

class StepShape_OpenShell(StepShape_ConnectedFaceSet):
    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 openshell.

        Returns
        -------
        None

        """
        _StepShape.StepShape_OpenShell_swiginit(self, _StepShape.new_StepShape_OpenShell(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_OpenShell

# Register StepShape_OpenShell in _StepShape:
_StepShape.StepShape_OpenShell_swigregister(StepShape_OpenShell)

class StepShape_OrientedEdge(StepShape_Edge):
    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 orientededge.

        Returns
        -------
        None

        """
        _StepShape.StepShape_OrientedEdge_swiginit(self, _StepShape.new_StepShape_OrientedEdge(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_Edge>

        """
        return _StepShape.StepShape_OrientedEdge_EdgeElement(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aEdgeElement: StepShape_Edge
        aOrientation: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedEdge_Init(self, *args)

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

        Returns
        -------
        bool

        """
        return _StepShape.StepShape_OrientedEdge_Orientation(self, *args)

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

        Parameters
        ----------
        aEdgeElement: StepShape_Edge

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedEdge_SetEdgeElement(self, *args)

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

        Parameters
        ----------
        aOrientation: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedEdge_SetOrientation(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_OrientedEdge

# Register StepShape_OrientedEdge in _StepShape:
_StepShape.StepShape_OrientedEdge_swigregister(StepShape_OrientedEdge)

class StepShape_OrientedFace(StepShape_Face):
    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 orientedface.

        Returns
        -------
        None

        """
        _StepShape.StepShape_OrientedFace_swiginit(self, _StepShape.new_StepShape_OrientedFace(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_Face>

        """
        return _StepShape.StepShape_OrientedFace_FaceElement(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aFaceElement: StepShape_Face
        aOrientation: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedFace_Init(self, *args)

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

        Returns
        -------
        bool

        """
        return _StepShape.StepShape_OrientedFace_Orientation(self, *args)

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

        Parameters
        ----------
        aFaceElement: StepShape_Face

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedFace_SetFaceElement(self, *args)

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

        Parameters
        ----------
        aOrientation: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedFace_SetOrientation(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_OrientedFace

# Register StepShape_OrientedFace in _StepShape:
_StepShape.StepShape_OrientedFace_swigregister(StepShape_OrientedFace)

class StepShape_OrientedPath(StepShape_Path):
    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 orientedpath.

        Returns
        -------
        None

        """
        _StepShape.StepShape_OrientedPath_swiginit(self, _StepShape.new_StepShape_OrientedPath(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPathElement: StepShape_EdgeLoop
        aOrientation: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedPath_Init(self, *args)

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

        Returns
        -------
        bool

        """
        return _StepShape.StepShape_OrientedPath_Orientation(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_EdgeLoop>

        """
        return _StepShape.StepShape_OrientedPath_PathElement(self, *args)

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

        Parameters
        ----------
        aOrientation: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedPath_SetOrientation(self, *args)

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

        Parameters
        ----------
        aPathElement: StepShape_EdgeLoop

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedPath_SetPathElement(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_OrientedPath

# Register StepShape_OrientedPath in _StepShape:
_StepShape.StepShape_OrientedPath_swigregister(StepShape_OrientedPath)

class StepShape_PolyLoop(StepShape_Loop):
    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 polyloop.

        Returns
        -------
        None

        """
        _StepShape.StepShape_PolyLoop_swiginit(self, _StepShape.new_StepShape_PolyLoop(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aPolygon: StepGeom_HArray1OfCartesianPoint

        Returns
        -------
        None

        """
        return _StepShape.StepShape_PolyLoop_Init(self, *args)

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

        Returns
        -------
        int

        """
        return _StepShape.StepShape_PolyLoop_NbPolygon(self, *args)

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

        Returns
        -------
        opencascade::handle<StepGeom_HArray1OfCartesianPoint>

        """
        return _StepShape.StepShape_PolyLoop_Polygon(self, *args)

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

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

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

        """
        return _StepShape.StepShape_PolyLoop_PolygonValue(self, *args)

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

        Parameters
        ----------
        aPolygon: StepGeom_HArray1OfCartesianPoint

        Returns
        -------
        None

        """
        return _StepShape.StepShape_PolyLoop_SetPolygon(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_PolyLoop

# Register StepShape_PolyLoop in _StepShape:
_StepShape.StepShape_PolyLoop_swigregister(StepShape_PolyLoop)

class StepShape_RevolvedAreaSolid(StepShape_SweptAreaSolid):
    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 revolvedareasolid.

        Returns
        -------
        None

        """
        _StepShape.StepShape_RevolvedAreaSolid_swiginit(self, _StepShape.new_StepShape_RevolvedAreaSolid(*args))

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_RevolvedAreaSolid_Angle(self, *args)

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

        Returns
        -------
        opencascade::handle<StepGeom_Axis1Placement>

        """
        return _StepShape.StepShape_RevolvedAreaSolid_Axis(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSweptArea: StepGeom_CurveBoundedSurface
        aAxis: StepGeom_Axis1Placement
        aAngle: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RevolvedAreaSolid_Init(self, *args)

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

        Parameters
        ----------
        aAngle: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RevolvedAreaSolid_SetAngle(self, *args)

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

        Parameters
        ----------
        aAxis: StepGeom_Axis1Placement

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RevolvedAreaSolid_SetAxis(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_RevolvedAreaSolid

# Register StepShape_RevolvedAreaSolid in _StepShape:
_StepShape.StepShape_RevolvedAreaSolid_swigregister(StepShape_RevolvedAreaSolid)

class StepShape_RevolvedFaceSolid(StepShape_SweptFaceSolid):
    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 revolvedfacesolid.

        Returns
        -------
        None

        """
        _StepShape.StepShape_RevolvedFaceSolid_swiginit(self, _StepShape.new_StepShape_RevolvedFaceSolid(*args))

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

        Returns
        -------
        float

        """
        return _StepShape.StepShape_RevolvedFaceSolid_Angle(self, *args)

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

        Returns
        -------
        opencascade::handle<StepGeom_Axis1Placement>

        """
        return _StepShape.StepShape_RevolvedFaceSolid_Axis(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSweptArea: StepShape_FaceSurface

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aSweptArea: StepShape_FaceSurface
        aAxis: StepGeom_Axis1Placement
        aAngle: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RevolvedFaceSolid_Init(self, *args)

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

        Parameters
        ----------
        aAngle: float

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RevolvedFaceSolid_SetAngle(self, *args)

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

        Parameters
        ----------
        aAxis: StepGeom_Axis1Placement

        Returns
        -------
        None

        """
        return _StepShape.StepShape_RevolvedFaceSolid_SetAxis(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_RevolvedFaceSolid

# Register StepShape_RevolvedFaceSolid in _StepShape:
_StepShape.StepShape_RevolvedFaceSolid_swigregister(StepShape_RevolvedFaceSolid)

class StepShape_Subedge(StepShape_Edge):
    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

        """
        _StepShape.StepShape_Subedge_swiginit(self, _StepShape.new_StepShape_Subedge(*args))

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aRepresentationItem_Name: TCollection_HAsciiString
        aEdge_EdgeStart: StepShape_Vertex
        aEdge_EdgeEnd: StepShape_Vertex
        aParentEdge: StepShape_Edge

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Subedge_Init(self, *args)

    def ParentEdge(self, *args) -> "opencascade::handle< StepShape_Edge >":
        r"""
        Returns field parentedge.

        Returns
        -------
        opencascade::handle<StepShape_Edge>

        """
        return _StepShape.StepShape_Subedge_ParentEdge(self, *args)

    def SetParentEdge(self, *args) -> "void":
        r"""
        Set field parentedge.

        Parameters
        ----------
        ParentEdge: StepShape_Edge

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Subedge_SetParentEdge(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_Subedge

# Register StepShape_Subedge in _StepShape:
_StepShape.StepShape_Subedge_swigregister(StepShape_Subedge)

class StepShape_Subface(StepShape_Face):
    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

        """
        _StepShape.StepShape_Subface_swiginit(self, _StepShape.new_StepShape_Subface(*args))

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aRepresentationItem_Name: TCollection_HAsciiString
        aFace_Bounds: StepShape_HArray1OfFaceBound
        aParentFace: StepShape_Face

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Subface_Init(self, *args)

    def ParentFace(self, *args) -> "opencascade::handle< StepShape_Face >":
        r"""
        Returns field parentface.

        Returns
        -------
        opencascade::handle<StepShape_Face>

        """
        return _StepShape.StepShape_Subface_ParentFace(self, *args)

    def SetParentFace(self, *args) -> "void":
        r"""
        Set field parentface.

        Parameters
        ----------
        ParentFace: StepShape_Face

        Returns
        -------
        None

        """
        return _StepShape.StepShape_Subface_SetParentFace(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_Subface

# Register StepShape_Subface in _StepShape:
_StepShape.StepShape_Subface_swigregister(StepShape_Subface)

class StepShape_VertexLoop(StepShape_Loop):
    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 vertexloop.

        Returns
        -------
        None

        """
        _StepShape.StepShape_VertexLoop_swiginit(self, _StepShape.new_StepShape_VertexLoop(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aLoopVertex: StepShape_Vertex

        Returns
        -------
        None

        """
        return _StepShape.StepShape_VertexLoop_Init(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_Vertex>

        """
        return _StepShape.StepShape_VertexLoop_LoopVertex(self, *args)

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

        Parameters
        ----------
        aLoopVertex: StepShape_Vertex

        Returns
        -------
        None

        """
        return _StepShape.StepShape_VertexLoop_SetLoopVertex(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_VertexLoop

# Register StepShape_VertexLoop in _StepShape:
_StepShape.StepShape_VertexLoop_swigregister(StepShape_VertexLoop)

class StepShape_VertexPoint(StepShape_Vertex):
    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 vertexpoint.

        Returns
        -------
        None

        """
        _StepShape.StepShape_VertexPoint_swiginit(self, _StepShape.new_StepShape_VertexPoint(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aVertexGeometry: StepGeom_Point

        Returns
        -------
        None

        """
        return _StepShape.StepShape_VertexPoint_Init(self, *args)

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

        Parameters
        ----------
        aVertexGeometry: StepGeom_Point

        Returns
        -------
        None

        """
        return _StepShape.StepShape_VertexPoint_SetVertexGeometry(self, *args)

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

        Returns
        -------
        opencascade::handle<StepGeom_Point>

        """
        return _StepShape.StepShape_VertexPoint_VertexGeometry(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_VertexPoint

# Register StepShape_VertexPoint in _StepShape:
_StepShape.StepShape_VertexPoint_swigregister(StepShape_VertexPoint)

class StepShape_AdvancedFace(StepShape_FaceSurface):
    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 advancedface.

        Returns
        -------
        None

        """
        _StepShape.StepShape_AdvancedFace_swiginit(self, _StepShape.new_StepShape_AdvancedFace(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_AdvancedFace

# Register StepShape_AdvancedFace in _StepShape:
_StepShape.StepShape_AdvancedFace_swigregister(StepShape_AdvancedFace)

class StepShape_OrientedClosedShell(StepShape_ClosedShell):
    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 orientedclosedshell.

        Returns
        -------
        None

        """
        _StepShape.StepShape_OrientedClosedShell_swiginit(self, _StepShape.new_StepShape_OrientedClosedShell(*args))

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

        Returns
        -------
        opencascade::handle<StepShape_ClosedShell>

        """
        return _StepShape.StepShape_OrientedClosedShell_ClosedShellElement(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aClosedShellElement: StepShape_ClosedShell
        aOrientation: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedClosedShell_Init(self, *args)

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

        Returns
        -------
        bool

        """
        return _StepShape.StepShape_OrientedClosedShell_Orientation(self, *args)

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

        Parameters
        ----------
        aClosedShellElement: StepShape_ClosedShell

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedClosedShell_SetClosedShellElement(self, *args)

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

        Parameters
        ----------
        aOrientation: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedClosedShell_SetOrientation(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_OrientedClosedShell

# Register StepShape_OrientedClosedShell in _StepShape:
_StepShape.StepShape_OrientedClosedShell_swigregister(StepShape_OrientedClosedShell)

class StepShape_OrientedOpenShell(StepShape_OpenShell):
    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 orientedopenshell.

        Returns
        -------
        None

        """
        _StepShape.StepShape_OrientedOpenShell_swiginit(self, _StepShape.new_StepShape_OrientedOpenShell(*args))

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aOpenShellElement: StepShape_OpenShell
        aOrientation: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedOpenShell_Init(self, *args)

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

        Returns
        -------
        opencascade::handle<StepShape_OpenShell>

        """
        return _StepShape.StepShape_OrientedOpenShell_OpenShellElement(self, *args)

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

        Returns
        -------
        bool

        """
        return _StepShape.StepShape_OrientedOpenShell_Orientation(self, *args)

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

        Parameters
        ----------
        aOpenShellElement: StepShape_OpenShell

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedOpenShell_SetOpenShellElement(self, *args)

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

        Parameters
        ----------
        aOrientation: bool

        Returns
        -------
        None

        """
        return _StepShape.StepShape_OrientedOpenShell_SetOrientation(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_OrientedOpenShell

# Register StepShape_OrientedOpenShell in _StepShape:
_StepShape.StepShape_OrientedOpenShell_swigregister(StepShape_OrientedOpenShell)

class StepShape_SeamEdge(StepShape_OrientedEdge):
    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

        """
        _StepShape.StepShape_SeamEdge_swiginit(self, _StepShape.new_StepShape_SeamEdge(*args))

    def Init(self, *args) -> "void":
        r"""
        Initialize all fields (own and inherited).

        Parameters
        ----------
        aRepresentationItem_Name: TCollection_HAsciiString
        aOrientedEdge_EdgeElement: StepShape_Edge
        aOrientedEdge_Orientation: bool
        aPcurveReference: StepGeom_Pcurve

        Returns
        -------
        None

        """
        return _StepShape.StepShape_SeamEdge_Init(self, *args)

    def PcurveReference(self, *args) -> "opencascade::handle< StepGeom_Pcurve >":
        r"""
        Returns field pcurvereference.

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

        """
        return _StepShape.StepShape_SeamEdge_PcurveReference(self, *args)

    def SetPcurveReference(self, *args) -> "void":
        r"""
        Set field pcurvereference.

        Parameters
        ----------
        PcurveReference: StepGeom_Pcurve

        Returns
        -------
        None

        """
        return _StepShape.StepShape_SeamEdge_SetPcurveReference(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepShape.delete_StepShape_SeamEdge

# Register StepShape_SeamEdge in _StepShape:
_StepShape.StepShape_SeamEdge_swigregister(StepShape_SeamEdge)

class StepShape_HArray1OfConnectedEdgeSet(StepShape_Array1OfConnectedEdgeSet, 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):
        _StepShape.StepShape_HArray1OfConnectedEdgeSet_swiginit(self, _StepShape.new_StepShape_HArray1OfConnectedEdgeSet(*args))

    def Array1(self) -> "StepShape_Array1OfConnectedEdgeSet const &":
        return _StepShape.StepShape_HArray1OfConnectedEdgeSet_Array1(self)

    def ChangeArray1(self) -> "StepShape_Array1OfConnectedEdgeSet &":
        return _StepShape.StepShape_HArray1OfConnectedEdgeSet_ChangeArray1(self)


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

    __swig_destroy__ = _StepShape.delete_StepShape_HArray1OfConnectedEdgeSet

# Register StepShape_HArray1OfConnectedEdgeSet in _StepShape:
_StepShape.StepShape_HArray1OfConnectedEdgeSet_swigregister(StepShape_HArray1OfConnectedEdgeSet)

class StepShape_HArray1OfFaceBound(StepShape_Array1OfFaceBound, 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):
        _StepShape.StepShape_HArray1OfFaceBound_swiginit(self, _StepShape.new_StepShape_HArray1OfFaceBound(*args))

    def Array1(self) -> "StepShape_Array1OfFaceBound const &":
        return _StepShape.StepShape_HArray1OfFaceBound_Array1(self)

    def ChangeArray1(self) -> "StepShape_Array1OfFaceBound &":
        return _StepShape.StepShape_HArray1OfFaceBound_ChangeArray1(self)


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

    __swig_destroy__ = _StepShape.delete_StepShape_HArray1OfFaceBound

# Register StepShape_HArray1OfFaceBound in _StepShape:
_StepShape.StepShape_HArray1OfFaceBound_swigregister(StepShape_HArray1OfFaceBound)

class StepShape_HArray1OfGeometricSetSelect(StepShape_Array1OfGeometricSetSelect, 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):
        _StepShape.StepShape_HArray1OfGeometricSetSelect_swiginit(self, _StepShape.new_StepShape_HArray1OfGeometricSetSelect(*args))

    def Array1(self) -> "StepShape_Array1OfGeometricSetSelect const &":
        return _StepShape.StepShape_HArray1OfGeometricSetSelect_Array1(self)

    def ChangeArray1(self) -> "StepShape_Array1OfGeometricSetSelect &":
        return _StepShape.StepShape_HArray1OfGeometricSetSelect_ChangeArray1(self)


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

    __swig_destroy__ = _StepShape.delete_StepShape_HArray1OfGeometricSetSelect

# Register StepShape_HArray1OfGeometricSetSelect in _StepShape:
_StepShape.StepShape_HArray1OfGeometricSetSelect_swigregister(StepShape_HArray1OfGeometricSetSelect)

class StepShape_HArray1OfConnectedFaceSet(StepShape_Array1OfConnectedFaceSet, 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):
        _StepShape.StepShape_HArray1OfConnectedFaceSet_swiginit(self, _StepShape.new_StepShape_HArray1OfConnectedFaceSet(*args))

    def Array1(self) -> "StepShape_Array1OfConnectedFaceSet const &":
        return _StepShape.StepShape_HArray1OfConnectedFaceSet_Array1(self)

    def ChangeArray1(self) -> "StepShape_Array1OfConnectedFaceSet &":
        return _StepShape.StepShape_HArray1OfConnectedFaceSet_ChangeArray1(self)


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

    __swig_destroy__ = _StepShape.delete_StepShape_HArray1OfConnectedFaceSet

# Register StepShape_HArray1OfConnectedFaceSet in _StepShape:
_StepShape.StepShape_HArray1OfConnectedFaceSet_swigregister(StepShape_HArray1OfConnectedFaceSet)

class StepShape_HArray1OfEdge(StepShape_Array1OfEdge, 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):
        _StepShape.StepShape_HArray1OfEdge_swiginit(self, _StepShape.new_StepShape_HArray1OfEdge(*args))

    def Array1(self) -> "StepShape_Array1OfEdge const &":
        return _StepShape.StepShape_HArray1OfEdge_Array1(self)

    def ChangeArray1(self) -> "StepShape_Array1OfEdge &":
        return _StepShape.StepShape_HArray1OfEdge_ChangeArray1(self)


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

    __swig_destroy__ = _StepShape.delete_StepShape_HArray1OfEdge

# Register StepShape_HArray1OfEdge in _StepShape:
_StepShape.StepShape_HArray1OfEdge_swigregister(StepShape_HArray1OfEdge)

class StepShape_HArray1OfFace(StepShape_Array1OfFace, 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):
        _StepShape.StepShape_HArray1OfFace_swiginit(self, _StepShape.new_StepShape_HArray1OfFace(*args))

    def Array1(self) -> "StepShape_Array1OfFace const &":
        return _StepShape.StepShape_HArray1OfFace_Array1(self)

    def ChangeArray1(self) -> "StepShape_Array1OfFace &":
        return _StepShape.StepShape_HArray1OfFace_ChangeArray1(self)


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

    __swig_destroy__ = _StepShape.delete_StepShape_HArray1OfFace

# Register StepShape_HArray1OfFace in _StepShape:
_StepShape.StepShape_HArray1OfFace_swigregister(StepShape_HArray1OfFace)

class StepShape_HArray1OfShapeDimensionRepresentationItem(StepShape_Array1OfShapeDimensionRepresentationItem, 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):
        _StepShape.StepShape_HArray1OfShapeDimensionRepresentationItem_swiginit(self, _StepShape.new_StepShape_HArray1OfShapeDimensionRepresentationItem(*args))

    def Array1(self) -> "StepShape_Array1OfShapeDimensionRepresentationItem const &":
        return _StepShape.StepShape_HArray1OfShapeDimensionRepresentationItem_Array1(self)

    def ChangeArray1(self) -> "StepShape_Array1OfShapeDimensionRepresentationItem &":
        return _StepShape.StepShape_HArray1OfShapeDimensionRepresentationItem_ChangeArray1(self)


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

    __swig_destroy__ = _StepShape.delete_StepShape_HArray1OfShapeDimensionRepresentationItem

# Register StepShape_HArray1OfShapeDimensionRepresentationItem in _StepShape:
_StepShape.StepShape_HArray1OfShapeDimensionRepresentationItem_swigregister(StepShape_HArray1OfShapeDimensionRepresentationItem)

class StepShape_HArray1OfValueQualifier(StepShape_Array1OfValueQualifier, 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):
        _StepShape.StepShape_HArray1OfValueQualifier_swiginit(self, _StepShape.new_StepShape_HArray1OfValueQualifier(*args))

    def Array1(self) -> "StepShape_Array1OfValueQualifier const &":
        return _StepShape.StepShape_HArray1OfValueQualifier_Array1(self)

    def ChangeArray1(self) -> "StepShape_Array1OfValueQualifier &":
        return _StepShape.StepShape_HArray1OfValueQualifier_ChangeArray1(self)


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

    __swig_destroy__ = _StepShape.delete_StepShape_HArray1OfValueQualifier

# Register StepShape_HArray1OfValueQualifier in _StepShape:
_StepShape.StepShape_HArray1OfValueQualifier_swigregister(StepShape_HArray1OfValueQualifier)

class StepShape_HArray1OfShell(StepShape_Array1OfShell, 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):
        _StepShape.StepShape_HArray1OfShell_swiginit(self, _StepShape.new_StepShape_HArray1OfShell(*args))

    def Array1(self) -> "StepShape_Array1OfShell const &":
        return _StepShape.StepShape_HArray1OfShell_Array1(self)

    def ChangeArray1(self) -> "StepShape_Array1OfShell &":
        return _StepShape.StepShape_HArray1OfShell_ChangeArray1(self)


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

    __swig_destroy__ = _StepShape.delete_StepShape_HArray1OfShell

# Register StepShape_HArray1OfShell in _StepShape:
_StepShape.StepShape_HArray1OfShell_swigregister(StepShape_HArray1OfShell)

class StepShape_HArray1OfOrientedClosedShell(StepShape_Array1OfOrientedClosedShell, 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):
        _StepShape.StepShape_HArray1OfOrientedClosedShell_swiginit(self, _StepShape.new_StepShape_HArray1OfOrientedClosedShell(*args))

    def Array1(self) -> "StepShape_Array1OfOrientedClosedShell const &":
        return _StepShape.StepShape_HArray1OfOrientedClosedShell_Array1(self)

    def ChangeArray1(self) -> "StepShape_Array1OfOrientedClosedShell &":
        return _StepShape.StepShape_HArray1OfOrientedClosedShell_ChangeArray1(self)


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

    __swig_destroy__ = _StepShape.delete_StepShape_HArray1OfOrientedClosedShell

# Register StepShape_HArray1OfOrientedClosedShell in _StepShape:
_StepShape.StepShape_HArray1OfOrientedClosedShell_swigregister(StepShape_HArray1OfOrientedClosedShell)

class StepShape_HArray1OfOrientedEdge(StepShape_Array1OfOrientedEdge, 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):
        _StepShape.StepShape_HArray1OfOrientedEdge_swiginit(self, _StepShape.new_StepShape_HArray1OfOrientedEdge(*args))

    def Array1(self) -> "StepShape_Array1OfOrientedEdge const &":
        return _StepShape.StepShape_HArray1OfOrientedEdge_Array1(self)

    def ChangeArray1(self) -> "StepShape_Array1OfOrientedEdge &":
        return _StepShape.StepShape_HArray1OfOrientedEdge_ChangeArray1(self)


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

    __swig_destroy__ = _StepShape.delete_StepShape_HArray1OfOrientedEdge

# Register StepShape_HArray1OfOrientedEdge in _StepShape:
_StepShape.StepShape_HArray1OfOrientedEdge_swigregister(StepShape_HArray1OfOrientedEdge)





