X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMDS%2FSMDS_VolumeOfNodes.hxx;h=6c18c170f14b471798a8aae89dd21ffdd93a79ba;hp=c7c3529c3b841e1aafd2828373c10f64c448665d;hb=79b1ac2b6df9117f16f11d444b1f165d477a1813;hpb=4ea4ccf36f3c18ecde6f63d51d3e8876a2a27344 diff --git a/src/SMDS/SMDS_VolumeOfNodes.hxx b/src/SMDS/SMDS_VolumeOfNodes.hxx index c7c3529c3..6c18c170f 100644 --- a/src/SMDS/SMDS_VolumeOfNodes.hxx +++ b/src/SMDS/SMDS_VolumeOfNodes.hxx @@ -17,7 +17,7 @@ // License along with this library; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // // // @@ -27,50 +27,64 @@ #ifndef _SMDS_VolumeOfNodes_HeaderFile #define _SMDS_VolumeOfNodes_HeaderFile +#include "SMESH_SMDS.hxx" + #include "SMDS_MeshVolume.hxx" -#include -using namespace std; -class SMDS_VolumeOfNodes:public SMDS_MeshVolume +class SMDS_EXPORT SMDS_VolumeOfNodes:public SMDS_MeshVolume { public: SMDS_VolumeOfNodes( - SMDS_MeshNode * node1, - SMDS_MeshNode * node2, - SMDS_MeshNode * node3, - SMDS_MeshNode * node4); + const SMDS_MeshNode * node1, + const SMDS_MeshNode * node2, + const SMDS_MeshNode * node3, + const SMDS_MeshNode * node4); SMDS_VolumeOfNodes( - SMDS_MeshNode * node1, - SMDS_MeshNode * node2, - SMDS_MeshNode * node3, - SMDS_MeshNode * node4, - SMDS_MeshNode * node5); + const SMDS_MeshNode * node1, + const SMDS_MeshNode * node2, + const SMDS_MeshNode * node3, + const SMDS_MeshNode * node4, + const SMDS_MeshNode * node5); SMDS_VolumeOfNodes( - SMDS_MeshNode * node1, - SMDS_MeshNode * node2, - SMDS_MeshNode * node3, - SMDS_MeshNode * node4, - SMDS_MeshNode * node5, - SMDS_MeshNode * node6); + const SMDS_MeshNode * node1, + const SMDS_MeshNode * node2, + const SMDS_MeshNode * node3, + const SMDS_MeshNode * node4, + const SMDS_MeshNode * node5, + const SMDS_MeshNode * node6); SMDS_VolumeOfNodes( - SMDS_MeshNode * node1, - SMDS_MeshNode * node2, - SMDS_MeshNode * node3, - SMDS_MeshNode * node4, - SMDS_MeshNode * node5, - SMDS_MeshNode * node6, - SMDS_MeshNode * node7, - SMDS_MeshNode * node8); + const SMDS_MeshNode * node1, + const SMDS_MeshNode * node2, + const SMDS_MeshNode * node3, + const SMDS_MeshNode * node4, + const SMDS_MeshNode * node5, + const SMDS_MeshNode * node6, + const SMDS_MeshNode * node7, + const SMDS_MeshNode * node8); + bool ChangeNodes(const SMDS_MeshNode* nodes[], + const int nbNodes); + ~SMDS_VolumeOfNodes(); - void Print(ostream & OS) const; + void Print(std::ostream & OS) const; int NbFaces() const; int NbNodes() const; int NbEdges() const; SMDSAbs_ElementType GetType() const; + + /*! + * \brief Return node by its index + * \param ind - node index + * \retval const SMDS_MeshNode* - the node + * + * Index is wrapped if it is out of a valid range + */ + virtual const SMDS_MeshNode* GetNode(const int ind) const; + protected: - SMDS_Iterator * + SMDS_ElemIteratorPtr elementsIterator(SMDSAbs_ElementType type) const; - vector myNodes; + const SMDS_MeshNode** myNodes; + int myNbNodes; }; #endif