[Paraview] Re: Re: Save animation using python script (Utkarsh Ayachit)

Michael Martinec michael.martinec at stud.unibas.ch
Fri Jul 27 08:00:30 EDT 2007


I need a little more help on this one. Could you give me an example 
implementation? What is my animation scene proxy? Below is my xml file 
and script (made using dump script from Jordi) for which some of you 
have asked.


*.pvd:

<?xml version="1.0"?>
<VTKFile type="Collection" version="0.1" byte_order="LittleEndian" 
compressor="vtkZLibDataCompressor">
    <Collection>
        <DataSet timestep="0" file="000000-solution.vtu"/>
...
        <DataSet timestep="130" file="000130-solution.vtu"/>
    </Collection>
</VTKFile>


*.py:

#!/usr/local/bin/pvpython
#                                                    <script>.py
import paraview
if     paraview.ActiveConnection == None : CONSOLE = True
else                                     : CONSOLE = False
if CONSOLE:                                           # init Conn and 
RenderM
  paraview.ActiveConnection = paraview.Connect()
  renderM = paraview.CreateRenderWindow()
else:
  renders = paraview.pyProxyManager().GetProxiesInGroup("multirendermodule",
                                                  paraview.ActiveConnection)
  renderM = renders.values()[0].GetRenderModules()[0]

                                                       #  batchAnimpvd
batchAnimpvd = paraview.CreateProxy("sources", "PVDReader", "sources", 
"batchAnim.pvd")
batchAnimpvd.SetFileName( 
"/home/miki/uni/bachelor/solutions/batchAnim.pvd" )
batchAnimpvd.SetTimestepValues( 0, 1, 2, 3, 4, 5, 6, 7, 8 )
batchAnimpvd.UpdateVTKObjects()


                                                       #  tissuesvtu
tissuesvtu = paraview.CreateProxy("sources", 
"XMLUnstructuredGridReader", "sources", "tissues.vtu")
tissuesvtu.SetCellArrayInfo( "tissues", "1" )
tissuesvtu.SetCellArrayStatus( "tissues", "1" )
tissuesvtu.SetFileName( "/home/miki/uni/bachelor/tissues.vtu" )
# tissuesvtu.SetPointArrayInfo( "" )
# tissuesvtu.SetPointArrayStatus( "" )
tissuesvtu.UpdateVTKObjects()

                                                       #  cutFunction
cutFunction = paraview.CreateProxy("implicit_functions", "Plane", 
"pq_helper_proxies.348", "CutFunction")
cutFunction.SetInput( batchAnimpvd )
cutFunction.SetNormal( 0, 1, 0 )
cutFunction.SetOffset( 0 )
cutFunction.SetOrigin( -0.006899, 0.005319, -0.0310375 )
cutFunction.UpdateVTKObjects()


                                                       #  v1tissues
v1tissues = paraview.CreateProxy("lookup_tables", "PVLookupTable", 
"lookup_tables", "1.tissues")
v1tissues.SetColorSpace( 1 )
v1tissues.SetDiscretize( 1 )
v1tissues.SetHSVWrap( 0 )
v1tissues.SetLockScalarRange( 0 )
v1tissues.SetNumberOfTableValues( 256 )
v1tissues.SetRGBPoints( 1, 0, 0, 1, 7, 1, 0, 0 )
v1tissues.SetScalarRangeInitialized( 1 )
v1tissues.SetUseLogScale( 0 )
v1tissues.SetVectorComponent( 0 )
v1tissues.SetVectorMode( 0 )
v1tissues.UpdateVTKObjects()

                                                       #  
scalarOpacityFunction
scalarOpacityFunction = paraview.CreateProxy("piecewise_functions", 
"PiecewiseFunction", "pq_helper_proxies.176", "ScalarOpacityFunction")
scalarOpacityFunction.SetPoints( 0, 0, 1, 1 )
scalarOpacityFunction.UpdateVTKObjects()

                                                       #  threshold
threshold = paraview.CreateProxy("filters", "Threshold", "sources", 
"Threshold1")
threshold.SetAllScalars( 1 )
threshold.SetInput( tissuesvtu )
threshold.SetSelectInputScalars( "tissues", "1" )
threshold.SetThresholdBetween( 3.58, 4.42 )
threshold.UpdateVTKObjects()

                                                       #  
