1#!/usr/bin/env python 2 3import math 4import vtk 5from vtk.util.misc import vtkGetDataRoot 6VTK_DATA_ROOT = vtkGetDataRoot() 7 8reader = vtk.vtkGenericEnSightReader() 9reader.SetCaseFileName("" + str(VTK_DATA_ROOT) + "/Data/EnSight/UndefAndPartial/grid_bin.case") 10reader.ReadAllVariablesOn() 11reader.Update() 12 13case = reader.GetOutput() 14block0 = case.GetBlock(0) 15mass = block0.GetCellData().GetArray("mass") 16 17assert mass is not None and \ 18 mass.GetRange()[0] == 0.0 and mass.GetRange()[1] == 3.0 and \ 19 math.isnan(mass.GetValue(2)) 20 21pres = block0.GetPointData().GetArray("pres") 22assert pres is not None and \ 23 pres.GetRange()[0] == 4.0 and pres.GetRange()[1] == 6.0 and \ 24 pres.GetValue(2) == 4 and pres.GetValue(4) == 6 25 26for i in range(0, 10): 27 if i == 2 or i == 4: continue 28 assert math.isnan(pres.GetValue(i)) 29