Skip to content
Snippets Groups Projects
Commit d648dcc7 authored by oliver.sander_at_tu-dresden.de's avatar oliver.sander_at_tu-dresden.de
Browse files

Move the actual ParaView rendering into a separate file

That way I can reuse it more easily
parent 6e3cbcc8
No related tags found
No related merge requests found
Pipeline #50702 failed
...@@ -4,150 +4,12 @@ from paraview.simple import * ...@@ -4,150 +4,12 @@ from paraview.simple import *
# For pattern matching # For pattern matching
import re import re
# For the actual rendering method
from rendercirclegradandk import renderResult
#### disable automatic camera reset on 'Show' #### disable automatic camera reset on 'Show'
paraview.simple._DisableFirstRenderCameraReset() paraview.simple._DisableFirstRenderCameraReset()
# get the material library
materialLibrary1 = GetMaterialLibrary()
# Render result
def renderResult(filePrefix, texFile):
# ----------------------------------------------------------------
# setup views used in the visualization
# ----------------------------------------------------------------
# Create a new 'Render View'
renderView1 = CreateView('RenderView')
renderView1.ViewSize = [800, 695]
renderView1.InteractionMode = '2D'
renderView1.AxesGrid = 'GridAxes3DActor'
renderView1.StereoType = 'Crystal Eyes'
renderView1.CameraPosition = [0.0, 0.0, 10000.0]
renderView1.CameraFocalDisk = 1.0
renderView1.CameraParallelScale = 1.4142135623730951
renderView1.BackEnd = 'OSPRay raycaster'
renderView1.OSPRayMaterialLibrary = materialLibrary1
SetActiveView(None)
# ----------------------------------------------------------------
# setup view layouts
# ----------------------------------------------------------------
# create new layout object 'Layout #1'
layout1 = CreateLayout(name='Layout #1')
layout1.AssignView(0, renderView1)
layout1.SetSize(800, 695)
# ----------------------------------------------------------------
# restore active view
SetActiveView(renderView1)
# ----------------------------------------------------------------
# ----------------------------------------------------------------
# setup the data processing pipelines
# ----------------------------------------------------------------
# create a new 'XML Unstructured Grid Reader'
data = XMLUnstructuredGridReader(registrationName=filePrefix + ".vtu", FileName=['/home/sander/dune/dune-elasticity/quasiconvexity-micromorphic-testsuite/' + filePrefix + ".vtu"])
data.CellArrayStatus = ['determinant', 'K']
data.TimeArray = 'None'
# ----------------------------------------------------------------
# setup the visualization in view 'renderView1'
# ----------------------------------------------------------------
# show data from 'data'
dataDisplay = Show(data, renderView1, 'UnstructuredGridRepresentation')
determinantRange = data.CellData["determinant"].GetRange()
texFile.write("det range: " + str(determinantRange[0]) + ", " + str(determinantRange[1]) + "\n\n")
KRange = data.CellData["K"].GetRange()
texFile.write("K range: " + str(KRange[0]) + ", " + str(KRange[1]) + "\n\n")
# get color transfer function/color map for 'determinant'
determinantArrayInfo = data.CellData["determinant"]
AssignLookupTable(determinantArrayInfo,'Cool to Warm', determinantRange)
# get opacity transfer function/opacity map for 'determinant'
determinantPWF = GetOpacityTransferFunction('determinant')
determinantPWF.Points = [-0.016938600689172745, 0.0, 0.5, 0.0, 1.7324700355529785, 1.0, 0.5, 0.0]
determinantPWF.ScalarRangeInitialized = 1
# trace defaults for the display properties.
dataDisplay.Representation = 'Surface'
dataDisplay.ColorArrayName = ['CELLS', 'determinant']
dataDisplay.SelectTCoordArray = 'None'
dataDisplay.SelectNormalArray = 'None'
dataDisplay.SelectTangentArray = 'None'
dataDisplay.OSPRayScaleFunction = 'PiecewiseFunction'
dataDisplay.SelectOrientationVectors = 'None'
dataDisplay.ScaleFactor = 0.2
dataDisplay.SelectScaleArray = 'determinant'
dataDisplay.GaussianRadius = 0.01
dataDisplay.SetScaleArray = [None, '']
dataDisplay.ScaleTransferFunction = 'PiecewiseFunction'
dataDisplay.OpacityArray = [None, '']
dataDisplay.OpacityTransferFunction = 'PiecewiseFunction'
dataDisplay.DataAxesGrid = 'GridAxesRepresentation'
dataDisplay.PolarAxes = 'PolarAxesRepresentation'
# setup the color legend parameters for each legend in this view
# get color legend/bar for determinantLUT in view renderView1
determinantLUT = GetColorTransferFunction('determinant')
dataDisplay.LookupTable = determinantLUT
determinantLUTColorBar = GetScalarBar(determinantLUT, renderView1)
determinantLUTColorBar.Title = 'determinant'
determinantLUTColorBar.ComponentTitle = ''
# set color bar visibility
determinantLUTColorBar.Visibility = 1
# show color legend
dataDisplay.SetScalarBarVisibility(renderView1, True)
Render()
#save screenshot
WriteImage(filePrefix + "-det.png")
# Render again, showing the K value
determinantLUTColorBar.Visibility = 0
AssignLookupTable(data.CellData["K"],'Cool to Warm', KRange)
dataDisplay.ColorArrayName = ['CELLS', 'K']
# get color legend/bar for KLUT in view renderView1
KLUT = GetColorTransferFunction('K')
dataDisplay.LookupTable = KLUT
KLUTColorBar = GetScalarBar(KLUT, renderView1)
KLUTColorBar.Title = 'K'
KLUTColorBar.ComponentTitle = ''
# set color bar visibility
#KLUTColorBar.Visibility = 1
# show color legend
#dataDisplay.SetScalarBarVisibility(renderView1, True)
Render()
#save screenshot
WriteImage(filePrefix + "-K.png")
# ----------------------------------------------------------------
# restore active source
SetActiveSource(data)
# ----------------------------------------------------------------
if __name__ == '__main__':
# generate extracts
SaveExtracts(ExtractsOutputDirectory='extracts')
# Open output document and write LaTeX header # Open output document and write LaTeX header
texFile = open(r"quasiconvexity-test-micromorphic-results.tex","w+") texFile = open(r"quasiconvexity-test-micromorphic-results.tex","w+")
......
#### import the simple module from the paraview #### import the simple module from the paraview
from paraview.simple import * from paraview.simple import *
# For the actual rendering method
from rendercirclegradandk import renderResult
# For os.devnull # For os.devnull
import os import os
#### disable automatic camera reset on 'Show' #### disable automatic camera reset on 'Show'
paraview.simple._DisableFirstRenderCameraReset() paraview.simple._DisableFirstRenderCameraReset()
# get the material library
materialLibrary1 = GetMaterialLibrary()
# Render result
def renderResult(filePrefix, texFile):
# ----------------------------------------------------------------
# setup views used in the visualization
# ----------------------------------------------------------------
# Create a new 'Render View'
renderView1 = CreateView('RenderView')
renderView1.ViewSize = [800, 695]
renderView1.InteractionMode = '2D'
renderView1.AxesGrid = 'GridAxes3DActor'
renderView1.StereoType = 'Crystal Eyes'
renderView1.CameraPosition = [0.0, 0.0, 10000.0]
renderView1.CameraFocalDisk = 1.0
renderView1.CameraParallelScale = 1.4142135623730951
renderView1.BackEnd = 'OSPRay raycaster'
renderView1.OSPRayMaterialLibrary = materialLibrary1
renderView1.OrientationAxesVisibility = 0
renderView1.Background = [1.0, 1.0, 1.0]
SetActiveView(None)
# ----------------------------------------------------------------
# setup view layouts
# ----------------------------------------------------------------
# create new layout object 'Layout #1'
layout1 = CreateLayout(name='Layout #1')
layout1.AssignView(0, renderView1)
layout1.SetSize(800, 695)
# ----------------------------------------------------------------
# restore active view
SetActiveView(renderView1)
# ----------------------------------------------------------------
# ----------------------------------------------------------------
# setup the data processing pipelines
# ----------------------------------------------------------------
# create a new 'XML Unstructured Grid Reader'
data = XMLUnstructuredGridReader(registrationName=filePrefix + ".vtu", FileName=[filePrefix + ".vtu"])
data.CellArrayStatus = ['determinant', 'K']
data.TimeArray = 'None'
# ----------------------------------------------------------------
# setup the visualization in view 'renderView1'
# ----------------------------------------------------------------
# show data from 'data'
dataDisplay = Show(data, renderView1, 'UnstructuredGridRepresentation')
determinantRange = data.CellData["determinant"].GetRange()
texFile.write("det range: " + str(determinantRange[0]) + ", " + str(determinantRange[1]) + "\n\n")
KRange = data.CellData["K"].GetRange()
texFile.write("K range: " + str(KRange[0]) + ", " + str(KRange[1]) + "\n\n")
# get color transfer function/color map for 'determinant'
determinantArrayInfo = data.CellData["determinant"]
AssignLookupTable(determinantArrayInfo,'Cool to Warm', determinantRange)
# get opacity transfer function/opacity map for 'determinant'
determinantPWF = GetOpacityTransferFunction('determinant')
determinantPWF.Points = [-0.016938600689172745, 0.0, 0.5, 0.0, 1.7324700355529785, 1.0, 0.5, 0.0]
determinantPWF.ScalarRangeInitialized = 1
# trace defaults for the display properties.
dataDisplay.Representation = 'Surface'
dataDisplay.ColorArrayName = ['CELLS', 'determinant']
dataDisplay.SelectTCoordArray = 'None'
dataDisplay.SelectNormalArray = 'None'
dataDisplay.SelectTangentArray = 'None'
dataDisplay.OSPRayScaleFunction = 'PiecewiseFunction'
dataDisplay.SelectOrientationVectors = 'None'
dataDisplay.ScaleFactor = 0.2
dataDisplay.SelectScaleArray = 'determinant'
dataDisplay.GaussianRadius = 0.01
dataDisplay.SetScaleArray = [None, '']
dataDisplay.ScaleTransferFunction = 'PiecewiseFunction'
dataDisplay.OpacityArray = [None, '']
dataDisplay.OpacityTransferFunction = 'PiecewiseFunction'
dataDisplay.DataAxesGrid = 'GridAxesRepresentation'
dataDisplay.PolarAxes = 'PolarAxesRepresentation'
# setup the color legend parameters for each legend in this view
# get color legend/bar for determinantLUT in view renderView1
determinantLUT = GetColorTransferFunction('determinant')
dataDisplay.LookupTable = determinantLUT
determinantLUTColorBar = GetScalarBar(determinantLUT, renderView1)
determinantLUTColorBar.Title = 'determinant'
determinantLUTColorBar.ComponentTitle = ''
determinantLUTColorBar.LabelColor = [0.0, 0.0, 0.0]
determinantLUTColorBar.TitleColor = [0.0, 0.0, 0.0]
# set color bar visibility
determinantLUTColorBar.Visibility = 1
# show color legend
dataDisplay.SetScalarBarVisibility(renderView1, True)
Render()
#save screenshot
WriteImage(filePrefix + "-det.png")
# Render again, showing the K value
determinantLUTColorBar.Visibility = 0
AssignLookupTable(data.CellData["K"],'Cool to Warm', KRange)
dataDisplay.ColorArrayName = ['CELLS', 'K']
# get color legend/bar for KLUT in view renderView1
KLUT = GetColorTransferFunction('K')
dataDisplay.LookupTable = KLUT
KLUTColorBar = GetScalarBar(KLUT, renderView1)
KLUTColorBar.Title = 'IK'
KLUTColorBar.ComponentTitle = ''
KLUTColorBar.LabelColor = [0.0, 0.0, 0.0]
KLUTColorBar.TitleColor = [0.0, 0.0, 0.0]
# set color bar visibility
#KLUTColorBar.Visibility = 1
# show color legend
#dataDisplay.SetScalarBarVisibility(renderView1, True)
Render()
#save screenshot
WriteImage(filePrefix + "-K.png")
# ----------------------------------------------------------------
# restore active source
SetActiveSource(data)
# ----------------------------------------------------------------
if __name__ == '__main__':
# generate extracts
SaveExtracts(ExtractsOutputDirectory='extracts')
if (len(sys.argv)!=2): if (len(sys.argv)!=2):
print('Usage: renderquasiconvexity-test <fileprefix>') print('Usage: render-quasiconvexity-test <fileprefix>')
exit() exit()
# Open output document and write LaTeX header # Open output document and write LaTeX header
......
#### import the simple module from the paraview
from paraview.simple import *
# For os.devnull
import os
# Render the result of a quasiconvexity test run on a unit circle
# or domain of similar size. Two data fields are visualized:
# The determinant of the deformation gradient, and the mystery
# value 'IK'.
def renderResult(filePrefix, texFile):
# get the material library
materialLibrary1 = GetMaterialLibrary()
# ----------------------------------------------------------------
# setup views used in the visualization
# ----------------------------------------------------------------
# Create a new 'Render View'
renderView1 = CreateView('RenderView')
renderView1.ViewSize = [800, 695]
renderView1.InteractionMode = '2D'
renderView1.AxesGrid = 'GridAxes3DActor'
renderView1.StereoType = 'Crystal Eyes'
renderView1.CameraPosition = [0.0, 0.0, 10000.0]
renderView1.CameraFocalDisk = 1.0
renderView1.CameraParallelScale = 1.4142135623730951
renderView1.BackEnd = 'OSPRay raycaster'
renderView1.OSPRayMaterialLibrary = materialLibrary1
renderView1.OrientationAxesVisibility = 0
renderView1.Background = [1.0, 1.0, 1.0]
SetActiveView(None)
# ----------------------------------------------------------------
# setup view layouts
# ----------------------------------------------------------------
# create new layout object 'Layout #1'
layout1 = CreateLayout(name='Layout #1')
layout1.AssignView(0, renderView1)
layout1.SetSize(800, 695)
# ----------------------------------------------------------------
# restore active view
SetActiveView(renderView1)
# ----------------------------------------------------------------
# ----------------------------------------------------------------
# setup the data processing pipelines
# ----------------------------------------------------------------
# create a new 'XML Unstructured Grid Reader'
data = XMLUnstructuredGridReader(registrationName=filePrefix + ".vtu", FileName=[filePrefix + ".vtu"])
data.CellArrayStatus = ['determinant', 'K']
data.TimeArray = 'None'
# ----------------------------------------------------------------
# setup the visualization in view 'renderView1'
# ----------------------------------------------------------------
# show data from 'data'
dataDisplay = Show(data, renderView1, 'UnstructuredGridRepresentation')
determinantRange = data.CellData["determinant"].GetRange()
texFile.write("det range: " + str(determinantRange[0]) + ", " + str(determinantRange[1]) + "\n\n")
KRange = data.CellData["K"].GetRange()
texFile.write("K range: " + str(KRange[0]) + ", " + str(KRange[1]) + "\n\n")
# get color transfer function/color map for 'determinant'
determinantArrayInfo = data.CellData["determinant"]
AssignLookupTable(determinantArrayInfo,'Cool to Warm', determinantRange)
# get opacity transfer function/opacity map for 'determinant'
determinantPWF = GetOpacityTransferFunction('determinant')
determinantPWF.Points = [-0.016938600689172745, 0.0, 0.5, 0.0, 1.7324700355529785, 1.0, 0.5, 0.0]
determinantPWF.ScalarRangeInitialized = 1
# trace defaults for the display properties.
dataDisplay.Representation = 'Surface'
dataDisplay.ColorArrayName = ['CELLS', 'determinant']
dataDisplay.SelectTCoordArray = 'None'
dataDisplay.SelectNormalArray = 'None'
dataDisplay.SelectTangentArray = 'None'
dataDisplay.OSPRayScaleFunction = 'PiecewiseFunction'
dataDisplay.SelectOrientationVectors = 'None'
dataDisplay.ScaleFactor = 0.2
dataDisplay.SelectScaleArray = 'determinant'
dataDisplay.GaussianRadius = 0.01
dataDisplay.SetScaleArray = [None, '']
dataDisplay.ScaleTransferFunction = 'PiecewiseFunction'
dataDisplay.OpacityArray = [None, '']
dataDisplay.OpacityTransferFunction = 'PiecewiseFunction'
dataDisplay.DataAxesGrid = 'GridAxesRepresentation'
dataDisplay.PolarAxes = 'PolarAxesRepresentation'
# setup the color legend parameters for each legend in this view
# get color legend/bar for determinantLUT in view renderView1
determinantLUT = GetColorTransferFunction('determinant')
dataDisplay.LookupTable = determinantLUT
determinantLUTColorBar = GetScalarBar(determinantLUT, renderView1)
determinantLUTColorBar.Title = 'determinant'
determinantLUTColorBar.ComponentTitle = ''
determinantLUTColorBar.LabelColor = [0.0, 0.0, 0.0]
determinantLUTColorBar.TitleColor = [0.0, 0.0, 0.0]
# set color bar visibility
determinantLUTColorBar.Visibility = 1
# show color legend
dataDisplay.SetScalarBarVisibility(renderView1, True)
Render()
#save screenshot
WriteImage(filePrefix + "-det.png")
# Render again, showing the K value
determinantLUTColorBar.Visibility = 0
AssignLookupTable(data.CellData["K"],'Cool to Warm', KRange)
dataDisplay.ColorArrayName = ['CELLS', 'K']
# get color legend/bar for KLUT in view renderView1
KLUT = GetColorTransferFunction('K')
dataDisplay.LookupTable = KLUT
KLUTColorBar = GetScalarBar(KLUT, renderView1)
KLUTColorBar.Title = 'IK'
KLUTColorBar.ComponentTitle = ''
KLUTColorBar.LabelColor = [0.0, 0.0, 0.0]
KLUTColorBar.TitleColor = [0.0, 0.0, 0.0]
# set color bar visibility
#KLUTColorBar.Visibility = 1
# show color legend
#dataDisplay.SetScalarBarVisibility(renderView1, True)
Render()
#save screenshot
WriteImage(filePrefix + "-K.png")
# ----------------------------------------------------------------
# restore active source
SetActiveSource(data)
# ----------------------------------------------------------------
if __name__ == '__main__':
# generate extracts
SaveExtracts(ExtractsOutputDirectory='extracts')
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment