Open Inventor Release 2023.2.3
 
Loading...
Searching...
No Matches
PbPixelCell Class Reference

MeshViz Defines a pixel cell of a surface mesh. More...

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

+ Inheritance diagram for PbPixelCell:

Public Member Functions

 PbPixelCell (const PbMesh *owner_mesh)
 Constructor of a default simple cell.
 
 PbPixelCell (const PbPixelCell &cell)
 Copy constructor.
 
 ~PbPixelCell ()
 Destructor.
 
PbPixelCelloperator= (const PbPixelCell &cell)
 Assignment operator.
 
float getLongestEdgeLength () const
 Gets the length of the longest edge of the cell.
 
SbBox3f getBoundingBox () const
 Gets the cell's bounding box.
 
void getBounds (float &xmin, float &ymin, float &zmin, float &xmax, float &ymax, float &zmax) const
 Gets the cell's bounds.
 
SbVec3f getCenter () const
 Gets the cell's geometric center.
 
float getVolume () const
 Returns always 0.
 
float getArea () const
 Gets the area of a cell.
 
virtual void getNodesIndexOfEdge (int edge, PbArrayOfInt &nodes_index) const
 Gets the array of 2 index mesh's nodes that belongs to a given edge of this cell.
 
virtual void getNodesIndexOfFacet (int facet, PbArrayOfInt &nodes_index) const
 Gets the array of index mesh's nodes that belongs to a given facet of this cell.
 
virtual void getNodesLocalIndexOfEdge (int edge, PbArrayOfInt &nodes_index) const
 Gets the array of 2 nodes index that belongs to a given edge of this cell.
 
virtual void getNodesLocalIndexOfFacet (int facet, PbArrayOfInt &nodes_index) const
 Gets the array of node index that belongs to a given facet of this cell.
 
virtual int locatePoint (const SbVec3f &coord, float tolerance, SbVec3f &pcoord) const
 Returns 1 if the point is inside the cell, 0 otherwise.
 
virtual void getWeight (const SbVec3f &pcoord, float *weight) const
 Gets the 4 weights of a point defined by its parametric coordinates.
 
float getValue (const SbVec3f &pcoord, const float *s) const
 Get the scalar value of a point in the cell.
 
SbVec3f getValue (const SbVec3f &pcoord, const SbVec3f *v) const
 Get the vector value of a point in the cell.
 
- Public Member Functions inherited from PbCell
 PbCell ()
 Constructor.
 
 PbCell (const PbCell &cell)
 Copy constructor.
 
 ~PbCell ()
 Destructor.
 
PbCelloperator= (const PbCell &cell)
 Assignment operator.
 
int getNumFacets () const
 Gets the number of facets.
 
int getNumEdges () const
 Gets the number of edges.
 
int getNumNodes () const
 Gets the number of nodes.
 
int getIndex () const
 Gets the index of the cell in the mesh.
 
SbVec3f getNodeCoord (int nod) const
 Gets the coordinate of the nod (nod must be >=0 and < getNumNodes()).
 
int getNodeIndex (int nod) const
 Gets the index (in the mesh) of a nod (nod must be >=0 and < getNumNodes()).
 
void getNodesIndex (PbArrayOfInt &nodes_index) const
 Gets the array of index mesh's nodes that belongs to this cell.
 
float getValue (const float *weight, const float *s) const
 Gets the scalar value of a point in this cell, given the point's weights.
 
SbVec3f getValue (const float *weight, const SbVec3f *v) const
 Gets the vector value of a point in this cell, given the point's weights.
 
- Public Member Functions inherited from PbBase
void enableConnection (SbBool flag)
 Activates/deactivates the mechanism of connection.
 
SbBool isConnectionEnabled () const
 Returns TRUE if the connection mechanism is active, otherwise FALSE.
 
void touch ()
 Simulates the changing of an instance of this object, so all connected objects are informed of this change.
 
PbBaseoperator= (const PbBase &base)
 Assignment operator.
 

Detailed Description

MeshViz Defines a pixel cell of a surface mesh.

A pixel cell is a rectangle of which edges are parallel to X, Y axes.

Nodes and edges are numbered as following :

                        3-----------2   edge 0 = 01
   j                    |           |   edge 1 = 12
                        |           |   edge 2 = 23
   |                    |           |   edge 3 = 30
   |                    |           |
   |                    |           |
   x------> i           0-----------1

