28 #ifndef SMDS_VolumeTool_HeaderFile 29 #define SMDS_VolumeTool_HeaderFile 53 enum VolumeType { UNKNOWN = -1, TETRA = 0, PYRAM, PENTA, HEXA, QUAD_TETRA,
91 double GetSize()
const;
94 bool GetBaryCenter (
double & X,
double & Y,
double &
Z)
const;
96 bool IsOut(
double X,
double Y,
double Z,
double tol);
107 bool IsLinked (
const int theNode1Index,
108 const int theNode2Index)
const;
115 int GetAllExistingEdges(std::vector<const SMDS_MeshElement*> & edges)
const;
122 void SetExternalNormal ();
129 int NbFaceNodes(
int faceIndex );
132 const int* GetFaceNodesIndices(
int faceIndex );
146 bool GetFaceNodes (
int faceIndex,
147 std::set<const SMDS_MeshNode*>& theFaceNodes );
150 bool IsFaceExternal(
int faceIndex );
154 bool IsFreeFace(
int faceIndex );
157 bool GetFaceNormal (
int faceIndex,
double & X,
double & Y,
double & Z);
160 double GetFaceArea(
int faceIndex );
163 int GetOppFaceIndex(
int faceIndex )
const;
166 int GetFaceIndex(
const std::set<const SMDS_MeshNode*>& theFaceNodes );
174 int GetAllExistingFaces(std::vector<const SMDS_MeshElement*> & faces);
187 static const int* GetFaceNodesIndices(
VolumeType type,
204 bool setFace(
int faceIndex );