1import vtk 2import sys 3 4testing = vtk.vtkTesting() 5for arg in sys.argv: 6 testing.AddArgument(arg) 7VTK_DATA_ROOT = testing.GetDataRoot() 8 9def Test1(datadir): 10 reader = vtk.vtkXMLUnstructuredGridReader() 11 reader.SetFileName(datadir + "/Data/quadraticTetra01.vtu") 12 reader.UpdateInformation(); 13 reader.GetPointDataArraySelection().EnableAllArrays() 14 reader.GetCellDataArraySelection().EnableAllArrays() 15 16 f = vtk.vtkIntegrateAttributes() 17 f.SetInputConnection(reader.GetOutputPort()) 18 f.Update() 19 20 result = f.GetOutputDataObject(0) 21 val = result.GetPointData().GetArray("scalars").GetValue(0) 22 assert (val > 0.0162 and val < 0.01621) 23 24 val = result.GetCellData().GetArray("Volume").GetValue(0) 25 assert (val > 0.128 and val < 0.1284) 26 27 28def Test2(datadir): 29 reader = vtk.vtkXMLUnstructuredGridReader() 30 reader.SetFileName(datadir + "/Data/elements.vtu") 31 reader.UpdateInformation(); 32 reader.GetPointDataArraySelection().EnableAllArrays() 33 reader.GetCellDataArraySelection().EnableAllArrays() 34 35 f = vtk.vtkIntegrateAttributes() 36 f.SetInputConnection(reader.GetOutputPort()) 37 f.Update() 38 39 result = f.GetOutputDataObject(0) 40 val = result.GetPointData().GetArray("pointScalars").GetValue(0) 41 assert (val > 83.1 and val < 83.2) 42 43 val = result.GetCellData().GetArray("Volume").GetValue(0) 44 assert (val > 1.999 and val < 2.01) 45 46def Test3(datadir): 47 reader = vtk.vtkDataSetReader() 48 reader.SetFileName(datadir + "/Data/blow.vtk") 49 reader.UpdateInformation(); 50 reader.ReadAllScalarsOn() 51 reader.ReadAllVectorsOn() 52 53 dssf = vtk.vtkDataSetSurfaceFilter() 54 dssf.SetInputConnection(reader.GetOutputPort()) 55 56 stripper = vtk.vtkStripper() 57 stripper.SetInputConnection(dssf.GetOutputPort()) 58 59 f = vtk.vtkIntegrateAttributes() 60 f.SetInputConnection(stripper.GetOutputPort()) 61 f.Update() 62 63 result = f.GetOutputDataObject(0) 64 val = result.GetPointData().GetArray("displacement1").GetValue(0) 65 assert (val > 463.64 and val < 463.642) 66 67 val = result.GetPointData().GetArray("thickness3").GetValue(0) 68 assert (val > 874.61 and val < 874.618) 69 70 val = result.GetCellData().GetArray("Area").GetValue(0) 71 assert (val > 1145.405 and val < 1145.415) 72 73Test1(VTK_DATA_ROOT) 74Test2(VTK_DATA_ROOT) 75Test3(VTK_DATA_ROOT) 76