paraview visualizer animation

Hi ,

I am using Paraview Visualizer web application on my local machine to open around 60 vtk data files. I am able to open it without any problem.
Now I want to save it as animation .avi file. I can do that in paraview desktop application but same thing is not possible in paraview web visualizer , it just allows us to save state in png format.

How to save the animation from Visualizer ?

Even i tried to load plugins as per below documentation but unable to see any plugins in visualizer web app.
–plugins Colon-separated (’:’) list of fully qualified path names to plugin objects to load.

is this functionality supported in Visualizer ? can we extend it through Plugin ?

Thanks,
Nitin Kadam.

For the animation part, it will require some add-on UI and server side control which is doable.

For the plugin, you can indeed load plugins but if they add sources or filters, those need to be listed on the proxies.json file as well.

That proxies.json file that you can provide as argument control what you want to expose and eventually rename those proxies to match a domain naming.

HTH,

Seb

Hi ,

from Visualizer I just want to call (paraview 5.7)SaveAnimation command for the active scene, for this do in need to write plugin ?
I saw LeagacyVTK reader is added to proxies.json in Visualizer code

“readers”: [
{ “name”: “LegacyVTKReader”, “extensions”: [ “vtk” ], “method”: “FileNames” },

in similar way can SaveAnimation command be added to proxies.json ? and we can call it directly from visualizer UI

Even I tried to create plugin for save animation but it fails in loading giving error in register_plugin command.
Do I need to create .xml file as well for my plugin?

Please guide.
I feel like saveanimation is part of paraview command and i can directly call it from visualizer? is it possible ?
please suggest me any example which I can follow to implement this.

Thanks,
Nitin Kadam.

If all you care is saving an animation you don’t need any plugin that feature is already part of ParaView.

But you will need to create a protocol like the one below. Then you will need to register it so it get exposed.

from paraview import simple
from wslink import register as exportRpc
from paraview.web import protocols as pv_protocols

class AnimationHandler(pv_protocols.ParaViewWebProtocol):

    @exportRpc("paraview.animation.save")
    def saveAnim(self, fileName, viewId = -1):
        view = self.getView(viewId)
        resolution = view.ViewSize
        simple.SaveAnimation(fileName, view, ImageResolution=resolution) # FrameWindow=[0, 43]

And then you will need to edit the JavaScript UI to make that network call.