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

"""
StepElement module, see official documentation at
https://www.opencascade.com/doc/occt-7.7.0/refman/html/package_stepelement.html
"""

from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _StepElement
else:
    import _StepElement

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

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


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


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


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


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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    def __sub__(self, *args):
        return _StepElement.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

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

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


def process_exception(error, method_name, class_name):
    return _StepElement.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.TCollection
import OCC.Core.StepRepr
import OCC.Core.StepData
import OCC.Core.Interface
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.StepBasic

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

StepElement_ElementEdge = _StepElement.StepElement_ElementEdge
StepElement_Quadrilateral = _StepElement.StepElement_Quadrilateral
StepElement_Triangle = _StepElement.StepElement_Triangle
StepElement_Linear = _StepElement.StepElement_Linear
StepElement_Quadratic = _StepElement.StepElement_Quadratic
StepElement_Cubic = _StepElement.StepElement_Cubic
StepElement_Volume = _StepElement.StepElement_Volume
StepElement_XTranslation = _StepElement.StepElement_XTranslation
StepElement_YTranslation = _StepElement.StepElement_YTranslation
StepElement_ZTranslation = _StepElement.StepElement_ZTranslation
StepElement_XRotation = _StepElement.StepElement_XRotation
StepElement_YRotation = _StepElement.StepElement_YRotation
StepElement_ZRotation = _StepElement.StepElement_ZRotation
StepElement_Warp = _StepElement.StepElement_Warp
StepElement_None = _StepElement.StepElement_None
StepElement_Axial = _StepElement.StepElement_Axial
StepElement_YYBending = _StepElement.StepElement_YYBending
StepElement_ZZBending = _StepElement.StepElement_ZZBending
StepElement_Torsion = _StepElement.StepElement_Torsion
StepElement_XYShear = _StepElement.StepElement_XYShear
StepElement_XZShear = _StepElement.StepElement_XZShear
StepElement_Warping = _StepElement.StepElement_Warping
StepElement_MembraneDirect = _StepElement.StepElement_MembraneDirect
StepElement_MembraneShear = _StepElement.StepElement_MembraneShear
StepElement_BendingDirect = _StepElement.StepElement_BendingDirect
StepElement_BendingTorsion = _StepElement.StepElement_BendingTorsion
StepElement_NormalToPlaneShear = _StepElement.StepElement_NormalToPlaneShear
StepElement_StressDisplacement = _StepElement.StepElement_StressDisplacement
StepElement_Unspecified = _StepElement.StepElement_Unspecified
StepElement_Hexahedron = _StepElement.StepElement_Hexahedron
StepElement_Wedge = _StepElement.StepElement_Wedge
StepElement_Tetrahedron = _StepElement.StepElement_Tetrahedron
StepElement_Pyramid = _StepElement.StepElement_Pyramid


class StepElement_CurveEdge(IntEnum):
	StepElement_ElementEdge = 0
StepElement_ElementEdge = StepElement_CurveEdge.StepElement_ElementEdge

class StepElement_Element2dShape(IntEnum):
	StepElement_Quadrilateral = 0
	StepElement_Triangle = 1
StepElement_Quadrilateral = StepElement_Element2dShape.StepElement_Quadrilateral
StepElement_Triangle = StepElement_Element2dShape.StepElement_Triangle

class StepElement_ElementOrder(IntEnum):
	StepElement_Linear = 0
	StepElement_Quadratic = 1
	StepElement_Cubic = 2
StepElement_Linear = StepElement_ElementOrder.StepElement_Linear
StepElement_Quadratic = StepElement_ElementOrder.StepElement_Quadratic
StepElement_Cubic = StepElement_ElementOrder.StepElement_Cubic

class StepElement_ElementVolume(IntEnum):
	StepElement_Volume = 0
StepElement_Volume = StepElement_ElementVolume.StepElement_Volume

class StepElement_EnumeratedCurveElementFreedom(IntEnum):
	StepElement_XTranslation = 0
	StepElement_YTranslation = 1
	StepElement_ZTranslation = 2
	StepElement_XRotation = 3
	StepElement_YRotation = 4
	StepElement_ZRotation = 5
	StepElement_Warp = 6
	StepElement_None = 7
StepElement_XTranslation = StepElement_EnumeratedCurveElementFreedom.StepElement_XTranslation
StepElement_YTranslation = StepElement_EnumeratedCurveElementFreedom.StepElement_YTranslation
StepElement_ZTranslation = StepElement_EnumeratedCurveElementFreedom.StepElement_ZTranslation
StepElement_XRotation = StepElement_EnumeratedCurveElementFreedom.StepElement_XRotation
StepElement_YRotation = StepElement_EnumeratedCurveElementFreedom.StepElement_YRotation
StepElement_ZRotation = StepElement_EnumeratedCurveElementFreedom.StepElement_ZRotation
StepElement_Warp = StepElement_EnumeratedCurveElementFreedom.StepElement_Warp
StepElement_None = StepElement_EnumeratedCurveElementFreedom.StepElement_None

class StepElement_EnumeratedCurveElementPurpose(IntEnum):
	StepElement_Axial = 0
	StepElement_YYBending = 1
	StepElement_ZZBending = 2
	StepElement_Torsion = 3
	StepElement_XYShear = 4
	StepElement_XZShear = 5
	StepElement_Warping = 6
StepElement_Axial = StepElement_EnumeratedCurveElementPurpose.StepElement_Axial
StepElement_YYBending = StepElement_EnumeratedCurveElementPurpose.StepElement_YYBending
StepElement_ZZBending = StepElement_EnumeratedCurveElementPurpose.StepElement_ZZBending
StepElement_Torsion = StepElement_EnumeratedCurveElementPurpose.StepElement_Torsion
StepElement_XYShear = StepElement_EnumeratedCurveElementPurpose.StepElement_XYShear
StepElement_XZShear = StepElement_EnumeratedCurveElementPurpose.StepElement_XZShear
StepElement_Warping = StepElement_EnumeratedCurveElementPurpose.StepElement_Warping

class StepElement_EnumeratedSurfaceElementPurpose(IntEnum):
	StepElement_MembraneDirect = 0
	StepElement_MembraneShear = 1
	StepElement_BendingDirect = 2
	StepElement_BendingTorsion = 3
	StepElement_NormalToPlaneShear = 4
StepElement_MembraneDirect = StepElement_EnumeratedSurfaceElementPurpose.StepElement_MembraneDirect
StepElement_MembraneShear = StepElement_EnumeratedSurfaceElementPurpose.StepElement_MembraneShear
StepElement_BendingDirect = StepElement_EnumeratedSurfaceElementPurpose.StepElement_BendingDirect
StepElement_BendingTorsion = StepElement_EnumeratedSurfaceElementPurpose.StepElement_BendingTorsion
StepElement_NormalToPlaneShear = StepElement_EnumeratedSurfaceElementPurpose.StepElement_NormalToPlaneShear

class StepElement_EnumeratedVolumeElementPurpose(IntEnum):
	StepElement_StressDisplacement = 0
StepElement_StressDisplacement = StepElement_EnumeratedVolumeElementPurpose.StepElement_StressDisplacement

class StepElement_UnspecifiedValue(IntEnum):
	StepElement_Unspecified = 0
StepElement_Unspecified = StepElement_UnspecifiedValue.StepElement_Unspecified

class StepElement_Volume3dElementShape(IntEnum):
	StepElement_Hexahedron = 0
	StepElement_Wedge = 1
	StepElement_Tetrahedron = 2
	StepElement_Pyramid = 3
StepElement_Hexahedron = StepElement_Volume3dElementShape.StepElement_Hexahedron
StepElement_Wedge = StepElement_Volume3dElementShape.StepElement_Wedge
StepElement_Tetrahedron = StepElement_Volume3dElementShape.StepElement_Tetrahedron
StepElement_Pyramid = StepElement_Volume3dElementShape.StepElement_Pyramid


def Handle_StepElement_AnalysisItemWithinRepresentation_Create():
    return _StepElement.Handle_StepElement_AnalysisItemWithinRepresentation_Create()

def Handle_StepElement_AnalysisItemWithinRepresentation_DownCast(t):
    return _StepElement.Handle_StepElement_AnalysisItemWithinRepresentation_DownCast(t)

def Handle_StepElement_AnalysisItemWithinRepresentation_IsNull(t):
    return _StepElement.Handle_StepElement_AnalysisItemWithinRepresentation_IsNull(t)

def Handle_StepElement_CurveElementEndReleasePacket_Create():
    return _StepElement.Handle_StepElement_CurveElementEndReleasePacket_Create()

def Handle_StepElement_CurveElementEndReleasePacket_DownCast(t):
    return _StepElement.Handle_StepElement_CurveElementEndReleasePacket_DownCast(t)

def Handle_StepElement_CurveElementEndReleasePacket_IsNull(t):
    return _StepElement.Handle_StepElement_CurveElementEndReleasePacket_IsNull(t)

def Handle_StepElement_CurveElementFreedomMember_Create():
    return _StepElement.Handle_StepElement_CurveElementFreedomMember_Create()

def Handle_StepElement_CurveElementFreedomMember_DownCast(t):
    return _StepElement.Handle_StepElement_CurveElementFreedomMember_DownCast(t)

def Handle_StepElement_CurveElementFreedomMember_IsNull(t):
    return _StepElement.Handle_StepElement_CurveElementFreedomMember_IsNull(t)

def Handle_StepElement_CurveElementPurposeMember_Create():
    return _StepElement.Handle_StepElement_CurveElementPurposeMember_Create()

def Handle_StepElement_CurveElementPurposeMember_DownCast(t):
    return _StepElement.Handle_StepElement_CurveElementPurposeMember_DownCast(t)

def Handle_StepElement_CurveElementPurposeMember_IsNull(t):
    return _StepElement.Handle_StepElement_CurveElementPurposeMember_IsNull(t)

def Handle_StepElement_CurveElementSectionDefinition_Create():
    return _StepElement.Handle_StepElement_CurveElementSectionDefinition_Create()

def Handle_StepElement_CurveElementSectionDefinition_DownCast(t):
    return _StepElement.Handle_StepElement_CurveElementSectionDefinition_DownCast(t)

def Handle_StepElement_CurveElementSectionDefinition_IsNull(t):
    return _StepElement.Handle_StepElement_CurveElementSectionDefinition_IsNull(t)

def Handle_StepElement_ElementAspectMember_Create():
    return _StepElement.Handle_StepElement_ElementAspectMember_Create()

def Handle_StepElement_ElementAspectMember_DownCast(t):
    return _StepElement.Handle_StepElement_ElementAspectMember_DownCast(t)

def Handle_StepElement_ElementAspectMember_IsNull(t):
    return _StepElement.Handle_StepElement_ElementAspectMember_IsNull(t)

def Handle_StepElement_ElementDescriptor_Create():
    return _StepElement.Handle_StepElement_ElementDescriptor_Create()

def Handle_StepElement_ElementDescriptor_DownCast(t):
    return _StepElement.Handle_StepElement_ElementDescriptor_DownCast(t)

def Handle_StepElement_ElementDescriptor_IsNull(t):
    return _StepElement.Handle_StepElement_ElementDescriptor_IsNull(t)

def Handle_StepElement_ElementMaterial_Create():
    return _StepElement.Handle_StepElement_ElementMaterial_Create()

def Handle_StepElement_ElementMaterial_DownCast(t):
    return _StepElement.Handle_StepElement_ElementMaterial_DownCast(t)

def Handle_StepElement_ElementMaterial_IsNull(t):
    return _StepElement.Handle_StepElement_ElementMaterial_IsNull(t)

def Handle_StepElement_MeasureOrUnspecifiedValueMember_Create():
    return _StepElement.Handle_StepElement_MeasureOrUnspecifiedValueMember_Create()

def Handle_StepElement_MeasureOrUnspecifiedValueMember_DownCast(t):
    return _StepElement.Handle_StepElement_MeasureOrUnspecifiedValueMember_DownCast(t)

def Handle_StepElement_MeasureOrUnspecifiedValueMember_IsNull(t):
    return _StepElement.Handle_StepElement_MeasureOrUnspecifiedValueMember_IsNull(t)

def Handle_StepElement_SurfaceElementProperty_Create():
    return _StepElement.Handle_StepElement_SurfaceElementProperty_Create()

def Handle_StepElement_SurfaceElementProperty_DownCast(t):
    return _StepElement.Handle_StepElement_SurfaceElementProperty_DownCast(t)

def Handle_StepElement_SurfaceElementProperty_IsNull(t):
    return _StepElement.Handle_StepElement_SurfaceElementProperty_IsNull(t)

def Handle_StepElement_SurfaceElementPurposeMember_Create():
    return _StepElement.Handle_StepElement_SurfaceElementPurposeMember_Create()

def Handle_StepElement_SurfaceElementPurposeMember_DownCast(t):
    return _StepElement.Handle_StepElement_SurfaceElementPurposeMember_DownCast(t)

def Handle_StepElement_SurfaceElementPurposeMember_IsNull(t):
    return _StepElement.Handle_StepElement_SurfaceElementPurposeMember_IsNull(t)

