# OCC.StlMesh module

class `Handle_StlMesh_Mesh`(*args)

  Bases: `OCC.MMgt.Handle_MMgt_TShared`

  static `DownCast`()
  `GetObject`()
  `IsNull`()
  `Nullify`()
  `thisown`

    The membership flag

class `Handle_StlMesh_MeshDomain`(*args)

  Bases: `OCC.MMgt.Handle_MMgt_TShared`

  static `DownCast`()
  `GetObject`()
  `IsNull`()
  `Nullify`()
  `thisown`

    The membership flag

class `Handle_StlMesh_MeshTriangle`(*args)

  Bases: `OCC.MMgt.Handle_MMgt_TShared`

  static `DownCast`()
  `GetObject`()
  `IsNull`()
  `Nullify`()
  `thisown`

    The membership flag

class `Handle_StlMesh_SequenceNodeOfSequenceOfMesh`(*args)

  Bases: `OCC.TCollection.Handle_TCollection_SeqNode`

  static `DownCast`()
  `GetObject`()
  `IsNull`()
  `Nullify`()
  `thisown`

    The membership flag

class `Handle_StlMesh_SequenceNodeOfSequenceOfMeshDomain`(*args)

  Bases: `OCC.TCollection.Handle_TCollection_SeqNode`

  static `DownCast`()
  `GetObject`()
  `IsNull`()
  `Nullify`()
  `thisown`

    The membership flag

class `Handle_StlMesh_SequenceNodeOfSequenceOfMeshTriangle`(*args)

  Bases: `OCC.TCollection.Handle_TCollection_SeqNode`

  static `DownCast`()
  `GetObject`()
  `IsNull`()
  `Nullify`()
  `thisown`

    The membership flag

class `StlMesh_Mesh`(*args)

  Bases: `OCC.MMgt.MMgt_TShared`

  - Creates an empty mesh.

  Return type: | None

  `AddDomain`()
    - Adds a new mesh domain. The mesh deflection is defaulted to Confusion from package Precision.

    Return type: | void

    - Adds a new mesh domain. Raised if the deflection is lower than zero Raised if the deflection is lower than Confusion from package Precision

    Parameters: | Deflection (float) –
    Return type: | void

  `AddOnlyNewVertex`()
    - Returns the range of the vertex in the current domain. The current vertex is not inserted in the mesh if it already exist.

    Parameters: | X (float) – Y (float) – Z (float) –
    Return type: | int

  `AddTriangle`()
    - Build a triangle with the triplet of vertices (V1, V2, V3). This triplet defines the indexes of the vertex in the current domain The coordinates Xn, Yn, Zn defines the normal direction to the triangle. Returns the range of the triangle in the current domain.

    Parameters: | V1 (int) – V2 (int) – V3 (int) – Xn (float) – Yn (float) – Zn (float) –
    Return type: | int

  `AddVertex`()
    - Returns the range of the vertex in the current domain.

    Parameters: | X (float) – Y (float) – Z (float) –
    Return type: | int

  `Bounds`()
    - Each vertex of the mesh verifies the following relations : XYZMin.X() <= X <= XYZMax.X() XYZMin.Y() <= Y <= XYZMax.y() XYZMin.Z() <= Z <= XYZMax.Z()

    Parameters: | XYZmax (gp_XYZ) – XYZmin (gp_XYZ) –
    Return type: | void

  `Clear`()

    Return type: | void

  `Deflection`()
    - Returns the deflection of the mesh of the domain of range <DomainIndex>. Raised if <DomainIndex> is lower than 1 or greater than the number of domains.

    Parameters: | DomainIndex (int) –
    Return type: | float

  `GetHandle`()
  `IsEmpty`()

    Return type: | bool

  `NbDomains`()
    - Number of domains in the mesh.

    Return type: | int

  `NbTriangles`()
    - Cumulative Number of triangles in the mesh.

    Return type: | int

    - Number of triangles in the domain of range <DomainIndex>. Raised if <DomainIndex> is lower than 1 or greater than the number of domains.

    Parameters: | DomainIndex (int) –
    Return type: | int

  `NbVertices`()
    - Cumulative Number of vertices in the mesh.

    Return type: | int

    - Number of vertices in the domain of range <DomainIndex>. Raised if <DomainIndex> is lower than 1 or greater than the number of domains.

    Parameters: | DomainIndex (int) –
    Return type: | int

  `Triangles`()
    - Returns the set of triangle of the mesh domain of range <DomainIndex>. Raised if <DomainIndex> is lower than 1 or greater than the number of domains.

    Parameters: | DomainIndex (int) – default value is 1
    Return type: | StlMesh_SequenceOfMeshTriangle

  `Vertices`()
    - Returns the coordinates of the vertices of the mesh domain of range <DomainIndex>. {XV1, YV1, ZV1, XV2, YV2, ZV2, XV3,…..} Raised if <DomainIndex> is lower than 1 or greater than the number of domains.

    Parameters: | DomainIndex (int) – default value is 1
    Return type: | TColgp_SequenceOfXYZ

  `thisown`

    The membership flag

