PbTetrahedronMesh3D Class Reference
[Property/Data]

MeshViz Defines a mesh of tetrahedrons. More...

#include <MeshViz/3Ddata/PbTetrahedronMesh3D.h>

Inheritance diagram for PbTetrahedronMesh3D:
PbIndexedMesh3D PbMesh3D PbMesh PbBase

List of all members.

Public Member Functions

 PbTetrahedronMesh3D (SbBool isDataDuplicate=TRUE)
 PbTetrahedronMesh3D (const PbTetrahedronMesh3D &mesh)
 PbTetrahedronMesh3D (int num_nodes, const float *x_nod, const float *y_nod, const float *z_nod, int num_tetrahedrons, const int *tetrahedron_index, SbBool is_data_duplicate=TRUE)
 ~PbTetrahedronMesh3D ()
PbTetrahedronMesh3Doperator= (const PbTetrahedronMesh3D &mesh)
virtual void setGeometry (int num_nodes, const float *x_nod, const float *y_nod, const float *z_nod, int num_tetrahedrons, const int *tetrahedron_index)
virtual void getGeometry (int &num_nodes, const float *&x_nod, const float *&y_nod, const float *&z_nod, int &num_tetrahedrons, const int *&tetrahedron_index) const
virtual void getNodesOwnerCellsInd (const PbArrayOfInt &nod_indices, PbArrayOfInt &owner_cells) const
virtual const PbCellgetCell (int cell_index) const

Friends

int operator== (const PbTetrahedronMesh3D &m1, const PbTetrahedronMesh3D &m2)
int operator!= (const PbTetrahedronMesh3D &m1, const PbTetrahedronMesh3D &m2)

Deprecated



virtual SoDEPRECATED void getGeometry (int &num_nodes, const float *&x_nod, const float *&y_nod, const float *&z_nod, int &num_tetrahedrons, const int **&tetrahedron_index) const

Detailed Description

MeshViz Defines a mesh of tetrahedrons.

Class to define an indexed 3D mesh made up of tetrahedrons. This mesh is defined by a list of tetrahedrons. Each tetrahedron is defined by 4 indices of nodes.

The nodes coordinates are defined by 3 arrays x_nod, y_nod, z_nod of num_nodes floats. The tetrahedrons are defined by the array tetrahedron_index of num_tetrahedrons*4 integers. tetrahedron_index[(n*4)+p] is the p-th node index of the n-th tetrahedron of the mesh (0 <= p <= 3). Each tetrahedron must be numbered by repecting the following rule : the 3 first indices define a facet of the tetrahedron and orient it towards the interior of the tetrahedron.

Each facet of a tetrahedron may have 2 references in the mesh, that is, one facet is common to 2 tetrahedrons. The facets which are referred to once in the mesh define the mesh skin.

The values on the mesh nodes are defined by the PbMesh::addValuesSet(set_index,val) method, where val argument is an array of num_nodes floats.


Constructor & Destructor Documentation

PbTetrahedronMesh3D::PbTetrahedronMesh3D ( SbBool  isDataDuplicate = TRUE  ) 

Constructor of a default simple mesh.

See also PbMesh for more explanations about data duplication.

PbTetrahedronMesh3D::PbTetrahedronMesh3D ( const PbTetrahedronMesh3D mesh  ) 

Copy constructor.

PbTetrahedronMesh3D::PbTetrahedronMesh3D ( int  num_nodes,
const float *  x_nod,
const float *  y_nod,
const float *  z_nod,
int  num_tetrahedrons,
const int *  tetrahedron_index,
SbBool  is_data_duplicate = TRUE 
)

Constructor of a volume mesh.

See also PbMesh for more explanations about data duplication.

PbTetrahedronMesh3D::~PbTetrahedronMesh3D (  ) 

Destructor.


Member Function Documentation

virtual const PbCell* PbTetrahedronMesh3D::getCell ( int  cell_index  )  const [virtual]

Gets the cell which index is cell_index.

Returns NULL if the cell does not exist or if it is incorrect (flat), otherwise returns always a PbTetrahedronCell object. Attention! this method returns always the same adress of an internal private cell. This private cell is updated each time getCell is called.

Reimplemented from PbIndexedMesh3D.

virtual SoDEPRECATED void PbTetrahedronMesh3D::getGeometry ( int &  num_nodes,
const float *&  x_nod,
const float *&  y_nod,
const float *&  z_nod,
int &  num_tetrahedrons,
const int **&  tetrahedron_index 
) const [virtual]

Gets the current mesh geometry.

tetrahedron_index must be used like a matrix. (i.e. tetrahedron_index[cell_index][n], with 0 <= n <= 3)

Deprecated:

Deprecated since Open Inventor 8000
No longer used.
virtual void PbTetrahedronMesh3D::getGeometry ( int &  num_nodes,
const float *&  x_nod,
const float *&  y_nod,
const float *&  z_nod,
int &  num_tetrahedrons,
const int *&  tetrahedron_index 
) const [virtual]

Gets the current mesh geometry.

tetrahedron_index must be used like a vector (i.e. tetrahedron_index[n])

virtual void PbTetrahedronMesh3D::getNodesOwnerCellsInd ( const PbArrayOfInt nod_indices,
PbArrayOfInt owner_cells 
) const [virtual]

Gets the list of index of cells that own the list of node "nod_indices" (for example nod_indices can be the list of indices of a facet, an edge.

..)

Reimplemented from PbMesh.

PbTetrahedronMesh3D& PbTetrahedronMesh3D::operator= ( const PbTetrahedronMesh3D mesh  ) 

Assignment operator.

Reimplemented from PbIndexedMesh3D.

virtual void PbTetrahedronMesh3D::setGeometry ( int  num_nodes,
const float *  x_nod,
const float *  y_nod,
const float *  z_nod,
int  num_tetrahedrons,
const int *  tetrahedron_index 
) [virtual]

Sets a new geometry.


Friends And Related Function Documentation

int operator!= ( const PbTetrahedronMesh3D m1,
const PbTetrahedronMesh3D m2 
) [friend]

Inequality comparison operator.

Reimplemented from PbIndexedMesh3D.

int operator== ( const PbTetrahedronMesh3D m1,
const PbTetrahedronMesh3D m2 
) [friend]

Equality comparison operator.

Reimplemented from PbIndexedMesh3D.


The documentation for this class was generated from the following file:

Open Inventor Toolkit reference manual, generated on 4 Sep 2023
Copyright © Thermo Fisher Scientific All rights reserved.
https://www.openinventor.com/