Commit 091be0ce authored by David Thompson's avatar David Thompson
Browse files

ENH: Support superelements. This should resolve issue #3128.

STYLE: Remove unneccessary parentheses.
parent 49ddae44
......@@ -721,7 +721,7 @@ private:
};
vtkStandardNewMacro(vtkExodusIIXMLParser);
vtkCxxRevisionMacro(vtkExodusIIXMLParser,"1.41");
vtkCxxRevisionMacro(vtkExodusIIXMLParser,"1.42");
......@@ -1672,7 +1672,7 @@ void vtkExodusIIReaderPrivate::ArrayInfoType::Reset()
}
// ------------------------------------------------------- PRIVATE CLASS MEMBERS
vtkCxxRevisionMacro(vtkExodusIIReaderPrivate,"1.41");
vtkCxxRevisionMacro(vtkExodusIIReaderPrivate,"1.42");
vtkStandardNewMacro(vtkExodusIIReaderPrivate);
vtkCxxSetObjectMacro(vtkExodusIIReaderPrivate,
CachedConnectivity,
......@@ -4213,24 +4213,29 @@ void vtkExodusIIReaderPrivate::DetermineVtkCellType( BlockInfoType& binfo )
{ binfo.CellType=VTK_QUADRATIC_EDGE; binfo.PointsPerCell = 3; }
// Check for regular elements
else if ((elemType.substr(0,3) == "CIR")) { binfo.CellType = VTK_VERTEX; binfo.PointsPerCell = 1; }
else if ((elemType.substr(0,3) == "SPH")) { binfo.CellType = VTK_VERTEX; binfo.PointsPerCell = 1; }
else if ((elemType.substr(0,3) == "BAR")) { binfo.CellType = VTK_LINE; binfo.PointsPerCell = 2; }
else if ((elemType.substr(0,3) == "TRU")) { binfo.CellType = VTK_LINE; binfo.PointsPerCell = 2; }
else if ((elemType.substr(0,3) == "BEA")) { binfo.CellType = VTK_LINE; binfo.PointsPerCell = 2; }
else if ((elemType.substr(0,3) == "EDG")) { binfo.CellType = VTK_LINE; binfo.PointsPerCell = 2; }
else if ((elemType.substr(0,3) == "TRI")) { binfo.CellType = VTK_TRIANGLE; binfo.PointsPerCell = 3; }
else if ((elemType.substr(0,3) == "QUA")) { binfo.CellType = VTK_QUAD; binfo.PointsPerCell = 4; }
else if ((elemType.substr(0,3) == "TET")) { binfo.CellType = VTK_TETRA; binfo.PointsPerCell = 4; }
else if ((elemType.substr(0,3) == "PYR")) { binfo.CellType = VTK_PYRAMID; binfo.PointsPerCell = 5; }
else if ((elemType.substr(0,3) == "WED")) { binfo.CellType = VTK_WEDGE; binfo.PointsPerCell = 6; }
else if ((elemType.substr(0,3) == "HEX")) { binfo.CellType = VTK_HEXAHEDRON; binfo.PointsPerCell = 8; }
else if (elemType.substr(0,3) == "CIR") { binfo.CellType = VTK_VERTEX; binfo.PointsPerCell = 1; }
else if (elemType.substr(0,3) == "SPH") { binfo.CellType = VTK_VERTEX; binfo.PointsPerCell = 1; }
else if (elemType.substr(0,3) == "BAR") { binfo.CellType = VTK_LINE; binfo.PointsPerCell = 2; }
else if (elemType.substr(0,3) == "TRU") { binfo.CellType = VTK_LINE; binfo.PointsPerCell = 2; }
else if (elemType.substr(0,3) == "BEA") { binfo.CellType = VTK_LINE; binfo.PointsPerCell = 2; }
else if (elemType.substr(0,3) == "EDG") { binfo.CellType = VTK_LINE; binfo.PointsPerCell = 2; }
else if (elemType.substr(0,3) == "TRI") { binfo.CellType = VTK_TRIANGLE; binfo.PointsPerCell = 3; }
else if (elemType.substr(0,3) == "QUA") { binfo.CellType = VTK_QUAD; binfo.PointsPerCell = 4; }
else if (elemType.substr(0,3) == "TET") { binfo.CellType = VTK_TETRA; binfo.PointsPerCell = 4; }
else if (elemType.substr(0,3) == "PYR") { binfo.CellType = VTK_PYRAMID; binfo.PointsPerCell = 5; }
else if (elemType.substr(0,3) == "WED") { binfo.CellType = VTK_WEDGE; binfo.PointsPerCell = 6; }
else if (elemType.substr(0,3) == "HEX") { binfo.CellType = VTK_HEXAHEDRON; binfo.PointsPerCell = 8; }
else if ((elemType.substr(0,3) == "SHE") && (binfo.BdsPerEntry[0] == 3))
{ binfo.CellType = VTK_TRIANGLE; binfo.PointsPerCell = 3; }
else if ((elemType.substr(0,3) == "SHE") && (binfo.BdsPerEntry[0] == 4))
{ binfo.CellType = VTK_QUAD; binfo.PointsPerCell = 4; }
else if ((elemType.substr(0,8) == "STRAIGHT") && (binfo.BdsPerEntry[0] == 2 ))
{ binfo.CellType = VTK_LINE; binfo.PointsPerCell = 2; }
else if (elemType.substr(0,3) == "SUP")
{
binfo.CellType=VTK_POLY_VERTEX;
binfo.PointsPerCell = binfo.BdsPerEntry[0];
}
else if ((elemType.substr(0,8) == "NULL") && (binfo.Size == 0))
{
(void)binfo; // silently ignore empty element blocks
......@@ -5910,7 +5915,7 @@ vtkDataArray* vtkExodusIIReaderPrivate::FindDisplacementVectors( int timeStep )
// -------------------------------------------------------- PUBLIC CLASS MEMBERS
vtkCxxRevisionMacro(vtkExodusIIReader,"1.41");
vtkCxxRevisionMacro(vtkExodusIIReader,"1.42");
vtkStandardNewMacro(vtkExodusIIReader);
vtkCxxSetObjectMacro(vtkExodusIIReader,Metadata,vtkExodusIIReaderPrivate);
vtkCxxSetObjectMacro(vtkExodusIIReader,ExodusModel,vtkExodusModel);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment