Skip to content

Instantly share code, notes, and snippets.

@quantumsteve
Created July 22, 2015 20:42
Show Gist options
  • Save quantumsteve/8da30f5506fc6f27db45 to your computer and use it in GitHub Desktop.
Save quantumsteve/8da30f5506fc6f27db45 to your computer and use it in GitHub Desktop.
Benchmark slicing a MDHistoWorkspace.
#### import the simple module from the paraview
from paraview.simple import *
#### disable automatic camera reset on 'Show'
paraview.simple._DisableFirstRenderCameraReset()
# create a new 'MDHWNexusReader'
symmnxs = MDHWNexusReader(FileName='/Users/svh/symm.nxs')
# get active view
renderView1 = GetActiveViewOrCreate('RenderView')
# uncomment following to set a specific view size
# renderView1.ViewSize = [768, 872]
# show data in view
symmnxsDisplay = Show(symmnxs, renderView1)
# trace defaults for the display properties.
symmnxsDisplay.Representation = 'Outline'
symmnxsDisplay.ColorArrayName = ['CELLS', '']
symmnxsDisplay.ScalarOpacityUnitDistance = 0.28928883232549035
# reset view to fit data
renderView1.ResetCamera()
# create a new 'Slice'
slice1 = Slice(Input=symmnxs)
slice1.SliceType = 'Plane'
slice1.SliceOffsetValues = [0.0]
# init the 'Plane' selected for 'SliceType'
slice1.SliceType.Origin = [0.3757772445678711, -0.0044307708740234375, 0.0]
# Properties modified on slice1.SliceType
slice1.SliceType.Origin = [0.0, 0.0, -1.5]
slice1.SliceType.Normal = [0.0, 0.0, 1.0]
# show data in view
slice1Display = Show(slice1, renderView1)
# trace defaults for the display properties.
slice1Display.Representation = 'Outline'
slice1Display.ColorArrayName = ['CELLS', '']
# change representation type
slice1Display.SetRepresentationType('Surface')
# set scalar coloring
ColorBy(slice1Display, ('CELLS', 'signal'))
# rescale color and/or opacity maps used to include current data range
slice1Display.RescaleTransferFunctionToDataRange(True)
# show color bar/color legend
slice1Display.SetScalarBarVisibility(renderView1, True)
# get color transfer function/color map for 'signal'
signalLUT = GetColorTransferFunction('signal')
# get opacity transfer function/opacity map for 'signal'
signalPWF = GetOpacityTransferFunction('signal')
# Rescale transfer function
signalLUT.RescaleTransferFunction(5e-06, 1.5e-05)
# Rescale transfer function
signalPWF.RescaleTransferFunction(5e-06, 1.5e-05)
# set active source
SetActiveSource(symmnxs)
# Properties modified on symmnxs
symmnxs.Normalization = 'None'
# set active source
SetActiveSource(slice1)
# hide data in view
Hide(symmnxs, renderView1)
# set active source
SetActiveSource(symmnxs)
# show data in view
symmnxsDisplay = Show(symmnxs, renderView1)
# hide data in view
Hide(symmnxs, renderView1)
# set active source
SetActiveSource(slice1)
# set active source
SetActiveSource(symmnxs)
# create a new 'Slice'
slice2 = Slice(Input=symmnxs)
slice2.SliceType = 'Plane'
slice2.SliceOffsetValues = [0.0]
# init the 'Plane' selected for 'SliceType'
slice2.SliceType.Origin = [0.0005292892456054688, -0.0029540061950683594, 0.0]
# Properties modified on slice2.SliceType
slice2.SliceType.Origin = [0.0, 0.0, -2.5]
slice2.SliceType.Normal = [0.0, 0.0, 1.0]
# show data in view
slice2Display = Show(slice2, renderView1)
# trace defaults for the display properties.
slice2Display.Representation = 'Outline'
slice2Display.ColorArrayName = ['CELLS', '']
# Properties modified on slice2.SliceType
slice2.SliceType.Origin = [0.0, 0.0, -3.5]
# change representation type
slice2Display.SetRepresentationType('Surface')
# set scalar coloring
ColorBy(slice2Display, ('CELLS', 'signal'))
# rescale color and/or opacity maps used to include current data range
slice2Display.RescaleTransferFunctionToDataRange(True)
# show color bar/color legend
slice2Display.SetScalarBarVisibility(renderView1, True)
# Rescale transfer function
signalLUT.RescaleTransferFunction(5e-06, 1.5e-05)
# Rescale transfer function
signalPWF.RescaleTransferFunction(5e-06, 1.5e-05)
# set active source
SetActiveSource(symmnxs)
# create a new 'Slice'
slice3 = Slice(Input=symmnxs)
slice3.SliceType = 'Plane'
slice3.SliceOffsetValues = [0.0]
# init the 'Plane' selected for 'SliceType'
slice3.SliceType.Origin = [0.0005292892456054688, -0.0029540061950683594, 0.0]
# Properties modified on renderView1
renderView1.UseGradientBackground = 1
# Properties modified on renderView1
renderView1.UseGradientBackground = 0
renderView1.UseTexturedBackground = 1
# Properties modified on renderView1
renderView1.UseTexturedBackground = 0
# Properties modified on renderView1.AxesGrid
renderView1.AxesGrid.Visibility = 1
# Properties modified on slice3.SliceType
slice3.SliceType.Origin = [0.0, 0.0, -5.5]
slice3.SliceType.Normal = [0.0, 0.0, 1.0]
# show data in view
slice3Display = Show(slice3, renderView1)
# trace defaults for the display properties.
slice3Display.Representation = 'Outline'
slice3Display.ColorArrayName = ['CELLS', '']
# toggle 3D widget visibility (only when running from the GUI)
Hide3DWidgets(proxy=slice3)
# set active source
SetActiveSource(slice1)
# toggle 3D widget visibility (only when running from the GUI)
Hide3DWidgets(proxy=slice1)
# set active source
SetActiveSource(slice2)
# toggle 3D widget visibility (only when running from the GUI)
Hide3DWidgets(proxy=slice2)
# set active source
SetActiveSource(slice3)
# set active source
SetActiveSource(slice2)
# set active source
SetActiveSource(slice1)
# set active source
SetActiveSource(symmnxs)
# set active source
SetActiveSource(slice3)
# change representation type
slice3Display.SetRepresentationType('Surface')
# set scalar coloring
ColorBy(slice3Display, ('CELLS', 'signal'))
# rescale color and/or opacity maps used to include current data range
slice3Display.RescaleTransferFunctionToDataRange(True)
# show color bar/color legend
slice3Display.SetScalarBarVisibility(renderView1, True)
# Rescale transfer function
signalLUT.RescaleTransferFunction(5e-06, 1.5e-05)
# Rescale transfer function
signalPWF.RescaleTransferFunction(5e-06, 1.5e-05)
# set active source
SetActiveSource(slice2)
# Properties modified on slice2.SliceType
slice2.SliceType.Origin = [0.0, 0.0, 3.5]
# set active source
SetActiveSource(slice3)
# Properties modified on slice3.SliceType
slice3.SliceType.Normal = [1.0, 0.0, 0.0]
# hide color bar/color legend
slice3Display.SetScalarBarVisibility(renderView1, False)
# Properties modified on renderView1.AxesGrid
#renderView1.AxesGrid.XTitle = '[H,0,0] (in 1.178 $/AA^{-1}$)'
# Properties modified on renderView1.AxesGrid
#renderView1.AxesGrid.XTitle = '[H,0,0] (in 1.178 $\\AA^{-1}$)'
# Properties modified on renderView1.AxesGrid
#renderView1.AxesGrid.YTitle = '[0,K,0] (in 1.178 $\\AA^{-1}$)'
#renderView1.AxesGrid.ZTitle = '[0,0,L] (in 1.644 $\\AA^{-1}$)'
# current camera placement for renderView1
#renderView1.CameraPosition = [-54.397712412088154, 9.963089308556828, 56.29434899608743]
#renderView1.CameraFocalPoint = [0.37577724456787115, -0.004430770874023715, 2.884429541787135e-16]
#renderView1.CameraViewUp = [0.060148593809324795, 0.9913090036798635, -0.11699831574000333]
#renderView1.CameraParallelScale = 20.6474778587726
# save screenshot
#SaveScreenshot('/Users/svh/Documents/MantidProject/release-build/ParaView-build/bin/symm_benchmark.jpg', magnification=1, quality=100, view=renderView1)
#### saving camera placements for all active views
# current camera placement for renderView1
renderView1.CameraPosition = [-54.397712412088154, 9.963089308556828, 56.29434899608743]
renderView1.CameraFocalPoint = [0.37577724456787115, -0.004430770874023715, 2.884429541787135e-16]
renderView1.CameraViewUp = [0.060148593809324795, 0.9913090036798635, -0.11699831574000333]
renderView1.CameraParallelScale = 20.6474778587726
#### uncomment the following to render all views
# RenderAllViews()
# alternatively, if you want to write images, you can use SaveScreenshot(...).
renderView1.ViewSize = [1200,1800]
SaveScreenshot("image_0p6.png")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment