Salome HOME
yfr : Merge with v1.2
[modules/smesh.git] / src / SMDS / SMDS_MeshQuadrangle.cxx
1 using namespace std;
2 // File:        SMDS_MeshQuadrangle.cxx
3 // Created:     Wed Jan 23 17:02:27 2002
4 // Author:      Jean-Michel BOULCOURT
5 //              <jmb@coulox.paris1.matra-dtv.fr>
6
7
8 #include "SMDS_MeshQuadrangle.ixx"
9
10
11
12 //=======================================================================
13 //function : SMDS_MeshQuadrangle
14 //purpose  : 
15 //=======================================================================
16
17 SMDS_MeshQuadrangle::SMDS_MeshQuadrangle(const Standard_Integer ID,
18                                          const Standard_Integer idnode1, 
19                                          const Standard_Integer idnode2, 
20                                          const Standard_Integer idnode3,
21                                          const Standard_Integer idnode4):SMDS_MeshFace(ID,4)
22 {
23   SetConnections(idnode1,idnode2,idnode3,idnode4);
24   ComputeKey();
25 }
26
27
28
29 //=======================================================================
30 //function : SetConnections
31 //purpose  : 
32 //=======================================================================
33 void SMDS_MeshQuadrangle::SetConnections(const Standard_Integer idnode1, 
34                                          const Standard_Integer idnode2,
35                                          const Standard_Integer idnode3,
36                                          const Standard_Integer idnode4)
37 {
38   Standard_Integer idmin = (idnode1 < idnode2 ? idnode1 : idnode2);
39   idmin = (idmin < idnode3 ? idmin : idnode3);
40   idmin = (idmin < idnode4 ? idmin : idnode4);
41   
42   myNodes[0] = idmin;
43   if (idmin == idnode1) {
44     myNodes[1] = idnode2;
45     myNodes[2] = idnode3;
46     myNodes[3] = idnode4;
47   } else if (idmin == idnode2) {
48     myNodes[1] = idnode3;
49     myNodes[2] = idnode4;
50     myNodes[3] = idnode1;
51   } else if (idmin == idnode3) {
52     myNodes[1] = idnode4;
53     myNodes[2] = idnode1;
54     myNodes[3] = idnode2;
55   } else {
56     myNodes[1] = idnode1;
57     myNodes[2] = idnode2;
58     myNodes[3] = idnode3;
59   }
60
61 }
62