24#ifndef _PB_CARTESIANGRID3D_
25#define _PB_CARTESIANGRID3D_
27#include <MeshViz/3Ddata/PbGrid3D.h>
64 PbCartesianGrid3D(
int num_x,
int num_y,
int num_z,
const float *xnod,
const float *ynod,
const float *znod,
65 SbBool is_data_duplicated=TRUE) ;
86 {
return !(m1 == m2); }
94 void setCoordinates(
const float *xnod,
const float *ynod,
const float *znod);
107 int &size_xnod,
int &size_ynod,
int &size_znod)
const {
111 size_xnod = size_ynod = size_znod = numMeshNodes;
118 void getGeometry(
int &num_x,
int &num_y,
int &num_z,
const float*** &xa,
const float*** &ya,
const float*** &za)
const;
145 float getLongestEdgeLength();
150 void meshSkeleton(
PoMeshSkeleton *skeleton,
const float *nod_values,
151 float *x_cont,
float *y_cont,
float *z_cont)
const;
153 void print(FILE *fp)
const;
156 virtual const PbCell *getTopoCell(
int cell_index)
const;
160 void updateCellBoundingBox()
const;
161 void setXYZGeometry(
int num_x,
int num_y,
int num_z,
const float *x,
const float *y,
const float *z);
162 void getXYZGeometry(
const float* &x,
const float* &y,
const float* &z)
const;
163 virtual void grid3DSkin(
PoMeshSkin *_PoMeshSkin)
const;
166 void updateBoundingBox()
const;
168 float ***x, ***y, ***z;
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Defines a cartesian grid...
PbCartesianGrid3D & operator=(const PbCartesianGrid3D &mesh)
Assignment operator.
friend int operator!=(const PbCartesianGrid3D &m1, const PbCartesianGrid3D &m2)
Inequality comparison operator.
virtual const PbCell * getCell(int cell_index) const
Gets the cell which index is cell_index.
PbCartesianGrid3D(int num_x, int num_y, int num_z, const float *xnod, const float *ynod, const float *znod, SbBool is_data_duplicated=TRUE)
Constructor of a volume mesh.
virtual SbVec3f getNodeCoord(int nod_index) const
Gets the coordinates of a node defined by its index.
void getCoordinates(const float *&xnod, const float *&ynod, const float *&znod, int &size_xnod, int &size_ynod, int &size_znod) const
Get the current coordinates of the nodes of this mesh.
PbCartesianGrid3D(SbBool is_data_duplicated=TRUE)
Constructor.
PbCartesianGrid3D(const PbCartesianGrid3D &)
Copy constructor.
friend int operator==(const PbCartesianGrid3D &m1, const PbCartesianGrid3D &m2)
Equality comparison operator.
~PbCartesianGrid3D()
Destructor.
SbVec3f getNodeCoord(int i, int j, int k) const
Gets the coordinates of a node defined by its i,j,k indices on the grid.
void setCoordinates(const float *xnod, const float *ynod, const float *znod)
Set new node coordinates without modifying the mesh topology.
void getGeometry(int &num_x, int &num_y, int &num_z, const float ***&xa, const float ***&ya, const float ***&za) const
Gets the mesh geometry.
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Defines an abstract cell...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Defines an abstract grid...
void getGeometry(int &num_x, int &num_y, int &num_z, const float *&x, const float *&y, const float *&z) const
Gets the mesh geometry.
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Defines an hexahedron ce...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Representation of vector...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Representation of cross-...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Representation of cross ...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Representation of the sk...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Representation of the me...