Ok - I have a datafile that shows temperature in ParaView, but does NOT show it with my script.
hot_tetra.vtp (2.6 KB)
Below is the entire script:
#!/usr/bin/env python3
import vtkmodules.vtkRenderingOpenGL2
from glob import glob
from vtkmodules.vtkCommonCore import vtkLookupTable
from vtkmodules.vtkIOImage import vtkPNGWriter
from vtkmodules.vtkRenderingCore import (
vtkActor,
vtkPolyDataMapper,
vtkRenderWindow,
vtkRenderWindowInteractor,
vtkRenderer)
from vtkmodules.vtkIOXML import vtkXMLPolyDataReader
MAX_TEMPERATURE = 400
def debug_view(fname):
import sys
from vtkmodules.vtkInteractionStyle import vtkInteractorStyleTrackballCamera
r = vtkXMLPolyDataReader()
r.SetFileName(fname)
r.Update()
lut = vtkLookupTable()
lut.SetNumberOfTableValues(256)
lut.SetTableRange(0, MAX_TEMPERATURE)
lut.SetHueRange(0, 0)
lut.SetValueRange(0, 1)
lut.SetSaturationRange(0, 0)
lut.Build()
m = vtkPolyDataMapper()
m.SetInputConnection(r.GetOutputPort())
m.SetLookupTable(lut)
m.SetColorModeToMapScalars()
m.SetScalarModeToUseCellData()
m.SetScalarRange(0, MAX_TEMPERATURE)
m.SelectColorArray("Temperature")
m.SetScalarVisibility(True)
a = vtkActor()
a.SetMapper(m)
a.RotateX(-20)
a.RotateY(50)
ren = vtkRenderer()
ren.AddActor(a)
renWin = vtkRenderWindow()
renWin.AddRenderer(ren)
iren = vtkRenderWindowInteractor()
iren.SetRenderWindow(renWin)
style = vtkInteractorStyleTrackballCamera()
iren.SetInteractorStyle(style)
renWin.SetSize(300, 300)
renWin.SetWindowName("Tetra")
iren.Initialize()
ren.ResetCamera()
renWin.Render()
iren.Start()
if __name__ == "__main__":
debug_view("hot_tetra.vtp")