def Handle_StepElement_SurfaceSection_Create():
    return _StepElement.Handle_StepElement_SurfaceSection_Create()

def Handle_StepElement_SurfaceSection_DownCast(t):
    return _StepElement.Handle_StepElement_SurfaceSection_DownCast(t)

def Handle_StepElement_SurfaceSection_IsNull(t):
    return _StepElement.Handle_StepElement_SurfaceSection_IsNull(t)

def Handle_StepElement_SurfaceSectionField_Create():
    return _StepElement.Handle_StepElement_SurfaceSectionField_Create()

def Handle_StepElement_SurfaceSectionField_DownCast(t):
    return _StepElement.Handle_StepElement_SurfaceSectionField_DownCast(t)

def Handle_StepElement_SurfaceSectionField_IsNull(t):
    return _StepElement.Handle_StepElement_SurfaceSectionField_IsNull(t)

def Handle_StepElement_VolumeElementPurposeMember_Create():
    return _StepElement.Handle_StepElement_VolumeElementPurposeMember_Create()

def Handle_StepElement_VolumeElementPurposeMember_DownCast(t):
    return _StepElement.Handle_StepElement_VolumeElementPurposeMember_DownCast(t)

def Handle_StepElement_VolumeElementPurposeMember_IsNull(t):
    return _StepElement.Handle_StepElement_VolumeElementPurposeMember_IsNull(t)

def Handle_StepElement_Curve3dElementDescriptor_Create():
    return _StepElement.Handle_StepElement_Curve3dElementDescriptor_Create()

def Handle_StepElement_Curve3dElementDescriptor_DownCast(t):
    return _StepElement.Handle_StepElement_Curve3dElementDescriptor_DownCast(t)

def Handle_StepElement_Curve3dElementDescriptor_IsNull(t):
    return _StepElement.Handle_StepElement_Curve3dElementDescriptor_IsNull(t)

def Handle_StepElement_CurveElementSectionDerivedDefinitions_Create():
    return _StepElement.Handle_StepElement_CurveElementSectionDerivedDefinitions_Create()

def Handle_StepElement_CurveElementSectionDerivedDefinitions_DownCast(t):
    return _StepElement.Handle_StepElement_CurveElementSectionDerivedDefinitions_DownCast(t)

def Handle_StepElement_CurveElementSectionDerivedDefinitions_IsNull(t):
    return _StepElement.Handle_StepElement_CurveElementSectionDerivedDefinitions_IsNull(t)

def Handle_StepElement_Surface3dElementDescriptor_Create():
    return _StepElement.Handle_StepElement_Surface3dElementDescriptor_Create()

def Handle_StepElement_Surface3dElementDescriptor_DownCast(t):
    return _StepElement.Handle_StepElement_Surface3dElementDescriptor_DownCast(t)

def Handle_StepElement_Surface3dElementDescriptor_IsNull(t):
    return _StepElement.Handle_StepElement_Surface3dElementDescriptor_IsNull(t)

def Handle_StepElement_SurfaceSectionFieldConstant_Create():
    return _StepElement.Handle_StepElement_SurfaceSectionFieldConstant_Create()

def Handle_StepElement_SurfaceSectionFieldConstant_DownCast(t):
    return _StepElement.Handle_StepElement_SurfaceSectionFieldConstant_DownCast(t)

def Handle_StepElement_SurfaceSectionFieldConstant_IsNull(t):
    return _StepElement.Handle_StepElement_SurfaceSectionFieldConstant_IsNull(t)

def Handle_StepElement_SurfaceSectionFieldVarying_Create():
    return _StepElement.Handle_StepElement_SurfaceSectionFieldVarying_Create()

def Handle_StepElement_SurfaceSectionFieldVarying_DownCast(t):
    return _StepElement.Handle_StepElement_SurfaceSectionFieldVarying_DownCast(t)

def Handle_StepElement_SurfaceSectionFieldVarying_IsNull(t):
    return _StepElement.Handle_StepElement_SurfaceSectionFieldVarying_IsNull(t)

def Handle_StepElement_UniformSurfaceSection_Create():
    return _StepElement.Handle_StepElement_UniformSurfaceSection_Create()

def Handle_StepElement_UniformSurfaceSection_DownCast(t):
    return _StepElement.Handle_StepElement_UniformSurfaceSection_DownCast(t)

def Handle_StepElement_UniformSurfaceSection_IsNull(t):
    return _StepElement.Handle_StepElement_UniformSurfaceSection_IsNull(t)

def Handle_StepElement_Volume3dElementDescriptor_Create():
    return _StepElement.Handle_StepElement_Volume3dElementDescriptor_Create()

def Handle_StepElement_Volume3dElementDescriptor_DownCast(t):
    return _StepElement.Handle_StepElement_Volume3dElementDescriptor_DownCast(t)

def Handle_StepElement_Volume3dElementDescriptor_IsNull(t):
    return _StepElement.Handle_StepElement_Volume3dElementDescriptor_IsNull(t)

def Handle_StepElement_HArray1OfHSequenceOfCurveElementPurposeMember_Create():
    return _StepElement.Handle_StepElement_HArray1OfHSequenceOfCurveElementPurposeMember_Create()

def Handle_StepElement_HArray1OfHSequenceOfCurveElementPurposeMember_DownCast(t):
    return _StepElement.Handle_StepElement_HArray1OfHSequenceOfCurveElementPurposeMember_DownCast(t)

def Handle_StepElement_HArray1OfHSequenceOfCurveElementPurposeMember_IsNull(t):
    return _StepElement.Handle_StepElement_HArray1OfHSequenceOfCurveElementPurposeMember_IsNull(t)

def Handle_StepElement_HArray1OfSurfaceSection_Create():
    return _StepElement.Handle_StepElement_HArray1OfSurfaceSection_Create()

def Handle_StepElement_HArray1OfSurfaceSection_DownCast(t):
    return _StepElement.Handle_StepElement_HArray1OfSurfaceSection_DownCast(t)

def Handle_StepElement_HArray1OfSurfaceSection_IsNull(t):
    return _StepElement.Handle_StepElement_HArray1OfSurfaceSection_IsNull(t)

def Handle_StepElement_HArray1OfVolumeElementPurpose_Create():
    return _StepElement.Handle_StepElement_HArray1OfVolumeElementPurpose_Create()

def Handle_StepElement_HArray1OfVolumeElementPurpose_DownCast(t):
    return _StepElement.Handle_StepElement_HArray1OfVolumeElementPurpose_DownCast(t)

def Handle_StepElement_HArray1OfVolumeElementPurpose_IsNull(t):
    return _StepElement.Handle_StepElement_HArray1OfVolumeElementPurpose_IsNull(t)

def Handle_StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember_Create():
    return _StepElement.Handle_StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember_Create()

def Handle_StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember_DownCast(t):
    return _StepElement.Handle_StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember_DownCast(t)

def Handle_StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember_IsNull(t):
    return _StepElement.Handle_StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember_IsNull(t)

def Handle_StepElement_HArray1OfCurveElementSectionDefinition_Create():
    return _StepElement.Handle_StepElement_HArray1OfCurveElementSectionDefinition_Create()

def Handle_StepElement_HArray1OfCurveElementSectionDefinition_DownCast(t):
    return _StepElement.Handle_StepElement_HArray1OfCurveElementSectionDefinition_DownCast(t)

def Handle_StepElement_HArray1OfCurveElementSectionDefinition_IsNull(t):
    return _StepElement.Handle_StepElement_HArray1OfCurveElementSectionDefinition_IsNull(t)

def Handle_StepElement_HArray1OfMeasureOrUnspecifiedValue_Create():
    return _StepElement.Handle_StepElement_HArray1OfMeasureOrUnspecifiedValue_Create()

def Handle_StepElement_HArray1OfMeasureOrUnspecifiedValue_DownCast(t):
    return _StepElement.Handle_StepElement_HArray1OfMeasureOrUnspecifiedValue_DownCast(t)

def Handle_StepElement_HArray1OfMeasureOrUnspecifiedValue_IsNull(t):
    return _StepElement.Handle_StepElement_HArray1OfMeasureOrUnspecifiedValue_IsNull(t)

def Handle_StepElement_HArray1OfCurveElementEndReleasePacket_Create():
    return _StepElement.Handle_StepElement_HArray1OfCurveElementEndReleasePacket_Create()

def Handle_StepElement_HArray1OfCurveElementEndReleasePacket_DownCast(t):
    return _StepElement.Handle_StepElement_HArray1OfCurveElementEndReleasePacket_DownCast(t)

def Handle_StepElement_HArray1OfCurveElementEndReleasePacket_IsNull(t):
    return _StepElement.Handle_StepElement_HArray1OfCurveElementEndReleasePacket_IsNull(t)

def Handle_StepElement_HArray1OfVolumeElementPurposeMember_Create():
    return _StepElement.Handle_StepElement_HArray1OfVolumeElementPurposeMember_Create()

def Handle_StepElement_HArray1OfVolumeElementPurposeMember_DownCast(t):
    return _StepElement.Handle_StepElement_HArray1OfVolumeElementPurposeMember_DownCast(t)

def Handle_StepElement_HArray1OfVolumeElementPurposeMember_IsNull(t):
    return _StepElement.Handle_StepElement_HArray1OfVolumeElementPurposeMember_IsNull(t)

def Handle_StepElement_HArray2OfCurveElementPurposeMember_Create():
    return _StepElement.Handle_StepElement_HArray2OfCurveElementPurposeMember_Create()

def Handle_StepElement_HArray2OfCurveElementPurposeMember_DownCast(t):
    return _StepElement.Handle_StepElement_HArray2OfCurveElementPurposeMember_DownCast(t)

def Handle_StepElement_HArray2OfCurveElementPurposeMember_IsNull(t):
    return _StepElement.Handle_StepElement_HArray2OfCurveElementPurposeMember_IsNull(t)

def Handle_StepElement_HArray2OfSurfaceElementPurposeMember_Create():
    return _StepElement.Handle_StepElement_HArray2OfSurfaceElementPurposeMember_Create()

def Handle_StepElement_HArray2OfSurfaceElementPurposeMember_DownCast(t):
    return _StepElement.Handle_StepElement_HArray2OfSurfaceElementPurposeMember_DownCast(t)

def Handle_StepElement_HArray2OfSurfaceElementPurposeMember_IsNull(t):
    return _StepElement.Handle_StepElement_HArray2OfSurfaceElementPurposeMember_IsNull(t)

def Handle_StepElement_HArray2OfSurfaceElementPurpose_Create():
    return _StepElement.Handle_StepElement_HArray2OfSurfaceElementPurpose_Create()

def Handle_StepElement_HArray2OfSurfaceElementPurpose_DownCast(t):
    return _StepElement.Handle_StepElement_HArray2OfSurfaceElementPurpose_DownCast(t)

def Handle_StepElement_HArray2OfSurfaceElementPurpose_IsNull(t):
    return _StepElement.Handle_StepElement_HArray2OfSurfaceElementPurpose_IsNull(t)

def Handle_StepElement_HSequenceOfElementMaterial_Create():
    return _StepElement.Handle_StepElement_HSequenceOfElementMaterial_Create()

def Handle_StepElement_HSequenceOfElementMaterial_DownCast(t):
    return _StepElement.Handle_StepElement_HSequenceOfElementMaterial_DownCast(t)

def Handle_StepElement_HSequenceOfElementMaterial_IsNull(t):
    return _StepElement.Handle_StepElement_HSequenceOfElementMaterial_IsNull(t)

def Handle_StepElement_HSequenceOfCurveElementPurposeMember_Create():
    return _StepElement.Handle_StepElement_HSequenceOfCurveElementPurposeMember_Create()

def Handle_StepElement_HSequenceOfCurveElementPurposeMember_DownCast(t):
    return _StepElement.Handle_StepElement_HSequenceOfCurveElementPurposeMember_DownCast(t)

def Handle_StepElement_HSequenceOfCurveElementPurposeMember_IsNull(t):
    return _StepElement.Handle_StepElement_HSequenceOfCurveElementPurposeMember_IsNull(t)

def Handle_StepElement_HSequenceOfCurveElementSectionDefinition_Create():
    return _StepElement.Handle_StepElement_HSequenceOfCurveElementSectionDefinition_Create()

def Handle_StepElement_HSequenceOfCurveElementSectionDefinition_DownCast(t):
    return _StepElement.Handle_StepElement_HSequenceOfCurveElementSectionDefinition_DownCast(t)

def Handle_StepElement_HSequenceOfCurveElementSectionDefinition_IsNull(t):
    return _StepElement.Handle_StepElement_HSequenceOfCurveElementSectionDefinition_IsNull(t)

def Handle_StepElement_HSequenceOfSurfaceElementPurposeMember_Create():
    return _StepElement.Handle_StepElement_HSequenceOfSurfaceElementPurposeMember_Create()

def Handle_StepElement_HSequenceOfSurfaceElementPurposeMember_DownCast(t):
    return _StepElement.Handle_StepElement_HSequenceOfSurfaceElementPurposeMember_DownCast(t)

def Handle_StepElement_HSequenceOfSurfaceElementPurposeMember_IsNull(t):
    return _StepElement.Handle_StepElement_HSequenceOfSurfaceElementPurposeMember_IsNull(t)
