mirror of
https://github.com/OpenFOAM/ThirdParty-6.git
synced 2025-12-08 06:57:43 +00:00
ParaView-5.0.1: Added the source-tree to ThirdParty-dev and patched as described in the README file
Resolves bug-report http://bugs.openfoam.org/view.php?id=2098
This commit is contained in:
@ -0,0 +1,70 @@
|
||||
# the code below is needed to import objects from paraview.simple
|
||||
# plus the definition of vtkTrivialProducer into this python script.
|
||||
try: paraview.simple
|
||||
except: from paraview.simple import *
|
||||
|
||||
def DoCoProcessing(datadescription):
|
||||
timestep = datadescription.GetTimeStep()
|
||||
|
||||
grid = datadescription.GetInputDescriptionByName("input").GetGrid()
|
||||
pressure = grid.GetPointData().GetArray('Pressure')
|
||||
|
||||
grid.GetPointData().SetScalars(pressure)
|
||||
trivialproducer = PVTrivialProducer()
|
||||
obj = trivialproducer.GetClientSideObject()
|
||||
obj.SetOutput(grid)
|
||||
|
||||
if grid.IsA("vtkImageData") == True or grid.IsA("vtkStructuredGrid") == True or grid.IsA("vtkRectilinearGrid") == True:
|
||||
extent = datadescription.GetInputDescriptionByName("input").GetWholeExtent()
|
||||
trivialproducer.WholeExtent= [ extent[0], extent[1], extent[2], extent[3], extent[4], extent[5] ]
|
||||
|
||||
# get global range of Pressure
|
||||
trivialproducer.UpdatePipeline()
|
||||
RenderView1 = GetRenderView()
|
||||
RenderView1.ViewSize = [200, 300]
|
||||
DataRepresentation1 = Show()
|
||||
DataRepresentation1.Visibility = 0
|
||||
Contour1 = Contour( PointMergeMethod="Uniform Binning" )
|
||||
|
||||
Contour1.PointMergeMethod = "Uniform Binning"
|
||||
Contour1.ContourBy = ['POINTS', 'Pressure']
|
||||
Contour1.Isosurfaces = [2952.0]
|
||||
|
||||
RenderView1.Background = [1,1,1]
|
||||
|
||||
RenderView1.CameraPosition = [5.0, 25.0, 347.53624862725769]
|
||||
RenderView1.CameraFocalPoint = [5.0, 25.0, 307.5]
|
||||
RenderView1.CameraClippingRange = [24.710886140985117, 59.424292356666555]
|
||||
RenderView1.CameraParallelScale = 13.743685418725535
|
||||
DataRepresentation2 = Show()
|
||||
DataRepresentation2.ScaleFactor = 1.5
|
||||
DataRepresentation2.EdgeColor = [0.0, 0.0, 0.50000762951094835]
|
||||
|
||||
fname = 'CPGrid' + str(timestep) + '.png'
|
||||
WriteImage(fname)
|
||||
|
||||
DataRepresentation2 = Show(trivialproducer)
|
||||
DataRepresentation2.LookupTable = MakeBlueToRedLT(2702, 3202)
|
||||
DataRepresentation2.ColorArrayName = ('POINTS', 'Pressure')
|
||||
DataRepresentation2.Representation="Surface"
|
||||
DataRepresentation2 = Show(Contour1)
|
||||
RenderView1 = Render()
|
||||
RenderView1.Background=[1,1,1] #white
|
||||
RenderView1.CameraPosition = [5.0, 25.0, 347.53624862725769]
|
||||
RenderView1.CameraFocalPoint = [5.0, 25.0, 307.5]
|
||||
RenderView1.CameraClippingRange = [24.710886140985117, 59.424292356666555]
|
||||
RenderView1.CameraParallelScale = 13.743685418725535
|
||||
|
||||
fname = 'CPPressure' + str(timestep) + '.png'
|
||||
WriteImage(fname)
|
||||
|
||||
|
||||
def RequestDataDescription(datadescription):
|
||||
time = datadescription.GetTime()
|
||||
timestep = datadescription.GetTimeStep()
|
||||
if timestep % 20 == 0:
|
||||
# add in some fields
|
||||
#print 'added Pressure and wanting to do coprocessing'
|
||||
datadescription.GetInputDescriptionByName("input").AddPointField("Pressure")
|
||||
datadescription.GetInputDescriptionByName('input').GenerateMeshOn()
|
||||
return
|
||||
Reference in New Issue
Block a user