scalarOpacityFunction
scalarOpacityFunction = paraview.CreateProxy("piecewise_functions", 
"PiecewiseFunction", "pq_helper_proxies.268", "ScalarOpacityFunction")
scalarOpacityFunction.SetPoints( 0, 0, 1, 1 )
scalarOpacityFunction.UpdateVTKObjects()

                                                       #  
scalarOpacityFunction
scalarOpacityFunction = paraview.CreateProxy("piecewise_functions", 
"PiecewiseFunction", "pq_helper_proxies.76", "ScalarOpacityFunction")
scalarOpacityFunction.SetPoints( 25.4353, 0, 46.7218, 1 )
scalarOpacityFunction.UpdateVTKObjects()

                                                       #  v1y
v1y = paraview.CreateProxy("lookup_tables", "PVLookupTable", 
"lookup_tables", "1.y")
v1y.SetColorSpace( 1 )
v1y.SetDiscretize( 1 )
v1y.SetHSVWrap( 0 )
v1y.SetLockScalarRange( 0 )
v1y.SetNumberOfTableValues( 256 )
v1y.SetRGBPoints( 25.4353, 0, 0, 1, 46.7218, 1, 0, 0 )
v1y.SetScalarRangeInitialized( 1 )
v1y.SetUseLogScale( 0 )
v1y.SetVectorComponent( 0 )
v1y.SetVectorMode( 0 )
v1y.UpdateVTKObjects()

                                                       #  
scalarOpacityFunction
scalarOpacityFunction = paraview.CreateProxy("piecewise_functions", 
"PiecewiseFunction", "pq_helper_proxies.366", "ScalarOpacityFunction")
scalarOpacityFunction.SetPoints( 0, 0, 1, 1 )
scalarOpacityFunction.UpdateVTKObjects()

                                                       #  cut
cut = paraview.CreateProxy("filters", "Cut", "sources", "Cut1")
cut.SetContourValues( 0 )
cut.SetCutFunction( cutFunction )
cut.SetInput( batchAnimpvd )
# cut.SetInputBounds( "" )
cut.UpdateVTKObjects()


                                                       #  dataDisplay2
dataDisplay2 = paraview.CreateDisplay(tissuesvtu, renderM)
dataDisplay2.SetCacheUpdate( 0, -1 )
dataDisplay2.SetInput( tissuesvtu )
dataDisplay2.SetLODResolution( 50 )
dataDisplay2.SetRepresentation( 2 )
dataDisplay2.SetUpdateTime( 0 )
dataDisplay2.SetVisibility( 0 )
dataDisplay2.SetAmbientColor( 1, 1, 1 )
# dataDisplay2.SetClippingPlanes( "" )
dataDisplay2.SetColor( 1, 1, 1 )
dataDisplay2.SetColorArray( "tissues" )
dataDisplay2.SetColorMode( 1 )
dataDisplay2.SetDiffuseColor( 1, 1, 1 )
dataDisplay2.SetForceStrips( 0 )
dataDisplay2.SetImmediateModeRendering( 0 )
dataDisplay2.SetInterpolateScalarsBeforeMapping( 1 )
dataDisplay2.SetInterpolation( 1 )
dataDisplay2.SetLineWidth( 1 )
dataDisplay2.SetLookupTable( v1tissues )
dataDisplay2.SetMapScalars( 1 )
# dataDisplay2.SetMaterial( "" )
dataDisplay2.SetNumberOfSubPieces( 1 )
dataDisplay2.SetOpacity( 1 )
dataDisplay2.SetOrientation( 0, 0, 0 )
dataDisplay2.SetOrigin( 0, 0, 0 )
dataDisplay2.SetPickable( 1 )
dataDisplay2.SetPointSize( 5 )
dataDisplay2.SetPosition( 0, 0, 0 )
# dataDisplay2.SetRenderModuleHelper( none )
dataDisplay2.SetSaveCacheOnCacheUpdate( 1 )
dataDisplay2.SetScalarMode( 4 )
dataDisplay2.SetScalarOpacityFunction( scalarOpacityFunction )
dataDisplay2.SetScalarOpacityUnitDistance( 1 )
dataDisplay2.SetScalarVisibility( 1 )
dataDisplay2.SetScale( 1, 1, 1 )
dataDisplay2.SetShading( 0 )
dataDisplay2.SetSpecularColor( 1, 1, 1 )
dataDisplay2.SetSpecularPower( 100 )
dataDisplay2.SetUseLookupTableScalarRange( 1 )
dataDisplay2.SetUseStrips( 0 )
dataDisplay2.UpdateVTKObjects()

                                                       #  dataDisplay3
dataDisplay3 = paraview.CreateDisplay(threshold, renderM)
dataDisplay3.SetCacheUpdate( 0, -1 )
dataDisplay3.SetInput( threshold )
dataDisplay3.SetLODResolution( 50 )
dataDisplay3.SetRepresentation( 2 )
dataDisplay3.SetUpdateTime( 0 )
dataDisplay3.SetVisibility( 1 )
dataDisplay3.SetAmbientColor( 1, 1, 1 )
# dataDisplay3.SetClippingPlanes( "" )
dataDisplay3.SetColor( 1, 1, 1 )
dataDisplay3.SetColorArray( "tissues" )
dataDisplay3.SetColorMode( 1 )
dataDisplay3.SetDiffuseColor( 1, 1, 1 )
dataDisplay3.SetForceStrips( 0 )
dataDisplay3.SetImmediateModeRendering( 0 )
dataDisplay3.SetInterpolateScalarsBeforeMapping( 1 )
dataDisplay3.SetInterpolation( 1 )
dataDisplay3.SetLineWidth( 1 )
dataDisplay3.SetLookupTable( v1tissues )
dataDisplay3.SetMapScalars( 1 )
# dataDisplay3.SetMaterial( "" )
dataDisplay3.SetNumberOfSubPieces( 1 )
dataDisplay3.SetOpacity( 0.2 )
dataDisplay3.SetOrientation( 0, 0, 0 )
dataDisplay3.SetOrigin( 0, 0, 0 )
dataDisplay3.SetPickable( 1 )
dataDisplay3.SetPointSize( 5 )
dataDisplay3.SetPosition( 0, 0, 0 )
# dataDisplay3.SetRenderModuleHelper( none )
dataDisplay3.SetSaveCacheOnCacheUpdate( 1 )
dataDisplay3.SetScalarMode( 4 )
dataDisplay3.SetScalarOpacityFunction( scalarOpacityFunction )
dataDisplay3.SetScalarOpacityUnitDistance( 1 )
dataDisplay3.SetScalarVisibility( 1 )
dataDisplay3.SetScale( 1, 1, 1 )
dataDisplay3.SetShading( 0 )
dataDisplay3.SetSpecularColor( 1, 1, 1 )
dataDisplay3.SetSpecularPower( 100 )
dataDisplay3.SetUseLookupTableScalarRange( 1 )
dataDisplay3.SetUseStrips( 0 )
dataDisplay3.UpdateVTKObjects()

                                                       #  dataDisplay
dataDisplay = paraview.CreateDisplay(batchAnimpvd, renderM)
dataDisplay.SetCacheUpdate( 0, -1 )
dataDisplay.SetInput( batchAnimpvd )
dataDisplay.SetLODResolution( 50 )
dataDisplay.SetRepresentation( 4 )
dataDisplay.SetUpdateTime( 0 )
dataDisplay.SetVisibility( 1 )
dataDisplay.SetAmbientColor( 1, 1, 1 )
# dataDisplay.SetClippingPlanes( "" )
dataDisplay.SetColor( 1, 1, 1 )
dataDisplay.SetColorArray( "y" )
dataDisplay.SetColorMode( 1 )
dataDisplay.SetDiffuseColor( 1, 1, 1 )
dataDisplay.SetForceStrips( 0 )
dataDisplay.SetImmediateModeRendering( 0 )
dataDisplay.SetInterpolateScalarsBeforeMapping( 1 )
dataDisplay.SetInterpolation( 1 )
dataDisplay.SetLineWidth( 1 )
dataDisplay.SetLookupTable( v1y )
dataDisplay.SetMapScalars( 1 )
# dataDisplay.SetMaterial( "" )
dataDisplay.SetNumberOfSubPieces( 1 )
dataDisplay.SetOpacity( 1 )
dataDisplay.SetOrientation( 0, 0, 0 )
dataDisplay.SetOrigin( 0, 0, 0 )
dataDisplay.SetPickable( 1 )
dataDisplay.SetPointSize( 5 )
dataDisplay.SetPosition( 0, 0, 0 )
# dataDisplay.SetRenderModuleHelper( none )
dataDisplay.SetSaveCacheOnCacheUpdate( 1 )
dataDisplay.SetScalarMode( 3 )
dataDisplay.SetScalarOpacityFunction( scalarOpacityFunction )
dataDisplay.SetScalarOpacityUnitDistance( 1 )
dataDisplay.SetScalarVisibility( 1 )
dataDisplay.SetScale( 1, 1, 1 )
dataDisplay.SetShading( 0 )
dataDisplay.SetSpecularColor( 1, 1, 1 )
dataDisplay.SetSpecularPower( 100 )
dataDisplay.SetUseLookupTableScalarRange( 1 )
dataDisplay.SetUseStrips( 0 )
dataDisplay.UpdateVTKObjects()

                                                       #  dataDisplay4