class `StlMesh_MeshDomain`(*args)

  Bases: `OCC.MMgt.MMgt_TShared`

  - The mesh deflection is defaulted to Confusion from package Precision.

  Return type: | None

  - Raised if the deflection is lower than zero Raised if the deflection is lower than Confusion from package Precision

  Parameters: | Deflection (float) –
  Return type: | None

  `AddOnlyNewVertex`()
    - Returns the range of the vertex in the current domain. The current vertex is not inserted in the mesh if it already exist.

    Parameters: | X (float) – Y (float) – Z (float) – IsNew (bool) –
    Return type: | int

  `AddTriangle`()
    - Build a triangle with the triplet of vertices (V1, V2, V3). This triplet defines the indexes of the vertex in the current domain The coordinates Xn, Yn, Zn defines the normal direction to the triangle. Returns the range of the triangle in the current domain.

    Parameters: | V1 (int) – V2 (int) – V3 (int) – Xn (float) – Yn (float) – Zn (float) –
    Return type: | int

  `AddVertex`()
    - Returns the range of the vertex in the current domain.

    Parameters: | X (float) – Y (float) – Z (float) –
    Return type: | int

  `Deflection`()

    Return type: | float

  `GetHandle`()
  `NbTriangles`()
    - Number of triangles in the mesh.

    Return type: | int

  `NbVertices`()
    - Number of vertices in the mesh.

    Return type: | int

  `Triangles`()
    - Returns the set of triangles of the current mesh domain

    Return type: | StlMesh_SequenceOfMeshTriangle

  `Vertices`()
    - Returns the coordinates of the vertices of the mesh domain of range <DomainIndex>. {XV1, YV1, ZV1, XV2, YV2, ZV2, XV3,…..}

    Return type: | TColgp_SequenceOfXYZ

  `thisown`

    The membership flag

class `StlMesh_MeshExplorer`(*args)

  Bases: `object`

  Parameters: | M (Handle_StlMesh_Mesh &) –
  Return type: | None

  `Deflection`()
    - Returns the mesh deflection of the current domain.

    Return type: | float

  `InitTriangle`()
    - Initializes the exploration of the triangles of the mesh domain of range <DomainIndex>. Raised if <DomainIndex> is lower than 1 or greater than the number of domains.

    Parameters: | DomainIndex (int) – default value is 1
    Return type: | None

  `MoreTriangle`()

    Return type: | bool

  `NextTriangle`()
    - Raised if there is no more triangle in the current domain.

    Return type: | None

  `TriangleOrientation`()
    - Raised if there is no more triangle in the current domain.

    Parameters: | Xn (float &) – Yn (float &) – Zn (float &) –
    Return type: | None

  `TriangleVertices`()
    - Raised if there is no more triangle in the current domain.

    Parameters: | X1 (float &) – Y1 (float &) – Z1 (float &) – X2 (float &) – Y2 (float &) – Z2 (float &) – X3 (float &) – Y3 (float &) – Z3 (float &) –
    Return type: | None

  `thisown`

    The membership flag

class `StlMesh_MeshTriangle`(*args)

  Bases: `OCC.MMgt.MMgt_TShared`

  - empty constructor

  Return type: | None

  - create a triangle defined with the indexes of its three vertices and its orientation Raised if V1, V2 or V3 is lower than zero

  Parameters: | V1 (int) – V2 (int) – V3 (int) – Xn (float) – Yn (float) – Zn (float) –
  Return type: | None

  `GetHandle`()
  `GetVertex`()
    - get indexes of the three vertices (V1,V2,V3)

    Parameters: | V1 (int &) – V2 (int &) – V3 (int &) –
    Return type: | None

  `GetVertexAndOrientation`()
    - get indexes of the three vertices (V1,V2,V3) and the orientation

    Parameters: | V1 (int &) – V2 (int &) – V3 (int &) – Xn (float &) – Yn (float &) – Zn (float &) –
    Return type: | None

  `SetVertex`()
    - set indexes of the three vertices (V1,V2,V3) Raised if V1, V2 or V3 is lower than zero

    Parameters: | V1 (int) – V2 (int) – V3 (int) –
    Return type: | None

  `SetVertexAndOrientation`()
    - set indexes of the three vertices (V1,V2,V3) and the orientation Raised if V1, V2 or V3 is lower than zero

    Parameters: | V1 (int) – V2 (int) – V3 (int) – Xn (float) – Yn (float) – Zn (float) –
    Return type: | None

  `thisown`

    The membership flag

