- switch(aType){
- case SMDSAbs_Volume:{
- std::vector<int> aConnectivities;
- GetConnect(aNodesIter,aConnect);
- // Convertions connectivities from SMDS to VTK
- if (anElem->IsPoly() && aNbNodes > 3) { // POLYEDRE
- for (int k = 0; k < aNbNodes; k++) {
- aConnectivities.push_back(k);
- }
-
- } else if (aNbNodes == 4) {
- static int anIds[] = {0,2,1,3};
- for (int k = 0; k < aNbNodes; k++) aConnectivities.push_back(anIds[k]);
-
- } else if (aNbNodes == 5) {
- static int anIds[] = {0,3,2,1,4};
- for (int k = 0; k < aNbNodes; k++) aConnectivities.push_back(anIds[k]);
-
- } else if (aNbNodes == 6) {
- static int anIds[] = {0,1,2,3,4,5};
- for (int k = 0; k < aNbNodes; k++) aConnectivities.push_back(anIds[k]);
-
- }
- else if (aNbNodes == 8) {
- static int anIds[] = {0,3,2,1,4,7,6,5};
- for (int k = 0; k < aNbNodes; k++) aConnectivities.push_back(anIds[k]);
-
- }
- else if (aNbNodes == 10) {
- static int anIds[] = {0,2,1,3,6,5,4,7,9,8};
- for (int k = 0; k < aNbNodes; k++) aConnectivities.push_back(anIds[k]);
- }
- else if (aNbNodes == 13) {
- static int anIds[] = {0,3,2,1,4,8,7,6,5,9,12,11,10};
- for (int k = 0; k < aNbNodes; k++) aConnectivities.push_back(anIds[k]);
- }
- else if (aNbNodes == 15) {
- static int anIds[] = {0,2,1,3,5,4,8,7,6,11,10,9,12,14,13};
- for (int k = 0; k < aNbNodes; k++) aConnectivities.push_back(anIds[k]);
- //for (int k = 0; k < aNbNodes; k++) {
- // int nn = aConnectivities[k];
- // const SMDS_MeshNode* N = static_cast<const SMDS_MeshNode*> (aConnect[nn]);
- // cout<<"k="<<k<<" N("<<N->X()<<","<<N->Y()<<","<<N->Z()<<")"<<endl;
- //}
- }
- else if (aNbNodes == 20) {
- static int anIds[] = {0,3,2,1,4,7,6,5,11,10,9,8,15,14,13,12,16,19,18,17};
- for (int k = 0; k < aNbNodes; k++) aConnectivities.push_back(anIds[k]);
- }