dataDisplay4 = paraview.CreateDisplay(cut, renderM)
dataDisplay4.SetCacheUpdate( 0, -1 )
dataDisplay4.SetInput( cut )
dataDisplay4.SetLODResolution( 50 )
dataDisplay4.SetRepresentation( 2 )
dataDisplay4.SetUpdateTime( 0 )
dataDisplay4.SetVisibility( 1 )
dataDisplay4.SetAmbientColor( 1, 1, 1 )
# dataDisplay4.SetClippingPlanes( "" )
dataDisplay4.SetColor( 1, 1, 1 )
dataDisplay4.SetColorArray( "y" )
dataDisplay4.SetColorMode( 1 )
dataDisplay4.SetDiffuseColor( 1, 1, 1 )
dataDisplay4.SetForceStrips( 0 )
dataDisplay4.SetImmediateModeRendering( 0 )
dataDisplay4.SetInterpolateScalarsBeforeMapping( 1 )
dataDisplay4.SetInterpolation( 1 )
dataDisplay4.SetLineWidth( 1 )
dataDisplay4.SetLookupTable( v1y )
dataDisplay4.SetMapScalars( 1 )
# dataDisplay4.SetMaterial( "" )
dataDisplay4.SetNumberOfSubPieces( 1 )
dataDisplay4.SetOpacity( 1 )
dataDisplay4.SetOrientation( 0, 1, 0 )
dataDisplay4.SetOrigin( 0, 0, 0 )
dataDisplay4.SetPickable( 1 )
dataDisplay4.SetPointSize( 5 )
dataDisplay4.SetPosition( 0, 0, 0 )
# dataDisplay4.SetRenderModuleHelper( none )
dataDisplay4.SetSaveCacheOnCacheUpdate( 1 )
dataDisplay4.SetScalarMode( 3 )
dataDisplay4.SetScalarOpacityFunction( scalarOpacityFunction )
dataDisplay4.SetScalarOpacityUnitDistance( 1 )
dataDisplay4.SetScalarVisibility( 1 )
dataDisplay4.SetScale( 1, 1, 1 )
dataDisplay4.SetShading( 0 )
dataDisplay4.SetSpecularColor( 1, 1, 1 )
dataDisplay4.SetSpecularPower( 100 )
dataDisplay4.SetUseLookupTableScalarRange( 1 )
dataDisplay4.SetUseStrips( 0 )
dataDisplay4.UpdateVTKObjects()


if CONSOLE:
  renderM.ResetCamera()
  renderM.StillRender()
  raw_input("Enter to finish")
  #import time ; time.sleep(2)

> Utkarsh wrote:
>
>
> You'll have to create a "vtkSMAnimationSceneImageWriter" object to write 
> an animation out. This is not a proxy. So simply create the writer 
> object, set properties such as "FrameRate", "FileName", "Magnification" 
> on it. Also set the "AnimationScene" to point to the animation scene 
> proxy, and the call "Save". That should write the animation out.
>
> Utkarsh.
>
> Michael Martinec wrote:
>   
>> Hi
>>
>> I have created a *.pvd xml file which loads timestep and *.vtu file data 
>> into paraview.
>>  From paraview i can then save the animation to a *.avi file nicely. I 
>> could also create a python script which loads the *.pvd file and brings 
>> me to the state before saving it as an animation. But I do not know how 
>> to save the animation from the script. What do I have to apply to the 
>> python script?
>>
>> Regards and thanx for helping!
>> *Michael
>>
>>
>> _______________________________________________
>> ParaView mailing list
>> ParaView at paraview.org
>> http://www.paraview.org/mailman/listinfo/paraview
>>
>>     
>
>
> ------------------------------
>
> _______________________________________________
> ParaView mailing list
> ParaView at paraview.org
> http://www.paraview.org/mailman/listinfo/paraview
>
>
> End of ParaView Digest, Vol 39, Issue 44
> ****************************************
>
>   

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://public.kitware.com/pipermail/paraview/attachments/20070727/fdbdc9f9/attachment-0001.html


More information about the ParaView mailing list