class `StlMesh_SequenceNodeOfSequenceOfMesh`(*args)

  Bases: `OCC.TCollection.TCollection_SeqNode`

  Parameters: | I (Handle_StlMesh_Mesh &) – n (TCollection_SeqNodePtr &) – p (TCollection_SeqNodePtr &) –
  Return type: | None

  `GetHandle`()
  `Value`()

    Return type: | Handle_StlMesh_Mesh

  `thisown`

    The membership flag

class `StlMesh_SequenceNodeOfSequenceOfMeshDomain`(*args)

  Bases: `OCC.TCollection.TCollection_SeqNode`

  Parameters: | I (Handle_StlMesh_MeshDomain &) – n (TCollection_SeqNodePtr &) – p (TCollection_SeqNodePtr &) –
  Return type: | None

  `GetHandle`()
  `Value`()

    Return type: | Handle_StlMesh_MeshDomain

  `thisown`

    The membership flag

class `StlMesh_SequenceNodeOfSequenceOfMeshTriangle`(*args)

  Bases: `OCC.TCollection.TCollection_SeqNode`

  Parameters: | I (Handle_StlMesh_MeshTriangle &) – n (TCollection_SeqNodePtr &) – p (TCollection_SeqNodePtr &) –
  Return type: | None

  `GetHandle`()
  `Value`()

    Return type: | Handle_StlMesh_MeshTriangle

  `thisown`

    The membership flag

class `StlMesh_SequenceOfMesh`(*args)

  Bases: `OCC.TCollection.TCollection_BaseSequence`

  Return type: | None
  Parameters: | Other (StlMesh_SequenceOfMesh &) –
  Return type: | None

  `Append`()

    Parameters: | T (Handle_StlMesh_Mesh &) – S (StlMesh_SequenceOfMesh &) –
    Return type: | None
    Return type: | None

  `Assign`()

    Parameters: | Other (StlMesh_SequenceOfMesh &) –
    Return type: | StlMesh_SequenceOfMesh

  `ChangeValue`()

    Parameters: | Index (int) –
    Return type: | Handle_StlMesh_Mesh

  `Clear`()

    Return type: | None

  `First`()

    Return type: | Handle_StlMesh_Mesh

  `InsertAfter`()

    Parameters: | Index (int) – T (Handle_StlMesh_Mesh &) – Index – S (StlMesh_SequenceOfMesh &) –
    Return type: | None
    Return type: | None

  `InsertBefore`()

    Parameters: | Index (int) – T (Handle_StlMesh_Mesh &) – Index – S (StlMesh_SequenceOfMesh &) –
    Return type: | None
    Return type: | None

  `Last`()

    Return type: | Handle_StlMesh_Mesh

  `Prepend`()

    Parameters: | T (Handle_StlMesh_Mesh &) – S (StlMesh_SequenceOfMesh &) –
    Return type: | None
    Return type: | None

  `Remove`()

    Parameters: | Index (int) – FromIndex (int) – ToIndex (int) –
    Return type: | None
    Return type: | None

  `Set`()

    Parameters: | Other (StlMesh_SequenceOfMesh &) –
    Return type: | StlMesh_SequenceOfMesh

  `SetValue`()

    Parameters: | Index (int) – I (Handle_StlMesh_Mesh &) –
    Return type: | None

  `Split`()

    Parameters: | Index (int) – Sub (StlMesh_SequenceOfMesh &) –
    Return type: | None

  `Value`()

    Parameters: | Index (int) –
    Return type: | Handle_StlMesh_Mesh

  `thisown`

    The membership flag