Definition at line 51 of file PbPixelCell.h.

Constructor & Destructor Documentation

◆ PbPixelCell() [1/2]

PbPixelCell::PbPixelCell ( const PbMesh owner_mesh)

Constructor of a default simple cell.

◆ PbPixelCell() [2/2]

PbPixelCell::PbPixelCell ( const PbPixelCell cell)

Copy constructor.

◆ ~PbPixelCell()

PbPixelCell::~PbPixelCell ( )

Destructor.

Member Function Documentation

◆ getArea()

float PbPixelCell::getArea ( ) const
inlinevirtual

Gets the area of a cell.

Implements PbCell.

Definition at line 106 of file PbPixelCell.h.

◆ getBoundingBox()

SbBox3f PbPixelCell::getBoundingBox ( ) const
virtual

Gets the cell's bounding box.

Reimplemented from PbCell.

◆ getBounds()

void PbPixelCell::getBounds ( float &  xmin,
float &  ymin,
float &  zmin,
float &  xmax,
float &  ymax,
float &  zmax 
) const
virtual

Gets the cell's bounds.

Similar to getBoundingBox() but it does not use any SbBox object.

Reimplemented from PbCell.

◆ getCenter()

SbVec3f PbPixelCell::getCenter ( ) const
virtual

Gets the cell's geometric center.

Reimplemented from PbCell.

◆ getLongestEdgeLength()

float PbPixelCell::getLongestEdgeLength ( ) const
virtual

Gets the length of the longest edge of the cell.

Implements PbCell.

◆ getNodesIndexOfEdge()

virtual void PbPixelCell::getNodesIndexOfEdge ( int  edge,
PbArrayOfInt nodes_index 
) const
virtual

Gets the array of 2 index mesh's nodes that belongs to a given edge of this cell.

(edge must be >=0 and < 4)

Implements PbCell.

◆ getNodesIndexOfFacet()

virtual void PbPixelCell::getNodesIndexOfFacet ( int  facet,
PbArrayOfInt nodes_index 
) const
virtual

Gets the array of index mesh's nodes that belongs to a given facet of this cell.

(facet must be == 0).

Implements PbCell.

◆ getNodesLocalIndexOfEdge()

virtual void PbPixelCell::getNodesLocalIndexOfEdge ( int  edge,
PbArrayOfInt nodes_index 
) const
virtual

Gets the array of 2 nodes index that belongs to a given edge of this cell.

edge must be >=0 and < 4. Each index is >=0 and < 4

Implements PbCell.

◆ getNodesLocalIndexOfFacet()

virtual void PbPixelCell::getNodesLocalIndexOfFacet ( int  facet,
PbArrayOfInt nodes_index 
) const
virtual

Gets the array of node index that belongs to a given facet of this cell.

facet must be == 0. Each index is >=0 and < 4.

Implements PbCell.

◆ getValue() [1/2]

float PbPixelCell::getValue ( const SbVec3f pcoord,
const float *  s 
) const
virtual

Get the scalar value of a point in the cell.

Parameters
pcoord[in] Parametric [0..1] coordinate of the point inside the cell.
s[in] The scalar dataset to interpolate
Returns
The interpolated value

Reimplemented from PbCell.

◆ getValue() [2/2]

SbVec3f PbPixelCell::getValue ( const SbVec3f pcoord,
const SbVec3f v 
) const
virtual

Get the vector value of a point in the cell.

Parameters
pcoord[in] Parametric [0..1] coordinate of the point inside the cell.
v[in] The vector dataset to interpolate
Returns
The interpolated value

Reimplemented from PbCell.

◆ getVolume()

float PbPixelCell::getVolume ( ) const
inlinevirtual

Returns always 0.

Implements PbCell.

Definition at line 101 of file PbPixelCell.h.

◆ getWeight()

virtual void PbPixelCell::getWeight ( const SbVec3f pcoord,
float *  weight 
) const
virtual

Gets the 4 weights of a point defined by its parametric coordinates.

Implements PbCell.

◆ locatePoint()

virtual int PbPixelCell::locatePoint ( const SbVec3f coord,
float  tolerance,
SbVec3f pcoord 
) const
virtual

Returns 1 if the point is inside the cell, 0 otherwise.

Gets also the parametric coordinate of the point and its weights

Implements PbCell.

◆ operator=()

PbPixelCell & PbPixelCell::operator= ( const PbPixelCell cell)

Assignment operator.


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