00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef _SMDS_VolumeOfFaces_HeaderFile
00027 #define _SMDS_VolumeOfFaces_HeaderFile
00028
00029 #include "SMESH_SMDS.hxx"
00030
00031 #include "SMDS_MeshVolume.hxx"
00032 #include "SMDS_MeshFace.hxx"
00033 #include "SMDS_Iterator.hxx"
00034 #include <iostream>
00035
00036
00037 class SMDS_EXPORT SMDS_VolumeOfFaces:public SMDS_MeshVolume
00038 {
00039
00040 public:
00041 SMDS_VolumeOfFaces(const SMDS_MeshFace * face1,
00042 const SMDS_MeshFace * face2,
00043 const SMDS_MeshFace * face3,
00044 const SMDS_MeshFace * face4);
00045 SMDS_VolumeOfFaces(const SMDS_MeshFace * face1,
00046 const SMDS_MeshFace * face2,
00047 const SMDS_MeshFace * face3,
00048 const SMDS_MeshFace * face4,
00049 const SMDS_MeshFace * face5);
00050 SMDS_VolumeOfFaces(const SMDS_MeshFace * face1,
00051 const SMDS_MeshFace * face2,
00052 const SMDS_MeshFace * face3,
00053 const SMDS_MeshFace * face4,
00054 const SMDS_MeshFace * face5,
00055 const SMDS_MeshFace * face6);
00056
00057 virtual SMDSAbs_EntityType GetEntityType() const;
00058 void Print(std::ostream & OS) const;
00059
00060 int NbFaces() const;
00061
00062 protected:
00063 SMDS_ElemIteratorPtr
00064 elementsIterator(SMDSAbs_ElementType type) const;
00065 const SMDS_MeshFace * myFaces[6];
00066 int myNbFaces;
00067 };
00068 #endif