class StepElement_Array1OfCurveElementEndReleasePacket(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_begin(self)

    def end(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_end(self)

    def cbegin(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_cbegin(self)

    def cend(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_cend(self)

    def __init__(self, *args):
        _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_swiginit(self, _StepElement.new_StepElement_Array1OfCurveElementEndReleasePacket(*args))

    def Init(self, theValue):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_Init(self, theValue)

    def Size(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_Size(self)

    def Length(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_Length(self)

    def IsEmpty(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_IsEmpty(self)

    def Lower(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_Lower(self)

    def Upper(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_Upper(self)

    def IsDeletable(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_IsDeletable(self)

    def IsAllocated(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_IsAllocated(self)

    def Assign(self, theOther):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_Assign(self, theOther)

    def Move(self, theOther):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_Move(self, theOther)

    def Set(self, *args):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_Set(self, *args)

    def First(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_First(self)

    def ChangeFirst(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_ChangeFirst(self)

    def Last(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_Last(self)

    def ChangeLast(self):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_ChangeLast(self)

    def Value(self, theIndex):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepElement.StepElement_Array1OfCurveElementEndReleasePacket_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepElement.delete_StepElement_Array1OfCurveElementEndReleasePacket

    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 StepElement_Array1OfCurveElementEndReleasePacket in _StepElement:
_StepElement.StepElement_Array1OfCurveElementEndReleasePacket_swigregister(StepElement_Array1OfCurveElementEndReleasePacket)
class StepElement_Array1OfCurveElementSectionDefinition(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_begin(self)

    def end(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_end(self)

    def cbegin(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_cbegin(self)

    def cend(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_cend(self)

    def __init__(self, *args):
        _StepElement.StepElement_Array1OfCurveElementSectionDefinition_swiginit(self, _StepElement.new_StepElement_Array1OfCurveElementSectionDefinition(*args))

    def Init(self, theValue):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_Init(self, theValue)

    def Size(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_Size(self)

    def Length(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_Length(self)

    def IsEmpty(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_IsEmpty(self)

    def Lower(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_Lower(self)

    def Upper(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_Upper(self)

    def IsDeletable(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_IsDeletable(self)

    def IsAllocated(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_IsAllocated(self)

    def Assign(self, theOther):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_Assign(self, theOther)

    def Move(self, theOther):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_Move(self, theOther)

    def Set(self, *args):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_Set(self, *args)

    def First(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_First(self)

    def ChangeFirst(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_ChangeFirst(self)

    def Last(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_Last(self)

    def ChangeLast(self):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_ChangeLast(self)

    def Value(self, theIndex):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepElement.StepElement_Array1OfCurveElementSectionDefinition_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepElement.delete_StepElement_Array1OfCurveElementSectionDefinition

    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 StepElement_Array1OfCurveElementSectionDefinition in _StepElement:
_StepElement.StepElement_Array1OfCurveElementSectionDefinition_swigregister(StepElement_Array1OfCurveElementSectionDefinition)
class StepElement_Array1OfHSequenceOfCurveElementPurposeMember(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_begin(self)

    def end(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_end(self)

    def cbegin(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_cbegin(self)

    def cend(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_cend(self)

    def __init__(self, *args):
        _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_swiginit(self, _StepElement.new_StepElement_Array1OfHSequenceOfCurveElementPurposeMember(*args))

    def Init(self, theValue):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_Init(self, theValue)

    def Size(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_Size(self)

    def Length(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_Length(self)

    def IsEmpty(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_IsEmpty(self)

    def Lower(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_Lower(self)

    def Upper(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_Upper(self)

    def IsDeletable(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_IsDeletable(self)

    def IsAllocated(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_IsAllocated(self)

    def Assign(self, theOther):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_Assign(self, theOther)

    def Move(self, theOther):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_Move(self, theOther)

    def Set(self, *args):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_Set(self, *args)

    def First(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_First(self)

    def ChangeFirst(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_ChangeFirst(self)

    def Last(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_Last(self)

    def ChangeLast(self):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_ChangeLast(self)

    def Value(self, theIndex):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepElement.delete_StepElement_Array1OfHSequenceOfCurveElementPurposeMember

    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 StepElement_Array1OfHSequenceOfCurveElementPurposeMember in _StepElement:
_StepElement.StepElement_Array1OfHSequenceOfCurveElementPurposeMember_swigregister(StepElement_Array1OfHSequenceOfCurveElementPurposeMember)
class StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_begin(self)

    def end(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_end(self)

    def cbegin(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_cbegin(self)

    def cend(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_cend(self)

    def __init__(self, *args):
        _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_swiginit(self, _StepElement.new_StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember(*args))

    def Init(self, theValue):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_Init(self, theValue)

    def Size(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_Size(self)

    def Length(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_Length(self)

    def IsEmpty(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_IsEmpty(self)

    def Lower(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_Lower(self)

    def Upper(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_Upper(self)

    def IsDeletable(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_IsDeletable(self)

    def IsAllocated(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_IsAllocated(self)

    def Assign(self, theOther):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_Assign(self, theOther)

    def Move(self, theOther):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_Move(self, theOther)

    def Set(self, *args):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_Set(self, *args)

    def First(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_First(self)

    def ChangeFirst(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_ChangeFirst(self)

    def Last(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_Last(self)

    def ChangeLast(self):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_ChangeLast(self)

    def Value(self, theIndex):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepElement.delete_StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember

    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 StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember in _StepElement:
_StepElement.StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember_swigregister(StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember)
class StepElement_Array1OfMeasureOrUnspecifiedValue(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_begin(self)

    def end(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_end(self)

    def cbegin(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_cbegin(self)

    def cend(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_cend(self)

    def __init__(self, *args):
        _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_swiginit(self, _StepElement.new_StepElement_Array1OfMeasureOrUnspecifiedValue(*args))

    def Init(self, theValue):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_Init(self, theValue)

    def Size(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_Size(self)

    def Length(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_Length(self)

    def IsEmpty(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_IsEmpty(self)

    def Lower(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_Lower(self)

    def Upper(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_Upper(self)

    def IsDeletable(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_IsDeletable(self)

    def IsAllocated(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_IsAllocated(self)

    def Assign(self, theOther):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_Assign(self, theOther)

    def Move(self, theOther):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_Move(self, theOther)

    def Set(self, *args):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_Set(self, *args)

    def First(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_First(self)

    def ChangeFirst(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_ChangeFirst(self)

    def Last(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_Last(self)

    def ChangeLast(self):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_ChangeLast(self)

    def Value(self, theIndex):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepElement.delete_StepElement_Array1OfMeasureOrUnspecifiedValue

    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 StepElement_Array1OfMeasureOrUnspecifiedValue in _StepElement:
_StepElement.StepElement_Array1OfMeasureOrUnspecifiedValue_swigregister(StepElement_Array1OfMeasureOrUnspecifiedValue)
class StepElement_Array1OfSurfaceSection(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_begin(self)

    def end(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_end(self)

    def cbegin(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_cbegin(self)

    def cend(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_cend(self)

    def __init__(self, *args):
        _StepElement.StepElement_Array1OfSurfaceSection_swiginit(self, _StepElement.new_StepElement_Array1OfSurfaceSection(*args))

    def Init(self, theValue):
        return _StepElement.StepElement_Array1OfSurfaceSection_Init(self, theValue)

    def Size(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_Size(self)

    def Length(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_Length(self)

    def IsEmpty(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_IsEmpty(self)

    def Lower(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_Lower(self)

    def Upper(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_Upper(self)

    def IsDeletable(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_IsDeletable(self)

    def IsAllocated(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_IsAllocated(self)

    def Assign(self, theOther):
        return _StepElement.StepElement_Array1OfSurfaceSection_Assign(self, theOther)

    def Move(self, theOther):
        return _StepElement.StepElement_Array1OfSurfaceSection_Move(self, theOther)

    def Set(self, *args):
        return _StepElement.StepElement_Array1OfSurfaceSection_Set(self, *args)

    def First(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_First(self)

    def ChangeFirst(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_ChangeFirst(self)

    def Last(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_Last(self)

    def ChangeLast(self):
        return _StepElement.StepElement_Array1OfSurfaceSection_ChangeLast(self)

    def Value(self, theIndex):
        return _StepElement.StepElement_Array1OfSurfaceSection_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepElement.StepElement_Array1OfSurfaceSection_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepElement.StepElement_Array1OfSurfaceSection___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepElement.StepElement_Array1OfSurfaceSection_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepElement.StepElement_Array1OfSurfaceSection_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepElement.delete_StepElement_Array1OfSurfaceSection

    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 StepElement_Array1OfSurfaceSection in _StepElement:
_StepElement.StepElement_Array1OfSurfaceSection_swigregister(StepElement_Array1OfSurfaceSection)
class StepElement_Array1OfVolumeElementPurpose(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_begin(self)

    def end(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_end(self)

    def cbegin(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_cbegin(self)

    def cend(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_cend(self)

    def __init__(self, *args):
        _StepElement.StepElement_Array1OfVolumeElementPurpose_swiginit(self, _StepElement.new_StepElement_Array1OfVolumeElementPurpose(*args))

    def Init(self, theValue):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_Init(self, theValue)

    def Size(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_Size(self)

    def Length(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_Length(self)

    def IsEmpty(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_IsEmpty(self)

    def Lower(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_Lower(self)

    def Upper(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_Upper(self)

    def IsDeletable(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_IsDeletable(self)

    def IsAllocated(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_IsAllocated(self)

    def Assign(self, theOther):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_Assign(self, theOther)

    def Move(self, theOther):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_Move(self, theOther)

    def Set(self, *args):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_Set(self, *args)

    def First(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_First(self)

    def ChangeFirst(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_ChangeFirst(self)

    def Last(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_Last(self)

    def ChangeLast(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_ChangeLast(self)

    def Value(self, theIndex):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepElement.StepElement_Array1OfVolumeElementPurpose_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepElement.delete_StepElement_Array1OfVolumeElementPurpose

    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 StepElement_Array1OfVolumeElementPurpose in _StepElement:
_StepElement.StepElement_Array1OfVolumeElementPurpose_swigregister(StepElement_Array1OfVolumeElementPurpose)
class StepElement_Array1OfVolumeElementPurposeMember(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_begin(self)

    def end(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_end(self)

    def cbegin(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_cbegin(self)

    def cend(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_cend(self)

    def __init__(self, *args):
        _StepElement.StepElement_Array1OfVolumeElementPurposeMember_swiginit(self, _StepElement.new_StepElement_Array1OfVolumeElementPurposeMember(*args))

    def Init(self, theValue):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_Init(self, theValue)

    def Size(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_Size(self)

    def Length(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_Length(self)

    def IsEmpty(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_IsEmpty(self)

    def Lower(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_Lower(self)

    def Upper(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_Upper(self)

    def IsDeletable(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_IsDeletable(self)

    def IsAllocated(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_IsAllocated(self)

    def Assign(self, theOther):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_Assign(self, theOther)

    def Move(self, theOther):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_Move(self, theOther)

    def Set(self, *args):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_Set(self, *args)

    def First(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_First(self)

    def ChangeFirst(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_ChangeFirst(self)

    def Last(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_Last(self)

    def ChangeLast(self):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_ChangeLast(self)

    def Value(self, theIndex):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_SetValue(self, theIndex, theItem)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _StepElement.StepElement_Array1OfVolumeElementPurposeMember_Resize(self, theLower, theUpper, theToCopyData)
    __swig_destroy__ = _StepElement.delete_StepElement_Array1OfVolumeElementPurposeMember

    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 StepElement_Array1OfVolumeElementPurposeMember in _StepElement:
_StepElement.StepElement_Array1OfVolumeElementPurposeMember_swigregister(StepElement_Array1OfVolumeElementPurposeMember)
class StepElement_Array2OfCurveElementPurposeMember(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):
        _StepElement.StepElement_Array2OfCurveElementPurposeMember_swiginit(self, _StepElement.new_StepElement_Array2OfCurveElementPurposeMember(*args))

    def Init(self, theValue):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_Init(self, theValue)

    def Size(self):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_Size(self)

    def Length(self):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_Length(self)

    def NbRows(self):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_NbRows(self)

    def NbColumns(self):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_NbColumns(self)

    def RowLength(self):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_RowLength(self)

    def ColLength(self):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_ColLength(self)

    def LowerRow(self):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_LowerRow(self)

    def UpperRow(self):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_UpperRow(self)

    def LowerCol(self):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_LowerCol(self)

    def UpperCol(self):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_UpperCol(self)

    def IsDeletable(self):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_IsDeletable(self)

    def Assign(self, theOther):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_Assign(self, theOther)

    def Move(self, theOther):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_Move(self, theOther)

    def Set(self, *args):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_Set(self, *args)

    def Value(self, theRow, theCol):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_Value(self, theRow, theCol)

    def ChangeValue(self, theRow, theCol):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_ChangeValue(self, theRow, theCol)

    def __call__(self, *args):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember___call__(self, *args)

    def SetValue(self, theRow, theCol, theItem):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_SetValue(self, theRow, theCol, theItem)

    def Resize(self, theRowLower, theRowUpper, theColLower, theColUpper, theToCopyData):
        return _StepElement.StepElement_Array2OfCurveElementPurposeMember_Resize(self, theRowLower, theRowUpper, theColLower, theColUpper, theToCopyData)
    __swig_destroy__ = _StepElement.delete_StepElement_Array2OfCurveElementPurposeMember

# Register StepElement_Array2OfCurveElementPurposeMember in _StepElement:
_StepElement.StepElement_Array2OfCurveElementPurposeMember_swigregister(StepElement_Array2OfCurveElementPurposeMember)
class StepElement_Array2OfSurfaceElementPurpose(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):
        _StepElement.StepElement_Array2OfSurfaceElementPurpose_swiginit(self, _StepElement.new_StepElement_Array2OfSurfaceElementPurpose(*args))

    def Init(self, theValue):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_Init(self, theValue)

    def Size(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_Size(self)

    def Length(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_Length(self)

    def NbRows(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_NbRows(self)

    def NbColumns(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_NbColumns(self)

    def RowLength(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_RowLength(self)

    def ColLength(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_ColLength(self)

    def LowerRow(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_LowerRow(self)

    def UpperRow(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_UpperRow(self)

    def LowerCol(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_LowerCol(self)

    def UpperCol(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_UpperCol(self)

    def IsDeletable(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_IsDeletable(self)

    def Assign(self, theOther):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_Assign(self, theOther)

    def Move(self, theOther):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_Move(self, theOther)

    def Set(self, *args):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_Set(self, *args)

    def Value(self, theRow, theCol):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_Value(self, theRow, theCol)

    def ChangeValue(self, theRow, theCol):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_ChangeValue(self, theRow, theCol)

    def __call__(self, *args):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose___call__(self, *args)

    def SetValue(self, theRow, theCol, theItem):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_SetValue(self, theRow, theCol, theItem)

    def Resize(self, theRowLower, theRowUpper, theColLower, theColUpper, theToCopyData):
        return _StepElement.StepElement_Array2OfSurfaceElementPurpose_Resize(self, theRowLower, theRowUpper, theColLower, theColUpper, theToCopyData)
    __swig_destroy__ = _StepElement.delete_StepElement_Array2OfSurfaceElementPurpose

# Register StepElement_Array2OfSurfaceElementPurpose in _StepElement:
_StepElement.StepElement_Array2OfSurfaceElementPurpose_swigregister(StepElement_Array2OfSurfaceElementPurpose)
class StepElement_Array2OfSurfaceElementPurposeMember(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):
        _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_swiginit(self, _StepElement.new_StepElement_Array2OfSurfaceElementPurposeMember(*args))

    def Init(self, theValue):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_Init(self, theValue)

    def Size(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_Size(self)

    def Length(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_Length(self)

    def NbRows(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_NbRows(self)

    def NbColumns(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_NbColumns(self)

    def RowLength(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_RowLength(self)

    def ColLength(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_ColLength(self)

    def LowerRow(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_LowerRow(self)

    def UpperRow(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_UpperRow(self)

    def LowerCol(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_LowerCol(self)

    def UpperCol(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_UpperCol(self)

    def IsDeletable(self):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_IsDeletable(self)

    def Assign(self, theOther):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_Assign(self, theOther)

    def Move(self, theOther):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_Move(self, theOther)

    def Set(self, *args):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_Set(self, *args)

    def Value(self, theRow, theCol):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_Value(self, theRow, theCol)

    def ChangeValue(self, theRow, theCol):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_ChangeValue(self, theRow, theCol)

    def __call__(self, *args):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember___call__(self, *args)

    def SetValue(self, theRow, theCol, theItem):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_SetValue(self, theRow, theCol, theItem)

    def Resize(self, theRowLower, theRowUpper, theColLower, theColUpper, theToCopyData):
        return _StepElement.StepElement_Array2OfSurfaceElementPurposeMember_Resize(self, theRowLower, theRowUpper, theColLower, theColUpper, theToCopyData)
    __swig_destroy__ = _StepElement.delete_StepElement_Array2OfSurfaceElementPurposeMember

# Register StepElement_Array2OfSurfaceElementPurposeMember in _StepElement:
_StepElement.StepElement_Array2OfSurfaceElementPurposeMember_swigregister(StepElement_Array2OfSurfaceElementPurposeMember)
class StepElement_SequenceOfCurveElementPurposeMember(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_begin(self)

    def end(self):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_end(self)

    def cbegin(self):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_cbegin(self)

    def cend(self):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_cend(self)

    def __init__(self, *args):
        _StepElement.StepElement_SequenceOfCurveElementPurposeMember_swiginit(self, _StepElement.new_StepElement_SequenceOfCurveElementPurposeMember(*args))

    def Size(self):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Size(self)

    def Length(self):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Length(self)

    def Lower(self):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Lower(self)

    def Upper(self):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Upper(self)

    def IsEmpty(self):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_IsEmpty(self)

    def Reverse(self):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Reverse(self)

    def Exchange(self, I, J):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Exchange(self, I, J)

    @staticmethod
    def delNode(theNode, theAl):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_delNode(theNode, theAl)

    def Clear(self, theAllocator=0):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Clear(self, theAllocator)

    def Assign(self, theOther):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Assign(self, theOther)

    def Set(self, theOther):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Set(self, theOther)

    def Remove(self, *args):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Remove(self, *args)

    def Append(self, *args):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Append(self, *args)

    def Prepend(self, *args):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Prepend(self, *args)

    def InsertBefore(self, *args):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_InsertAfter(self, *args)

    def Split(self, theIndex, theSeq):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Split(self, theIndex, theSeq)

    def First(self):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_First(self)

    def ChangeFirst(self):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_ChangeFirst(self)

    def Last(self):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Last(self)

    def ChangeLast(self):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_ChangeLast(self)

    def Value(self, theIndex):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepElement.StepElement_SequenceOfCurveElementPurposeMember_SetValue(self, theIndex, theItem)
    __swig_destroy__ = _StepElement.delete_StepElement_SequenceOfCurveElementPurposeMember

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


# Register StepElement_SequenceOfCurveElementPurposeMember in _StepElement:
_StepElement.StepElement_SequenceOfCurveElementPurposeMember_swigregister(StepElement_SequenceOfCurveElementPurposeMember)
class StepElement_SequenceOfCurveElementSectionDefinition(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_begin(self)

    def end(self):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_end(self)

    def cbegin(self):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_cbegin(self)

    def cend(self):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_cend(self)

    def __init__(self, *args):
        _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_swiginit(self, _StepElement.new_StepElement_SequenceOfCurveElementSectionDefinition(*args))

    def Size(self):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Size(self)

    def Length(self):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Length(self)

    def Lower(self):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Lower(self)

    def Upper(self):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Upper(self)

    def IsEmpty(self):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_IsEmpty(self)

    def Reverse(self):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Reverse(self)

    def Exchange(self, I, J):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Exchange(self, I, J)

    @staticmethod
    def delNode(theNode, theAl):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_delNode(theNode, theAl)

    def Clear(self, theAllocator=0):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Clear(self, theAllocator)

    def Assign(self, theOther):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Assign(self, theOther)

    def Set(self, theOther):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Set(self, theOther)

    def Remove(self, *args):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Remove(self, *args)

    def Append(self, *args):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Append(self, *args)

    def Prepend(self, *args):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Prepend(self, *args)

    def InsertBefore(self, *args):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_InsertAfter(self, *args)

    def Split(self, theIndex, theSeq):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Split(self, theIndex, theSeq)

    def First(self):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_First(self)

    def ChangeFirst(self):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_ChangeFirst(self)

    def Last(self):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Last(self)

    def ChangeLast(self):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_ChangeLast(self)

    def Value(self, theIndex):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepElement.StepElement_SequenceOfCurveElementSectionDefinition_SetValue(self, theIndex, theItem)
    __swig_destroy__ = _StepElement.delete_StepElement_SequenceOfCurveElementSectionDefinition

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


# Register StepElement_SequenceOfCurveElementSectionDefinition in _StepElement:
_StepElement.StepElement_SequenceOfCurveElementSectionDefinition_swigregister(StepElement_SequenceOfCurveElementSectionDefinition)
class StepElement_SequenceOfElementMaterial(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepElement.StepElement_SequenceOfElementMaterial_begin(self)

    def end(self):
        return _StepElement.StepElement_SequenceOfElementMaterial_end(self)

    def cbegin(self):
        return _StepElement.StepElement_SequenceOfElementMaterial_cbegin(self)

    def cend(self):
        return _StepElement.StepElement_SequenceOfElementMaterial_cend(self)

    def __init__(self, *args):
        _StepElement.StepElement_SequenceOfElementMaterial_swiginit(self, _StepElement.new_StepElement_SequenceOfElementMaterial(*args))

    def Size(self):
        return _StepElement.StepElement_SequenceOfElementMaterial_Size(self)

    def Length(self):
        return _StepElement.StepElement_SequenceOfElementMaterial_Length(self)

    def Lower(self):
        return _StepElement.StepElement_SequenceOfElementMaterial_Lower(self)

    def Upper(self):
        return _StepElement.StepElement_SequenceOfElementMaterial_Upper(self)

    def IsEmpty(self):
        return _StepElement.StepElement_SequenceOfElementMaterial_IsEmpty(self)

    def Reverse(self):
        return _StepElement.StepElement_SequenceOfElementMaterial_Reverse(self)

    def Exchange(self, I, J):
        return _StepElement.StepElement_SequenceOfElementMaterial_Exchange(self, I, J)

    @staticmethod
    def delNode(theNode, theAl):
        return _StepElement.StepElement_SequenceOfElementMaterial_delNode(theNode, theAl)

    def Clear(self, theAllocator=0):
        return _StepElement.StepElement_SequenceOfElementMaterial_Clear(self, theAllocator)

    def Assign(self, theOther):
        return _StepElement.StepElement_SequenceOfElementMaterial_Assign(self, theOther)

    def Set(self, theOther):
        return _StepElement.StepElement_SequenceOfElementMaterial_Set(self, theOther)

    def Remove(self, *args):
        return _StepElement.StepElement_SequenceOfElementMaterial_Remove(self, *args)

    def Append(self, *args):
        return _StepElement.StepElement_SequenceOfElementMaterial_Append(self, *args)

    def Prepend(self, *args):
        return _StepElement.StepElement_SequenceOfElementMaterial_Prepend(self, *args)

    def InsertBefore(self, *args):
        return _StepElement.StepElement_SequenceOfElementMaterial_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _StepElement.StepElement_SequenceOfElementMaterial_InsertAfter(self, *args)

    def Split(self, theIndex, theSeq):
        return _StepElement.StepElement_SequenceOfElementMaterial_Split(self, theIndex, theSeq)

    def First(self):
        return _StepElement.StepElement_SequenceOfElementMaterial_First(self)

    def ChangeFirst(self):
        return _StepElement.StepElement_SequenceOfElementMaterial_ChangeFirst(self)

    def Last(self):
        return _StepElement.StepElement_SequenceOfElementMaterial_Last(self)

    def ChangeLast(self):
        return _StepElement.StepElement_SequenceOfElementMaterial_ChangeLast(self)

    def Value(self, theIndex):
        return _StepElement.StepElement_SequenceOfElementMaterial_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepElement.StepElement_SequenceOfElementMaterial_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepElement.StepElement_SequenceOfElementMaterial___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepElement.StepElement_SequenceOfElementMaterial_SetValue(self, theIndex, theItem)
    __swig_destroy__ = _StepElement.delete_StepElement_SequenceOfElementMaterial

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


# Register StepElement_SequenceOfElementMaterial in _StepElement:
_StepElement.StepElement_SequenceOfElementMaterial_swigregister(StepElement_SequenceOfElementMaterial)
class StepElement_SequenceOfSurfaceElementPurposeMember(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_begin(self)

    def end(self):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_end(self)

    def cbegin(self):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_cbegin(self)

    def cend(self):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_cend(self)

    def __init__(self, *args):
        _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_swiginit(self, _StepElement.new_StepElement_SequenceOfSurfaceElementPurposeMember(*args))

    def Size(self):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Size(self)

    def Length(self):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Length(self)

    def Lower(self):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Lower(self)

    def Upper(self):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Upper(self)

    def IsEmpty(self):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_IsEmpty(self)

    def Reverse(self):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Reverse(self)

    def Exchange(self, I, J):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Exchange(self, I, J)

    @staticmethod
    def delNode(theNode, theAl):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_delNode(theNode, theAl)

    def Clear(self, theAllocator=0):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Clear(self, theAllocator)

    def Assign(self, theOther):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Assign(self, theOther)

    def Set(self, theOther):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Set(self, theOther)

    def Remove(self, *args):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Remove(self, *args)

    def Append(self, *args):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Append(self, *args)

    def Prepend(self, *args):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Prepend(self, *args)

    def InsertBefore(self, *args):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_InsertAfter(self, *args)

    def Split(self, theIndex, theSeq):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Split(self, theIndex, theSeq)

    def First(self):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_First(self)

    def ChangeFirst(self):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_ChangeFirst(self)

    def Last(self):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Last(self)

    def ChangeLast(self):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_ChangeLast(self)

    def Value(self, theIndex):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_SetValue(self, theIndex, theItem)
    __swig_destroy__ = _StepElement.delete_StepElement_SequenceOfSurfaceElementPurposeMember

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


# Register StepElement_SequenceOfSurfaceElementPurposeMember in _StepElement:
_StepElement.StepElement_SequenceOfSurfaceElementPurposeMember_swigregister(StepElement_SequenceOfSurfaceElementPurposeMember)
class StepElement_AnalysisItemWithinRepresentation(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_AnalysisItemWithinRepresentation_swiginit(self, _StepElement.new_StepElement_AnalysisItemWithinRepresentation(*args))

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

        Description
        -----------
        Returns field description.

        """
        return _StepElement.StepElement_AnalysisItemWithinRepresentation_Description(self, *args)

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

        Parameters
        ----------
        aName: TCollection_HAsciiString
        aDescription: TCollection_HAsciiString
        aItem: StepRepr_RepresentationItem
        aRep: StepRepr_Representation

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepElement.StepElement_AnalysisItemWithinRepresentation_Init(self, *args)

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

        Description
        -----------
        Returns field item.

        """
        return _StepElement.StepElement_AnalysisItemWithinRepresentation_Item(self, *args)

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

        Description
        -----------
        Returns field name.

        """
        return _StepElement.StepElement_AnalysisItemWithinRepresentation_Name(self, *args)

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

        Description
        -----------
        Returns field rep.

        """
        return _StepElement.StepElement_AnalysisItemWithinRepresentation_Rep(self, *args)

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

        Parameters
        ----------
        Description: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Set field description.

        """
        return _StepElement.StepElement_AnalysisItemWithinRepresentation_SetDescription(self, *args)

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

        Parameters
        ----------
        Item: StepRepr_RepresentationItem

        Return
        -------
        None

        Description
        -----------
        Set field item.

        """
        return _StepElement.StepElement_AnalysisItemWithinRepresentation_SetItem(self, *args)

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

        Parameters
        ----------
        Name: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Set field name.

        """
        return _StepElement.StepElement_AnalysisItemWithinRepresentation_SetName(self, *args)

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

        Parameters
        ----------
        Rep: StepRepr_Representation

        Return
        -------
        None

        Description
        -----------
        Set field rep.

        """
        return _StepElement.StepElement_AnalysisItemWithinRepresentation_SetRep(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_AnalysisItemWithinRepresentation

# Register StepElement_AnalysisItemWithinRepresentation in _StepElement:
_StepElement.StepElement_AnalysisItemWithinRepresentation_swigregister(StepElement_AnalysisItemWithinRepresentation)
class StepElement_CurveElementEndReleasePacket(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_CurveElementEndReleasePacket_swiginit(self, _StepElement.new_StepElement_CurveElementEndReleasePacket(*args))

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

        Parameters
        ----------
        aReleaseFreedom: StepElement_CurveElementFreedom
        aReleaseStiffness: float

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepElement.StepElement_CurveElementEndReleasePacket_Init(self, *args)

    def ReleaseFreedom(self, *args):
        r"""
        Return
        -------
        StepElement_CurveElementFreedom

        Description
        -----------
        Returns field releasefreedom.

        """
        return _StepElement.StepElement_CurveElementEndReleasePacket_ReleaseFreedom(self, *args)

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

        Description
        -----------
        Returns field releasestiffness.

        """
        return _StepElement.StepElement_CurveElementEndReleasePacket_ReleaseStiffness(self, *args)

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

        Parameters
        ----------
        ReleaseFreedom: StepElement_CurveElementFreedom

        Return
        -------
        None

        Description
        -----------
        Set field releasefreedom.

        """
        return _StepElement.StepElement_CurveElementEndReleasePacket_SetReleaseFreedom(self, *args)

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

        Parameters
        ----------
        ReleaseStiffness: float

        Return
        -------
        None

        Description
        -----------
        Set field releasestiffness.

        """
        return _StepElement.StepElement_CurveElementEndReleasePacket_SetReleaseStiffness(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_CurveElementEndReleasePacket

# Register StepElement_CurveElementEndReleasePacket in _StepElement:
_StepElement.StepElement_CurveElementEndReleasePacket_swigregister(StepElement_CurveElementEndReleasePacket)
class StepElement_CurveElementFreedom(OCC.Core.StepData.StepData_SelectType):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_CurveElementFreedom_swiginit(self, _StepElement.new_StepElement_CurveElementFreedom(*args))

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

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

        """
        return _StepElement.StepElement_CurveElementFreedom_ApplicationDefinedDegreeOfFreedom(self, *args)

    def EnumeratedCurveElementFreedom(self, *args):
        r"""
        Return
        -------
        StepElement_EnumeratedCurveElementFreedom

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

        """
        return _StepElement.StepElement_CurveElementFreedom_EnumeratedCurveElementFreedom(self, *args)

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

        Parameters
        ----------
        aVal: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Set value for applicationdefineddegreeoffreedom.

        """
        return _StepElement.StepElement_CurveElementFreedom_SetApplicationDefinedDegreeOfFreedom(self, *args)

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

        Parameters
        ----------
        aVal: StepElement_EnumeratedCurveElementFreedom

        Return
        -------
        None

        Description
        -----------
        Set value for enumeratedcurveelementfreedom.

        """
        return _StepElement.StepElement_CurveElementFreedom_SetEnumeratedCurveElementFreedom(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_CurveElementFreedom

# Register StepElement_CurveElementFreedom in _StepElement:
_StepElement.StepElement_CurveElementFreedom_swigregister(StepElement_CurveElementFreedom)
class StepElement_CurveElementFreedomMember(OCC.Core.StepData.StepData_SelectNamed):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_CurveElementFreedomMember_swiginit(self, _StepElement.new_StepElement_CurveElementFreedomMember(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_CurveElementFreedomMember

# Register StepElement_CurveElementFreedomMember in _StepElement:
_StepElement.StepElement_CurveElementFreedomMember_swigregister(StepElement_CurveElementFreedomMember)
class StepElement_CurveElementPurpose(OCC.Core.StepData.StepData_SelectType):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_CurveElementPurpose_swiginit(self, _StepElement.new_StepElement_CurveElementPurpose(*args))

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

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

        """
        return _StepElement.StepElement_CurveElementPurpose_ApplicationDefinedElementPurpose(self, *args)

    def EnumeratedCurveElementPurpose(self, *args):
        r"""
        Return
        -------
        StepElement_EnumeratedCurveElementPurpose

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

        """
        return _StepElement.StepElement_CurveElementPurpose_EnumeratedCurveElementPurpose(self, *args)

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

        Parameters
        ----------
        aVal: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Set value for applicationdefinedelementpurpose.

        """
        return _StepElement.StepElement_CurveElementPurpose_SetApplicationDefinedElementPurpose(self, *args)

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

        Parameters
        ----------
        aVal: StepElement_EnumeratedCurveElementPurpose

        Return
        -------
        None

        Description
        -----------
        Set value for enumeratedcurveelementpurpose.

        """
        return _StepElement.StepElement_CurveElementPurpose_SetEnumeratedCurveElementPurpose(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_CurveElementPurpose

# Register StepElement_CurveElementPurpose in _StepElement:
_StepElement.StepElement_CurveElementPurpose_swigregister(StepElement_CurveElementPurpose)
class StepElement_CurveElementPurposeMember(OCC.Core.StepData.StepData_SelectNamed):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_CurveElementPurposeMember_swiginit(self, _StepElement.new_StepElement_CurveElementPurposeMember(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_CurveElementPurposeMember

# Register StepElement_CurveElementPurposeMember in _StepElement:
_StepElement.StepElement_CurveElementPurposeMember_swigregister(StepElement_CurveElementPurposeMember)
class StepElement_CurveElementSectionDefinition(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_CurveElementSectionDefinition_swiginit(self, _StepElement.new_StepElement_CurveElementSectionDefinition(*args))

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

        Description
        -----------
        Returns field description.

        """
        return _StepElement.StepElement_CurveElementSectionDefinition_Description(self, *args)

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

        Parameters
        ----------
        aDescription: TCollection_HAsciiString
        aSectionAngle: float

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepElement.StepElement_CurveElementSectionDefinition_Init(self, *args)

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

        Description
        -----------
        Returns field sectionangle.

        """
        return _StepElement.StepElement_CurveElementSectionDefinition_SectionAngle(self, *args)

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

        Parameters
        ----------
        Description: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Set field description.

        """
        return _StepElement.StepElement_CurveElementSectionDefinition_SetDescription(self, *args)

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

        Parameters
        ----------
        SectionAngle: float

        Return
        -------
        None

        Description
        -----------
        Set field sectionangle.

        """
        return _StepElement.StepElement_CurveElementSectionDefinition_SetSectionAngle(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_CurveElementSectionDefinition

# Register StepElement_CurveElementSectionDefinition in _StepElement:
_StepElement.StepElement_CurveElementSectionDefinition_swigregister(StepElement_CurveElementSectionDefinition)
class StepElement_ElementAspect(OCC.Core.StepData.StepData_SelectType):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_ElementAspect_swiginit(self, _StepElement.new_StepElement_ElementAspect(*args))

    def CurveEdge(self, *args):
        r"""
        Return
        -------
        StepElement_CurveEdge

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

        """
        return _StepElement.StepElement_ElementAspect_CurveEdge(self, *args)

    def ElementVolume(self, *args):
        r"""
        Return
        -------
        StepElement_ElementVolume

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

        """
        return _StepElement.StepElement_ElementAspect_ElementVolume(self, *args)

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

        Parameters
        ----------
        aVal: StepElement_CurveEdge

        Return
        -------
        None

        Description
        -----------
        Set value for curveedge.

        """
        return _StepElement.StepElement_ElementAspect_SetCurveEdge(self, *args)

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

        Parameters
        ----------
        aVal: StepElement_ElementVolume

        Return
        -------
        None

        Description
        -----------
        Set value for elementvolume.

        """
        return _StepElement.StepElement_ElementAspect_SetElementVolume(self, *args)

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

        Parameters
        ----------
        aVal: int

        Return
        -------
        None

        Description
        -----------
        Set value for surface2dedge.

        """
        return _StepElement.StepElement_ElementAspect_SetSurface2dEdge(self, *args)

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

        Parameters
        ----------
        aVal: int

        Return
        -------
        None

        Description
        -----------
        Set value for surface2dface.

        """
        return _StepElement.StepElement_ElementAspect_SetSurface2dFace(self, *args)

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

        Parameters
        ----------
        aVal: int

        Return
        -------
        None

        Description
        -----------
        Set value for surface3dedge.

        """
        return _StepElement.StepElement_ElementAspect_SetSurface3dEdge(self, *args)

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

        Parameters
        ----------
        aVal: int

        Return
        -------
        None

        Description
        -----------
        Set value for surface3dface.

        """
        return _StepElement.StepElement_ElementAspect_SetSurface3dFace(self, *args)

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

        Parameters
        ----------
        aVal: int

        Return
        -------
        None

        Description
        -----------
        Set value for volume2dedge.

        """
        return _StepElement.StepElement_ElementAspect_SetVolume2dEdge(self, *args)

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

        Parameters
        ----------
        aVal: int

        Return
        -------
        None

        Description
        -----------
        Set value for volume2dface.

        """
        return _StepElement.StepElement_ElementAspect_SetVolume2dFace(self, *args)

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

        Parameters
        ----------
        aVal: int

        Return
        -------
        None

        Description
        -----------
        Set value for volume3dedge.

        """
        return _StepElement.StepElement_ElementAspect_SetVolume3dEdge(self, *args)

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

        Parameters
        ----------
        aVal: int

        Return
        -------
        None

        Description
        -----------
        Set value for volume3dface.

        """
        return _StepElement.StepElement_ElementAspect_SetVolume3dFace(self, *args)

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

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

        """
        return _StepElement.StepElement_ElementAspect_Surface2dEdge(self, *args)

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

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

        """
        return _StepElement.StepElement_ElementAspect_Surface2dFace(self, *args)

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

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

        """
        return _StepElement.StepElement_ElementAspect_Surface3dEdge(self, *args)

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

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

        """
        return _StepElement.StepElement_ElementAspect_Surface3dFace(self, *args)

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

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

        """
        return _StepElement.StepElement_ElementAspect_Volume2dEdge(self, *args)

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

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

        """
        return _StepElement.StepElement_ElementAspect_Volume2dFace(self, *args)

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

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

        """
        return _StepElement.StepElement_ElementAspect_Volume3dEdge(self, *args)

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

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

        """
        return _StepElement.StepElement_ElementAspect_Volume3dFace(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_ElementAspect

# Register StepElement_ElementAspect in _StepElement:
_StepElement.StepElement_ElementAspect_swigregister(StepElement_ElementAspect)
class StepElement_ElementAspectMember(OCC.Core.StepData.StepData_SelectNamed):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_ElementAspectMember_swiginit(self, _StepElement.new_StepElement_ElementAspectMember(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_ElementAspectMember

# Register StepElement_ElementAspectMember in _StepElement:
_StepElement.StepElement_ElementAspectMember_swigregister(StepElement_ElementAspectMember)
class StepElement_ElementDescriptor(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_ElementDescriptor_swiginit(self, _StepElement.new_StepElement_ElementDescriptor(*args))

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

        Description
        -----------
        Returns field description.

        """
        return _StepElement.StepElement_ElementDescriptor_Description(self, *args)

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

        Parameters
        ----------
        aTopologyOrder: StepElement_ElementOrder
        aDescription: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepElement.StepElement_ElementDescriptor_Init(self, *args)

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

        Parameters
        ----------
        Description: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Set field description.

        """
        return _StepElement.StepElement_ElementDescriptor_SetDescription(self, *args)

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

        Parameters
        ----------
        TopologyOrder: StepElement_ElementOrder

        Return
        -------
        None

        Description
        -----------
        Set field topologyorder.

        """
        return _StepElement.StepElement_ElementDescriptor_SetTopologyOrder(self, *args)

    def TopologyOrder(self, *args):
        r"""
        Return
        -------
        StepElement_ElementOrder

        Description
        -----------
        Returns field topologyorder.

        """
        return _StepElement.StepElement_ElementDescriptor_TopologyOrder(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_ElementDescriptor

# Register StepElement_ElementDescriptor in _StepElement:
_StepElement.StepElement_ElementDescriptor_swigregister(StepElement_ElementDescriptor)
class StepElement_ElementMaterial(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_ElementMaterial_swiginit(self, _StepElement.new_StepElement_ElementMaterial(*args))

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

        Description
        -----------
        Returns field description.

        """
        return _StepElement.StepElement_ElementMaterial_Description(self, *args)

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

        Parameters
        ----------
        aMaterialId: TCollection_HAsciiString
        aDescription: TCollection_HAsciiString
        aProperties: StepRepr_HArray1OfMaterialPropertyRepresentation

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepElement.StepElement_ElementMaterial_Init(self, *args)

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

        Description
        -----------
        Returns field materialid.

        """
        return _StepElement.StepElement_ElementMaterial_MaterialId(self, *args)

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

        Description
        -----------
        Returns field properties.

        """
        return _StepElement.StepElement_ElementMaterial_Properties(self, *args)

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

        Parameters
        ----------
        Description: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Set field description.

        """
        return _StepElement.StepElement_ElementMaterial_SetDescription(self, *args)

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

        Parameters
        ----------
        MaterialId: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Set field materialid.

        """
        return _StepElement.StepElement_ElementMaterial_SetMaterialId(self, *args)

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

        Parameters
        ----------
        Properties: StepRepr_HArray1OfMaterialPropertyRepresentation

        Return
        -------
        None

        Description
        -----------
        Set field properties.

        """
        return _StepElement.StepElement_ElementMaterial_SetProperties(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_ElementMaterial

# Register StepElement_ElementMaterial in _StepElement:
_StepElement.StepElement_ElementMaterial_swigregister(StepElement_ElementMaterial)
class StepElement_MeasureOrUnspecifiedValue(OCC.Core.StepData.StepData_SelectType):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_MeasureOrUnspecifiedValue_swiginit(self, _StepElement.new_StepElement_MeasureOrUnspecifiedValue(*args))

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

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

        """
        return _StepElement.StepElement_MeasureOrUnspecifiedValue_ContextDependentMeasure(self, *args)

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

        Parameters
        ----------
        aVal: float

        Return
        -------
        None

        Description
        -----------
        Set value for contextdependentmeasure.

        """
        return _StepElement.StepElement_MeasureOrUnspecifiedValue_SetContextDependentMeasure(self, *args)

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

        Parameters
        ----------
        aVal: StepElement_UnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Set value for unspecifiedvalue.

        """
        return _StepElement.StepElement_MeasureOrUnspecifiedValue_SetUnspecifiedValue(self, *args)

    def UnspecifiedValue(self, *args):
        r"""
        Return
        -------
        StepElement_UnspecifiedValue

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

        """
        return _StepElement.StepElement_MeasureOrUnspecifiedValue_UnspecifiedValue(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_MeasureOrUnspecifiedValue

# Register StepElement_MeasureOrUnspecifiedValue in _StepElement:
_StepElement.StepElement_MeasureOrUnspecifiedValue_swigregister(StepElement_MeasureOrUnspecifiedValue)
class StepElement_MeasureOrUnspecifiedValueMember(OCC.Core.StepData.StepData_SelectNamed):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_MeasureOrUnspecifiedValueMember_swiginit(self, _StepElement.new_StepElement_MeasureOrUnspecifiedValueMember(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_MeasureOrUnspecifiedValueMember

# Register StepElement_MeasureOrUnspecifiedValueMember in _StepElement:
_StepElement.StepElement_MeasureOrUnspecifiedValueMember_swigregister(StepElement_MeasureOrUnspecifiedValueMember)
class StepElement_SurfaceElementProperty(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_SurfaceElementProperty_swiginit(self, _StepElement.new_StepElement_SurfaceElementProperty(*args))

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

        Description
        -----------
        Returns field description.

        """
        return _StepElement.StepElement_SurfaceElementProperty_Description(self, *args)

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

        Parameters
        ----------
        aPropertyId: TCollection_HAsciiString
        aDescription: TCollection_HAsciiString
        aSection: StepElement_SurfaceSectionField

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepElement.StepElement_SurfaceElementProperty_Init(self, *args)

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

        Description
        -----------
        Returns field propertyid.

        """
        return _StepElement.StepElement_SurfaceElementProperty_PropertyId(self, *args)

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

        Description
        -----------
        Returns field section.

        """
        return _StepElement.StepElement_SurfaceElementProperty_Section(self, *args)

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

        Parameters
        ----------
        Description: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Set field description.

        """
        return _StepElement.StepElement_SurfaceElementProperty_SetDescription(self, *args)

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

        Parameters
        ----------
        PropertyId: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Set field propertyid.

        """
        return _StepElement.StepElement_SurfaceElementProperty_SetPropertyId(self, *args)

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

        Parameters
        ----------
        Section: StepElement_SurfaceSectionField

        Return
        -------
        None

        Description
        -----------
        Set field section.

        """
        return _StepElement.StepElement_SurfaceElementProperty_SetSection(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_SurfaceElementProperty

# Register StepElement_SurfaceElementProperty in _StepElement:
_StepElement.StepElement_SurfaceElementProperty_swigregister(StepElement_SurfaceElementProperty)
class StepElement_SurfaceElementPurpose(OCC.Core.StepData.StepData_SelectType):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_SurfaceElementPurpose_swiginit(self, _StepElement.new_StepElement_SurfaceElementPurpose(*args))

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

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

        """
        return _StepElement.StepElement_SurfaceElementPurpose_ApplicationDefinedElementPurpose(self, *args)

    def EnumeratedSurfaceElementPurpose(self, *args):
        r"""
        Return
        -------
        StepElement_EnumeratedSurfaceElementPurpose

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

        """
        return _StepElement.StepElement_SurfaceElementPurpose_EnumeratedSurfaceElementPurpose(self, *args)

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

        Parameters
        ----------
        aVal: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Set value for applicationdefinedelementpurpose.

        """
        return _StepElement.StepElement_SurfaceElementPurpose_SetApplicationDefinedElementPurpose(self, *args)

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

        Parameters
        ----------
        aVal: StepElement_EnumeratedSurfaceElementPurpose

        Return
        -------
        None

        Description
        -----------
        Set value for enumeratedsurfaceelementpurpose.

        """
        return _StepElement.StepElement_SurfaceElementPurpose_SetEnumeratedSurfaceElementPurpose(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_SurfaceElementPurpose

# Register StepElement_SurfaceElementPurpose in _StepElement:
_StepElement.StepElement_SurfaceElementPurpose_swigregister(StepElement_SurfaceElementPurpose)
class StepElement_SurfaceElementPurposeMember(OCC.Core.StepData.StepData_SelectNamed):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_SurfaceElementPurposeMember_swiginit(self, _StepElement.new_StepElement_SurfaceElementPurposeMember(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_SurfaceElementPurposeMember

# Register StepElement_SurfaceElementPurposeMember in _StepElement:
_StepElement.StepElement_SurfaceElementPurposeMember_swigregister(StepElement_SurfaceElementPurposeMember)
class StepElement_SurfaceSection(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_SurfaceSection_swiginit(self, _StepElement.new_StepElement_SurfaceSection(*args))

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

        Parameters
        ----------
        aOffset: StepElement_MeasureOrUnspecifiedValue
        aNonStructuralMass: StepElement_MeasureOrUnspecifiedValue
        aNonStructuralMassOffset: StepElement_MeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepElement.StepElement_SurfaceSection_Init(self, *args)

    def NonStructuralMass(self, *args):
        r"""
        Return
        -------
        StepElement_MeasureOrUnspecifiedValue

        Description
        -----------
        Returns field nonstructuralmass.

        """
        return _StepElement.StepElement_SurfaceSection_NonStructuralMass(self, *args)

    def NonStructuralMassOffset(self, *args):
        r"""
        Return
        -------
        StepElement_MeasureOrUnspecifiedValue

        Description
        -----------
        Returns field nonstructuralmassoffset.

        """
        return _StepElement.StepElement_SurfaceSection_NonStructuralMassOffset(self, *args)

    def Offset(self, *args):
        r"""
        Return
        -------
        StepElement_MeasureOrUnspecifiedValue

        Description
        -----------
        Returns field offset.

        """
        return _StepElement.StepElement_SurfaceSection_Offset(self, *args)

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

        Parameters
        ----------
        NonStructuralMass: StepElement_MeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Set field nonstructuralmass.

        """
        return _StepElement.StepElement_SurfaceSection_SetNonStructuralMass(self, *args)

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

        Parameters
        ----------
        NonStructuralMassOffset: StepElement_MeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Set field nonstructuralmassoffset.

        """
        return _StepElement.StepElement_SurfaceSection_SetNonStructuralMassOffset(self, *args)

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

        Parameters
        ----------
        Offset: StepElement_MeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Set field offset.

        """
        return _StepElement.StepElement_SurfaceSection_SetOffset(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_SurfaceSection

# Register StepElement_SurfaceSection in _StepElement:
_StepElement.StepElement_SurfaceSection_swigregister(StepElement_SurfaceSection)
class StepElement_SurfaceSectionField(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_SurfaceSectionField_swiginit(self, _StepElement.new_StepElement_SurfaceSectionField(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_SurfaceSectionField

# Register StepElement_SurfaceSectionField in _StepElement:
_StepElement.StepElement_SurfaceSectionField_swigregister(StepElement_SurfaceSectionField)
class StepElement_VolumeElementPurpose(OCC.Core.StepData.StepData_SelectType):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_VolumeElementPurpose_swiginit(self, _StepElement.new_StepElement_VolumeElementPurpose(*args))

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

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

        """
        return _StepElement.StepElement_VolumeElementPurpose_ApplicationDefinedElementPurpose(self, *args)

    def EnumeratedVolumeElementPurpose(self, *args):
        r"""
        Return
        -------
        StepElement_EnumeratedVolumeElementPurpose

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

        """
        return _StepElement.StepElement_VolumeElementPurpose_EnumeratedVolumeElementPurpose(self, *args)

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

        Parameters
        ----------
        aVal: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Set value for applicationdefinedelementpurpose.

        """
        return _StepElement.StepElement_VolumeElementPurpose_SetApplicationDefinedElementPurpose(self, *args)

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

        Parameters
        ----------
        aVal: StepElement_EnumeratedVolumeElementPurpose

        Return
        -------
        None

        Description
        -----------
        Set value for enumeratedvolumeelementpurpose.

        """
        return _StepElement.StepElement_VolumeElementPurpose_SetEnumeratedVolumeElementPurpose(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_VolumeElementPurpose

# Register StepElement_VolumeElementPurpose in _StepElement:
_StepElement.StepElement_VolumeElementPurpose_swigregister(StepElement_VolumeElementPurpose)
class StepElement_VolumeElementPurposeMember(OCC.Core.StepData.StepData_SelectNamed):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_VolumeElementPurposeMember_swiginit(self, _StepElement.new_StepElement_VolumeElementPurposeMember(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_VolumeElementPurposeMember

# Register StepElement_VolumeElementPurposeMember in _StepElement:
_StepElement.StepElement_VolumeElementPurposeMember_swigregister(StepElement_VolumeElementPurposeMember)
class StepElement_Curve3dElementDescriptor(StepElement_ElementDescriptor):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_Curve3dElementDescriptor_swiginit(self, _StepElement.new_StepElement_Curve3dElementDescriptor(*args))

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

        Parameters
        ----------
        aElementDescriptor_TopologyOrder: StepElement_ElementOrder
        aElementDescriptor_Description: TCollection_HAsciiString
        aPurpose: StepElement_HArray1OfHSequenceOfCurveElementPurposeMember

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepElement.StepElement_Curve3dElementDescriptor_Init(self, *args)

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

        Description
        -----------
        Returns field purpose.

        """
        return _StepElement.StepElement_Curve3dElementDescriptor_Purpose(self, *args)

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

        Parameters
        ----------
        Purpose: StepElement_HArray1OfHSequenceOfCurveElementPurposeMember

        Return
        -------
        None

        Description
        -----------
        Set field purpose.

        """
        return _StepElement.StepElement_Curve3dElementDescriptor_SetPurpose(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_Curve3dElementDescriptor

# Register StepElement_Curve3dElementDescriptor in _StepElement:
_StepElement.StepElement_Curve3dElementDescriptor_swigregister(StepElement_Curve3dElementDescriptor)
class StepElement_CurveElementSectionDerivedDefinitions(StepElement_CurveElementSectionDefinition):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_CurveElementSectionDerivedDefinitions_swiginit(self, _StepElement.new_StepElement_CurveElementSectionDerivedDefinitions(*args))

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

        Description
        -----------
        Returns field crosssectionalarea.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_CrossSectionalArea(self, *args)

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

        Parameters
        ----------
        aCurveElementSectionDefinition_Description: TCollection_HAsciiString
        aCurveElementSectionDefinition_SectionAngle: float
        aCrossSectionalArea: float
        aShearArea: StepElement_HArray1OfMeasureOrUnspecifiedValue
        aSecondMomentOfArea: TColStd_HArray1OfReal
        aTorsionalConstant: float
        aWarpingConstant: StepElement_MeasureOrUnspecifiedValue
        aLocationOfCentroid: StepElement_HArray1OfMeasureOrUnspecifiedValue
        aLocationOfShearCentre: StepElement_HArray1OfMeasureOrUnspecifiedValue
        aLocationOfNonStructuralMass: StepElement_HArray1OfMeasureOrUnspecifiedValue
        aNonStructuralMass: StepElement_MeasureOrUnspecifiedValue
        aPolarMoment: StepElement_MeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_Init(self, *args)

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

        Description
        -----------
        Returns field locationofcentroid.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_LocationOfCentroid(self, *args)

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

        Description
        -----------
        Returns field locationofnonstructuralmass.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_LocationOfNonStructuralMass(self, *args)

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

        Description
        -----------
        Returns field locationofshearcentre.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_LocationOfShearCentre(self, *args)

    def NonStructuralMass(self, *args):
        r"""
        Return
        -------
        StepElement_MeasureOrUnspecifiedValue

        Description
        -----------
        Returns field nonstructuralmass.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_NonStructuralMass(self, *args)

    def PolarMoment(self, *args):
        r"""
        Return
        -------
        StepElement_MeasureOrUnspecifiedValue

        Description
        -----------
        Returns field polarmoment.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_PolarMoment(self, *args)

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

        Description
        -----------
        Returns field secondmomentofarea.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_SecondMomentOfArea(self, *args)

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

        Parameters
        ----------
        CrossSectionalArea: float

        Return
        -------
        None

        Description
        -----------
        Set field crosssectionalarea.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_SetCrossSectionalArea(self, *args)

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

        Parameters
        ----------
        LocationOfCentroid: StepElement_HArray1OfMeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Set field locationofcentroid.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_SetLocationOfCentroid(self, *args)

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

        Parameters
        ----------
        LocationOfNonStructuralMass: StepElement_HArray1OfMeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Set field locationofnonstructuralmass.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_SetLocationOfNonStructuralMass(self, *args)

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

        Parameters
        ----------
        LocationOfShearCentre: StepElement_HArray1OfMeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Set field locationofshearcentre.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_SetLocationOfShearCentre(self, *args)

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

        Parameters
        ----------
        NonStructuralMass: StepElement_MeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Set field nonstructuralmass.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_SetNonStructuralMass(self, *args)

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

        Parameters
        ----------
        PolarMoment: StepElement_MeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Set field polarmoment.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_SetPolarMoment(self, *args)

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

        Parameters
        ----------
        SecondMomentOfArea: TColStd_HArray1OfReal

        Return
        -------
        None

        Description
        -----------
        Set field secondmomentofarea.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_SetSecondMomentOfArea(self, *args)

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

        Parameters
        ----------
        ShearArea: StepElement_HArray1OfMeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Set field sheararea.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_SetShearArea(self, *args)

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

        Parameters
        ----------
        TorsionalConstant: float

        Return
        -------
        None

        Description
        -----------
        Set field torsionalconstant.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_SetTorsionalConstant(self, *args)

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

        Parameters
        ----------
        WarpingConstant: StepElement_MeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Set field warpingconstant.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_SetWarpingConstant(self, *args)

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

        Description
        -----------
        Returns field sheararea.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_ShearArea(self, *args)

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

        Description
        -----------
        Returns field torsionalconstant.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_TorsionalConstant(self, *args)

    def WarpingConstant(self, *args):
        r"""
        Return
        -------
        StepElement_MeasureOrUnspecifiedValue

        Description
        -----------
        Returns field warpingconstant.

        """
        return _StepElement.StepElement_CurveElementSectionDerivedDefinitions_WarpingConstant(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_CurveElementSectionDerivedDefinitions

# Register StepElement_CurveElementSectionDerivedDefinitions in _StepElement:
_StepElement.StepElement_CurveElementSectionDerivedDefinitions_swigregister(StepElement_CurveElementSectionDerivedDefinitions)
class StepElement_Surface3dElementDescriptor(StepElement_ElementDescriptor):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_Surface3dElementDescriptor_swiginit(self, _StepElement.new_StepElement_Surface3dElementDescriptor(*args))

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

        Parameters
        ----------
        aElementDescriptor_TopologyOrder: StepElement_ElementOrder
        aElementDescriptor_Description: TCollection_HAsciiString
        aPurpose: StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember
        aShape: StepElement_Element2dShape

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepElement.StepElement_Surface3dElementDescriptor_Init(self, *args)

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

        Description
        -----------
        Returns field purpose.

        """
        return _StepElement.StepElement_Surface3dElementDescriptor_Purpose(self, *args)

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

        Parameters
        ----------
        Purpose: StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember

        Return
        -------
        None

        Description
        -----------
        Set field purpose.

        """
        return _StepElement.StepElement_Surface3dElementDescriptor_SetPurpose(self, *args)

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

        Parameters
        ----------
        Shape: StepElement_Element2dShape

        Return
        -------
        None

        Description
        -----------
        Set field shape.

        """
        return _StepElement.StepElement_Surface3dElementDescriptor_SetShape(self, *args)

    def Shape(self, *args):
        r"""
        Return
        -------
        StepElement_Element2dShape

        Description
        -----------
        Returns field shape.

        """
        return _StepElement.StepElement_Surface3dElementDescriptor_Shape(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_Surface3dElementDescriptor

# Register StepElement_Surface3dElementDescriptor in _StepElement:
_StepElement.StepElement_Surface3dElementDescriptor_swigregister(StepElement_Surface3dElementDescriptor)
class StepElement_SurfaceSectionFieldConstant(StepElement_SurfaceSectionField):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_SurfaceSectionFieldConstant_swiginit(self, _StepElement.new_StepElement_SurfaceSectionFieldConstant(*args))

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

        Description
        -----------
        Returns field definition.

        """
        return _StepElement.StepElement_SurfaceSectionFieldConstant_Definition(self, *args)

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

        Parameters
        ----------
        aDefinition: StepElement_SurfaceSection

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepElement.StepElement_SurfaceSectionFieldConstant_Init(self, *args)

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

        Parameters
        ----------
        Definition: StepElement_SurfaceSection

        Return
        -------
        None

        Description
        -----------
        Set field definition.

        """
        return _StepElement.StepElement_SurfaceSectionFieldConstant_SetDefinition(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_SurfaceSectionFieldConstant

# Register StepElement_SurfaceSectionFieldConstant in _StepElement:
_StepElement.StepElement_SurfaceSectionFieldConstant_swigregister(StepElement_SurfaceSectionFieldConstant)
class StepElement_SurfaceSectionFieldVarying(StepElement_SurfaceSectionField):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_SurfaceSectionFieldVarying_swiginit(self, _StepElement.new_StepElement_SurfaceSectionFieldVarying(*args))

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

        Description
        -----------
        Returns field additionalnodevalues.

        """
        return _StepElement.StepElement_SurfaceSectionFieldVarying_AdditionalNodeValues(self, *args)

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

        Description
        -----------
        Returns field definitions.

        """
        return _StepElement.StepElement_SurfaceSectionFieldVarying_Definitions(self, *args)

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

        Parameters
        ----------
        aDefinitions: StepElement_HArray1OfSurfaceSection
        aAdditionalNodeValues: bool

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepElement.StepElement_SurfaceSectionFieldVarying_Init(self, *args)

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

        Parameters
        ----------
        AdditionalNodeValues: bool

        Return
        -------
        None

        Description
        -----------
        Set field additionalnodevalues.

        """
        return _StepElement.StepElement_SurfaceSectionFieldVarying_SetAdditionalNodeValues(self, *args)

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

        Parameters
        ----------
        Definitions: StepElement_HArray1OfSurfaceSection

        Return
        -------
        None

        Description
        -----------
        Set field definitions.

        """
        return _StepElement.StepElement_SurfaceSectionFieldVarying_SetDefinitions(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_SurfaceSectionFieldVarying

# Register StepElement_SurfaceSectionFieldVarying in _StepElement:
_StepElement.StepElement_SurfaceSectionFieldVarying_swigregister(StepElement_SurfaceSectionFieldVarying)
class StepElement_UniformSurfaceSection(StepElement_SurfaceSection):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_UniformSurfaceSection_swiginit(self, _StepElement.new_StepElement_UniformSurfaceSection(*args))

    def BendingThickness(self, *args):
        r"""
        Return
        -------
        StepElement_MeasureOrUnspecifiedValue

        Description
        -----------
        Returns field bendingthickness.

        """
        return _StepElement.StepElement_UniformSurfaceSection_BendingThickness(self, *args)

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

        Parameters
        ----------
        aSurfaceSection_Offset: StepElement_MeasureOrUnspecifiedValue
        aSurfaceSection_NonStructuralMass: StepElement_MeasureOrUnspecifiedValue
        aSurfaceSection_NonStructuralMassOffset: StepElement_MeasureOrUnspecifiedValue
        aThickness: float
        aBendingThickness: StepElement_MeasureOrUnspecifiedValue
        aShearThickness: StepElement_MeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepElement.StepElement_UniformSurfaceSection_Init(self, *args)

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

        Parameters
        ----------
        BendingThickness: StepElement_MeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Set field bendingthickness.

        """
        return _StepElement.StepElement_UniformSurfaceSection_SetBendingThickness(self, *args)

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

        Parameters
        ----------
        ShearThickness: StepElement_MeasureOrUnspecifiedValue

        Return
        -------
        None

        Description
        -----------
        Set field shearthickness.

        """
        return _StepElement.StepElement_UniformSurfaceSection_SetShearThickness(self, *args)

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

        Parameters
        ----------
        Thickness: float

        Return
        -------
        None

        Description
        -----------
        Set field thickness.

        """
        return _StepElement.StepElement_UniformSurfaceSection_SetThickness(self, *args)

    def ShearThickness(self, *args):
        r"""
        Return
        -------
        StepElement_MeasureOrUnspecifiedValue

        Description
        -----------
        Returns field shearthickness.

        """
        return _StepElement.StepElement_UniformSurfaceSection_ShearThickness(self, *args)

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

        Description
        -----------
        Returns field thickness.

        """
        return _StepElement.StepElement_UniformSurfaceSection_Thickness(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_UniformSurfaceSection

# Register StepElement_UniformSurfaceSection in _StepElement:
_StepElement.StepElement_UniformSurfaceSection_swigregister(StepElement_UniformSurfaceSection)
class StepElement_Volume3dElementDescriptor(StepElement_ElementDescriptor):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        """
        _StepElement.StepElement_Volume3dElementDescriptor_swiginit(self, _StepElement.new_StepElement_Volume3dElementDescriptor(*args))

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

        Parameters
        ----------
        aElementDescriptor_TopologyOrder: StepElement_ElementOrder
        aElementDescriptor_Description: TCollection_HAsciiString
        aPurpose: StepElement_HArray1OfVolumeElementPurposeMember
        aShape: StepElement_Volume3dElementShape

        Return
        -------
        None

        Description
        -----------
        Initialize all fields (own and inherited).

        """
        return _StepElement.StepElement_Volume3dElementDescriptor_Init(self, *args)

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

        Description
        -----------
        Returns field purpose.

        """
        return _StepElement.StepElement_Volume3dElementDescriptor_Purpose(self, *args)

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

        Parameters
        ----------
        Purpose: StepElement_HArray1OfVolumeElementPurposeMember

        Return
        -------
        None

        Description
        -----------
        Set field purpose.

        """
        return _StepElement.StepElement_Volume3dElementDescriptor_SetPurpose(self, *args)

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

        Parameters
        ----------
        Shape: StepElement_Volume3dElementShape

        Return
        -------
        None

        Description
        -----------
        Set field shape.

        """
        return _StepElement.StepElement_Volume3dElementDescriptor_SetShape(self, *args)

    def Shape(self, *args):
        r"""
        Return
        -------
        StepElement_Volume3dElementShape

        Description
        -----------
        Returns field shape.

        """
        return _StepElement.StepElement_Volume3dElementDescriptor_Shape(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _StepElement.delete_StepElement_Volume3dElementDescriptor

# Register StepElement_Volume3dElementDescriptor in _StepElement:
_StepElement.StepElement_Volume3dElementDescriptor_swigregister(StepElement_Volume3dElementDescriptor)
class StepElement_HArray1OfHSequenceOfCurveElementPurposeMember(StepElement_Array1OfHSequenceOfCurveElementPurposeMember, 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):
        _StepElement.StepElement_HArray1OfHSequenceOfCurveElementPurposeMember_swiginit(self, _StepElement.new_StepElement_HArray1OfHSequenceOfCurveElementPurposeMember(*args))

    def Array1(self):
        return _StepElement.StepElement_HArray1OfHSequenceOfCurveElementPurposeMember_Array1(self)

    def ChangeArray1(self):
        return _StepElement.StepElement_HArray1OfHSequenceOfCurveElementPurposeMember_ChangeArray1(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HArray1OfHSequenceOfCurveElementPurposeMember

# Register StepElement_HArray1OfHSequenceOfCurveElementPurposeMember in _StepElement:
_StepElement.StepElement_HArray1OfHSequenceOfCurveElementPurposeMember_swigregister(StepElement_HArray1OfHSequenceOfCurveElementPurposeMember)
class StepElement_HArray1OfSurfaceSection(StepElement_Array1OfSurfaceSection, 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):
        _StepElement.StepElement_HArray1OfSurfaceSection_swiginit(self, _StepElement.new_StepElement_HArray1OfSurfaceSection(*args))

    def Array1(self):
        return _StepElement.StepElement_HArray1OfSurfaceSection_Array1(self)

    def ChangeArray1(self):
        return _StepElement.StepElement_HArray1OfSurfaceSection_ChangeArray1(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HArray1OfSurfaceSection

# Register StepElement_HArray1OfSurfaceSection in _StepElement:
_StepElement.StepElement_HArray1OfSurfaceSection_swigregister(StepElement_HArray1OfSurfaceSection)
class StepElement_HArray1OfVolumeElementPurpose(StepElement_Array1OfVolumeElementPurpose, 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):
        _StepElement.StepElement_HArray1OfVolumeElementPurpose_swiginit(self, _StepElement.new_StepElement_HArray1OfVolumeElementPurpose(*args))

    def Array1(self):
        return _StepElement.StepElement_HArray1OfVolumeElementPurpose_Array1(self)

    def ChangeArray1(self):
        return _StepElement.StepElement_HArray1OfVolumeElementPurpose_ChangeArray1(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HArray1OfVolumeElementPurpose

# Register StepElement_HArray1OfVolumeElementPurpose in _StepElement:
_StepElement.StepElement_HArray1OfVolumeElementPurpose_swigregister(StepElement_HArray1OfVolumeElementPurpose)
class StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember(StepElement_Array1OfHSequenceOfSurfaceElementPurposeMember, 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):
        _StepElement.StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember_swiginit(self, _StepElement.new_StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember(*args))

    def Array1(self):
        return _StepElement.StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember_Array1(self)

    def ChangeArray1(self):
        return _StepElement.StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember_ChangeArray1(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember

# Register StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember in _StepElement:
_StepElement.StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember_swigregister(StepElement_HArray1OfHSequenceOfSurfaceElementPurposeMember)
class StepElement_HArray1OfCurveElementSectionDefinition(StepElement_Array1OfCurveElementSectionDefinition, 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):
        _StepElement.StepElement_HArray1OfCurveElementSectionDefinition_swiginit(self, _StepElement.new_StepElement_HArray1OfCurveElementSectionDefinition(*args))

    def Array1(self):
        return _StepElement.StepElement_HArray1OfCurveElementSectionDefinition_Array1(self)

    def ChangeArray1(self):
        return _StepElement.StepElement_HArray1OfCurveElementSectionDefinition_ChangeArray1(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HArray1OfCurveElementSectionDefinition

# Register StepElement_HArray1OfCurveElementSectionDefinition in _StepElement:
_StepElement.StepElement_HArray1OfCurveElementSectionDefinition_swigregister(StepElement_HArray1OfCurveElementSectionDefinition)
class StepElement_HArray1OfMeasureOrUnspecifiedValue(StepElement_Array1OfMeasureOrUnspecifiedValue, 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):
        _StepElement.StepElement_HArray1OfMeasureOrUnspecifiedValue_swiginit(self, _StepElement.new_StepElement_HArray1OfMeasureOrUnspecifiedValue(*args))

    def Array1(self):
        return _StepElement.StepElement_HArray1OfMeasureOrUnspecifiedValue_Array1(self)

    def ChangeArray1(self):
        return _StepElement.StepElement_HArray1OfMeasureOrUnspecifiedValue_ChangeArray1(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HArray1OfMeasureOrUnspecifiedValue

# Register StepElement_HArray1OfMeasureOrUnspecifiedValue in _StepElement:
_StepElement.StepElement_HArray1OfMeasureOrUnspecifiedValue_swigregister(StepElement_HArray1OfMeasureOrUnspecifiedValue)
class StepElement_HArray1OfCurveElementEndReleasePacket(StepElement_Array1OfCurveElementEndReleasePacket, 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):
        _StepElement.StepElement_HArray1OfCurveElementEndReleasePacket_swiginit(self, _StepElement.new_StepElement_HArray1OfCurveElementEndReleasePacket(*args))

    def Array1(self):
        return _StepElement.StepElement_HArray1OfCurveElementEndReleasePacket_Array1(self)

    def ChangeArray1(self):
        return _StepElement.StepElement_HArray1OfCurveElementEndReleasePacket_ChangeArray1(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HArray1OfCurveElementEndReleasePacket

# Register StepElement_HArray1OfCurveElementEndReleasePacket in _StepElement:
_StepElement.StepElement_HArray1OfCurveElementEndReleasePacket_swigregister(StepElement_HArray1OfCurveElementEndReleasePacket)
class StepElement_HArray1OfVolumeElementPurposeMember(StepElement_Array1OfVolumeElementPurposeMember, 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):
        _StepElement.StepElement_HArray1OfVolumeElementPurposeMember_swiginit(self, _StepElement.new_StepElement_HArray1OfVolumeElementPurposeMember(*args))

    def Array1(self):
        return _StepElement.StepElement_HArray1OfVolumeElementPurposeMember_Array1(self)

    def ChangeArray1(self):
        return _StepElement.StepElement_HArray1OfVolumeElementPurposeMember_ChangeArray1(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HArray1OfVolumeElementPurposeMember

# Register StepElement_HArray1OfVolumeElementPurposeMember in _StepElement:
_StepElement.StepElement_HArray1OfVolumeElementPurposeMember_swigregister(StepElement_HArray1OfVolumeElementPurposeMember)
class StepElement_HArray2OfCurveElementPurposeMember(StepElement_Array2OfCurveElementPurposeMember, 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):
        _StepElement.StepElement_HArray2OfCurveElementPurposeMember_swiginit(self, _StepElement.new_StepElement_HArray2OfCurveElementPurposeMember(*args))

    def Array2(self):
        return _StepElement.StepElement_HArray2OfCurveElementPurposeMember_Array2(self)

    def ChangeArray2(self):
        return _StepElement.StepElement_HArray2OfCurveElementPurposeMember_ChangeArray2(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HArray2OfCurveElementPurposeMember

# Register StepElement_HArray2OfCurveElementPurposeMember in _StepElement:
_StepElement.StepElement_HArray2OfCurveElementPurposeMember_swigregister(StepElement_HArray2OfCurveElementPurposeMember)
class StepElement_HArray2OfSurfaceElementPurposeMember(StepElement_Array2OfSurfaceElementPurposeMember, 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):
        _StepElement.StepElement_HArray2OfSurfaceElementPurposeMember_swiginit(self, _StepElement.new_StepElement_HArray2OfSurfaceElementPurposeMember(*args))

    def Array2(self):
        return _StepElement.StepElement_HArray2OfSurfaceElementPurposeMember_Array2(self)

    def ChangeArray2(self):
        return _StepElement.StepElement_HArray2OfSurfaceElementPurposeMember_ChangeArray2(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HArray2OfSurfaceElementPurposeMember

# Register StepElement_HArray2OfSurfaceElementPurposeMember in _StepElement:
_StepElement.StepElement_HArray2OfSurfaceElementPurposeMember_swigregister(StepElement_HArray2OfSurfaceElementPurposeMember)
class StepElement_HArray2OfSurfaceElementPurpose(StepElement_Array2OfSurfaceElementPurpose, 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):
        _StepElement.StepElement_HArray2OfSurfaceElementPurpose_swiginit(self, _StepElement.new_StepElement_HArray2OfSurfaceElementPurpose(*args))

    def Array2(self):
        return _StepElement.StepElement_HArray2OfSurfaceElementPurpose_Array2(self)

    def ChangeArray2(self):
        return _StepElement.StepElement_HArray2OfSurfaceElementPurpose_ChangeArray2(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HArray2OfSurfaceElementPurpose

# Register StepElement_HArray2OfSurfaceElementPurpose in _StepElement:
_StepElement.StepElement_HArray2OfSurfaceElementPurpose_swigregister(StepElement_HArray2OfSurfaceElementPurpose)
class StepElement_HSequenceOfElementMaterial(StepElement_SequenceOfElementMaterial, 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):
        _StepElement.StepElement_HSequenceOfElementMaterial_swiginit(self, _StepElement.new_StepElement_HSequenceOfElementMaterial(*args))

    def Sequence(self):
        return _StepElement.StepElement_HSequenceOfElementMaterial_Sequence(self)

    def Append(self, *args):
        return _StepElement.StepElement_HSequenceOfElementMaterial_Append(self, *args)

    def ChangeSequence(self):
        return _StepElement.StepElement_HSequenceOfElementMaterial_ChangeSequence(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HSequenceOfElementMaterial

# Register StepElement_HSequenceOfElementMaterial in _StepElement:
_StepElement.StepElement_HSequenceOfElementMaterial_swigregister(StepElement_HSequenceOfElementMaterial)
class StepElement_HSequenceOfCurveElementPurposeMember(StepElement_SequenceOfCurveElementPurposeMember, 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):
        _StepElement.StepElement_HSequenceOfCurveElementPurposeMember_swiginit(self, _StepElement.new_StepElement_HSequenceOfCurveElementPurposeMember(*args))

    def Sequence(self):
        return _StepElement.StepElement_HSequenceOfCurveElementPurposeMember_Sequence(self)

    def Append(self, *args):
        return _StepElement.StepElement_HSequenceOfCurveElementPurposeMember_Append(self, *args)

    def ChangeSequence(self):
        return _StepElement.StepElement_HSequenceOfCurveElementPurposeMember_ChangeSequence(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HSequenceOfCurveElementPurposeMember

# Register StepElement_HSequenceOfCurveElementPurposeMember in _StepElement:
_StepElement.StepElement_HSequenceOfCurveElementPurposeMember_swigregister(StepElement_HSequenceOfCurveElementPurposeMember)
class StepElement_HSequenceOfCurveElementSectionDefinition(StepElement_SequenceOfCurveElementSectionDefinition, 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):
        _StepElement.StepElement_HSequenceOfCurveElementSectionDefinition_swiginit(self, _StepElement.new_StepElement_HSequenceOfCurveElementSectionDefinition(*args))

    def Sequence(self):
        return _StepElement.StepElement_HSequenceOfCurveElementSectionDefinition_Sequence(self)

    def Append(self, *args):
        return _StepElement.StepElement_HSequenceOfCurveElementSectionDefinition_Append(self, *args)

    def ChangeSequence(self):
        return _StepElement.StepElement_HSequenceOfCurveElementSectionDefinition_ChangeSequence(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HSequenceOfCurveElementSectionDefinition

# Register StepElement_HSequenceOfCurveElementSectionDefinition in _StepElement:
_StepElement.StepElement_HSequenceOfCurveElementSectionDefinition_swigregister(StepElement_HSequenceOfCurveElementSectionDefinition)
class StepElement_HSequenceOfSurfaceElementPurposeMember(StepElement_SequenceOfSurfaceElementPurposeMember, 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):
        _StepElement.StepElement_HSequenceOfSurfaceElementPurposeMember_swiginit(self, _StepElement.new_StepElement_HSequenceOfSurfaceElementPurposeMember(*args))

    def Sequence(self):
        return _StepElement.StepElement_HSequenceOfSurfaceElementPurposeMember_Sequence(self)

    def Append(self, *args):
        return _StepElement.StepElement_HSequenceOfSurfaceElementPurposeMember_Append(self, *args)

    def ChangeSequence(self):
        return _StepElement.StepElement_HSequenceOfSurfaceElementPurposeMember_ChangeSequence(self)


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

    __swig_destroy__ = _StepElement.delete_StepElement_HSequenceOfSurfaceElementPurposeMember

# Register StepElement_HSequenceOfSurfaceElementPurposeMember in _StepElement:
_StepElement.StepElement_HSequenceOfSurfaceElementPurposeMember_swigregister(StepElement_HSequenceOfSurfaceElementPurposeMember)