class `StlMesh_SequenceOfMeshDomain`(*args)

  Bases: `OCC.TCollection.TCollection_BaseSequence`

  Return type: | None
  Parameters: | Other (StlMesh_SequenceOfMeshDomain &) –
  Return type: | None

  `Append`()

    Parameters: | T (Handle_StlMesh_MeshDomain &) – S (StlMesh_SequenceOfMeshDomain &) –
    Return type: | None
    Return type: | None

  `Assign`()

    Parameters: | Other (StlMesh_SequenceOfMeshDomain &) –
    Return type: | StlMesh_SequenceOfMeshDomain

  `ChangeValue`()

    Parameters: | Index (int) –
    Return type: | Handle_StlMesh_MeshDomain

  `Clear`()

    Return type: | None

  `First`()

    Return type: | Handle_StlMesh_MeshDomain

  `InsertAfter`()

    Parameters: | Index (int) – T (Handle_StlMesh_MeshDomain &) – Index – S (StlMesh_SequenceOfMeshDomain &) –
    Return type: | None
    Return type: | None

  `InsertBefore`()

    Parameters: | Index (int) – T (Handle_StlMesh_MeshDomain &) – Index – S (StlMesh_SequenceOfMeshDomain &) –
    Return type: | None
    Return type: | None

  `Last`()

    Return type: | Handle_StlMesh_MeshDomain

  `Prepend`()

    Parameters: | T (Handle_StlMesh_MeshDomain &) – S (StlMesh_SequenceOfMeshDomain &) –
    Return type: | None
    Return type: | None

  `Remove`()

    Parameters: | Index (int) – FromIndex (int) – ToIndex (int) –
    Return type: | None
    Return type: | None

  `Set`()

    Parameters: | Other (StlMesh_SequenceOfMeshDomain &) –
    Return type: | StlMesh_SequenceOfMeshDomain

  `SetValue`()

    Parameters: | Index (int) – I (Handle_StlMesh_MeshDomain &) –
    Return type: | None

  `Split`()

    Parameters: | Index (int) – Sub (StlMesh_SequenceOfMeshDomain &) –
    Return type: | None

  `Value`()

    Parameters: | Index (int) –
    Return type: | Handle_StlMesh_MeshDomain

  `thisown`

    The membership flag

class `StlMesh_SequenceOfMeshTriangle`(*args)

  Bases: `OCC.TCollection.TCollection_BaseSequence`

  Return type: | None
  Parameters: | Other (StlMesh_SequenceOfMeshTriangle &) –
  Return type: | None

  `Append`()

    Parameters: | T (Handle_StlMesh_MeshTriangle &) – S (StlMesh_SequenceOfMeshTriangle &) –
    Return type: | None
    Return type: | None

  `Assign`()

    Parameters: | Other (StlMesh_SequenceOfMeshTriangle &) –
    Return type: | StlMesh_SequenceOfMeshTriangle

  `ChangeValue`()

    Parameters: | Index (int) –
    Return type: | Handle_StlMesh_MeshTriangle

  `Clear`()

    Return type: | None

  `First`()

    Return type: | Handle_StlMesh_MeshTriangle

  `InsertAfter`()

    Parameters: | Index (int) – T (Handle_StlMesh_MeshTriangle &) – Index – S (StlMesh_SequenceOfMeshTriangle &) –
    Return type: | None
    Return type: | None

  `InsertBefore`()

    Parameters: | Index (int) – T (Handle_StlMesh_MeshTriangle &) – Index – S (StlMesh_SequenceOfMeshTriangle &) –
    Return type: | None
    Return type: | None

  `Last`()

    Return type: | Handle_StlMesh_MeshTriangle

  `Prepend`()

    Parameters: | T (Handle_StlMesh_MeshTriangle &) – S (StlMesh_SequenceOfMeshTriangle &) –
    Return type: | None
    Return type: | None

  `Remove`()

    Parameters: | Index (int) – FromIndex (int) – ToIndex (int) –
    Return type: | None
    Return type: | None

  `Set`()

    Parameters: | Other (StlMesh_SequenceOfMeshTriangle &) –
    Return type: | StlMesh_SequenceOfMeshTriangle

  `SetValue`()

    Parameters: | Index (int) – I (Handle_StlMesh_MeshTriangle &) –
    Return type: | None

  `Split`()

    Parameters: | Index (int) – Sub (StlMesh_SequenceOfMeshTriangle &) –
    Return type: | None

  `Value`()

    Parameters: | Index (int) –
    Return type: | Handle_StlMesh_MeshTriangle

  `thisown`

    The membership flag

class `SwigPyIterator`(*args, **kwargs)

  Bases: `object`

  `advance`()
  `copy`()
  `decr`()
  `distance`()
  `equal`()
  `incr`()
  `next`()
  `previous`()
  `thisown`

    The membership flag

  `value`()

`register_handle`(handle, base_object)

  Inserts the handle into the base object to prevent memory corruption in certain cases

class `stlmesh`

  Bases: `object`

  static `Merge`(*args)
    - Sequence of meshes Make a merge of two Mesh and returns a new Mesh. Very useful if you want to merge partMesh and CheckSurfaceMesh for example

    Parameters: | mesh1 (Handle_StlMesh_Mesh &) – mesh2 (Handle_StlMesh_Mesh &) –
    Return type: | Handle_StlMesh_Mesh

  `thisown`

    The membership flag

`stlmesh_Merge`(*args)
  - Sequence of meshes Make a merge of two Mesh and returns a new Mesh. Very useful if you want to merge partMesh and CheckSurfaceMesh for example

  Parameters: | mesh1 (Handle_StlMesh_Mesh &) – mesh2 (Handle_StlMesh_Mesh &) –
  Return type: | Handle_StlMesh_Mesh