Dear community,
I use pvbatch-scripts to create images of my simulation results. I use the paraview version 5.7.0_mesa. I have a pressure field, which I want to bound to 1e5 to 1e6 for all images I take. For the pressure display I use the following code:
def PressureDisplayer( input_data, input_viewer ) :
# create LUT
pressureLUT = pv.GetColorTransferFunction('pressure')
pressureLUT.UseLogScale = 1
pressureLUT.ScalarRangeInitialized = 1.0
pv.ImportPresets(filename='../../own_scale.xml')
pressureLUT.ApplyPreset('blueorange', True)
pressureLUT.RescaleTransferFunction( 1e5, 1e6 )
# create display
x_pressure_displayer = pv.Show( input_data, input_viewer )
x_pressure_displayer.Representation = 'Surface'
x_pressure_displayer.ColorArrayName = ['POINTS', 'pressure']
x_pressure_displayer.LookupTable = pressureLUT
# show color bar
pressureLUT_color_bar = pv.GetScalarBar(pressureLUT, input_viewer)
pressureLUT_color_bar.Title = 'pressure'
pressureLUT_color_bar.ComponentTitle = ''
pressureLUT_color_bar.TitleFontSize = 25
pressureLUT_color_bar.LabelFontSize = 25
pressureLUT_color_bar.ScalarBarThickness = 15
pressureLUT_color_bar.ScalarBarLength = 0.25
pressureLUT_color_bar.TitleColor = [0,0,0]
pressureLUT_color_bar.LabelColor = [0,0,0]
pressureLUT_color_bar.Visibility = 1
x_pressure_displayer.SetScalarBarVisibility(input_viewer, True)
return x_pressure_displayer
For some reason, RescaleTransferFunction
does not rescale to the correct values for some images. However, if I comment the rescale command out, a completey different range is used, so the command does something, but the wrong thing.
Is it a error in my code, i.e. are the commands in a wrong order or is it a bug in paraview?
Thanks for your help!