aFilter->RegisterCellsWithType(VTK_PYRAMID);
aFilter->RegisterCellsWithType(VTK_QUADRATIC_TETRA);
aFilter->RegisterCellsWithType(VTK_QUADRATIC_HEXAHEDRON);
+ aFilter->RegisterCellsWithType(VTK_QUADRATIC_WEDGE);
aFilter->RegisterCellsWithType(VTK_CONVEX_POINT_SET);
//Definition 1D divice of the actor
aFilter->RegisterCellsWithType(VTK_PYRAMID);
aFilter->RegisterCellsWithType(VTK_QUADRATIC_TETRA);
aFilter->RegisterCellsWithType(VTK_QUADRATIC_HEXAHEDRON);
+ aFilter->RegisterCellsWithType(VTK_QUADRATIC_WEDGE);
aFilter->RegisterCellsWithType(VTK_CONVEX_POINT_SET);
}
aFilter->Update();
else if ( theNbNodes == 20 ) {
return VTK_QUADRATIC_HEXAHEDRON;
}
- else if ( theNbNodes==13 || theNbNodes==15 ) {
+ else if ( theNbNodes == 15 ) {
+ return VTK_QUADRATIC_WEDGE;
+ }
+ else if ( theNbNodes==13 ) {
return VTK_CONVEX_POINT_SET;
}
else return VTK_EMPTY_CELL;
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};
+ //static int anIds[] = {0,2,1,3,5,4,8,7,6,11,10,9,12,14,13};
+ static int anIds[] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14};
for (int k = 0; k < aNbNodes; k++) aConnectivities.push_back(anIds[k]);
//for (int k = 0; k < aNbNodes; k++) {
// int nn = aConnectivities[k];
aType = VTK_CONVEX_POINT_SET;
break;
case QUAD_PENTAHEDRON:
- //aType = VTK_QUADRATIC_WEDGE; // NOT SUPPORTED IN VTK4.2
- aType = VTK_CONVEX_POINT_SET;
+ aType = VTK_QUADRATIC_WEDGE;
+ //aType = VTK_CONVEX_POINT_SET;
break;
case QUAD_HEXAHEDRON:
aType = VTK_QUADRATIC_HEXAHEDRON;
}
else {
// VTK cell connectivity opposites the MED one for volumic elements
- if ( theIds.size() > 8 ? !theReverse : theReverse ) {
- ReverseConnectivity( theIds, theType );
+ if( aType != VTK_QUADRATIC_WEDGE) {
+ if ( theIds.size() > 8 ? !theReverse : theReverse ) {
+ ReverseConnectivity( theIds, theType );
+ }
}
+ else if(theReverse)
+ ReverseConnectivity( theIds, theType );
}
myGrid->Reset();
else if ( theNbNodes == 20 ) {
return VTK_QUADRATIC_HEXAHEDRON;
}
- else if ( theNbNodes==13 || theNbNodes==15 ) {
+ else if ( theNbNodes==15 ) {
+ return VTK_QUADRATIC_WEDGE;
+ }
+ else if ( theNbNodes==13 ) {
return VTK_CONVEX_POINT_SET;
}
else return VTK_EMPTY_CELL;