Difference between app with PV's framework and maximum customization

I learnt from PV’s wiki webpage that customized application could either be PV-branded or radically different from PV. But I was uncertain about their major difference.

  1. Since a PV-branded app could be generated by virtue of PV’s current GUI components, is it a simplified version of PV?
  2. As for PV’s Reactions and Behaviors, provided that I wanna display viewimmediately after data is loaded(i.e. skip the Apply click), could this be done in PV-branded app?
  3. And an app with maximum customization also includes “pqApplicationcore.h”, is this core-based and could still use wrapped VTK-API?

I’m reading PV’s C++ API document for now. Hope my description above can make sense to u guys, all I want is to be clear lest I did everything in vain.

That is one way to build a custom application, but not the only way. You can use no ParaView GUI components and still use ParaView as a rendering framework for your application with completely custom GUI components.


I’m not sure what you mean by “core-based”, but you can still use ParaView’s server manager infrastructure to create file readers, filters, views, etc. in a layer built on top of VTK objects. You can invoke VTK classes not wrapped in the server manager layer by providing XML that specifies the wrapping, and you can create custom VTK classes and access them pretty much the same way.

Much thanks to u.
Now I get a deeper understanding of customization in ParaView. I was being puzzled over the complicated hierarchy of ParaView’s API in paraview-docs. Then things goes better when I begin to look into PV’s infrastucture in Visual Studio(project built from source).
Thanks again for ur much detailed help!

skip the Apply click

You can do that in standard ParaView.
Settings -> General -> Auto Appply

Hello, sorry to bother you again. I learnt that ParaView provides a CMake macro build_paraview_client for a standard customization framework.
For example, an example in paraview source——SpreadSheet:
However, I also found that ParaView defines another macro paraview_client_add in ParaViewClient.cmake
They require similiar parameters so I guess one of them got replaced by the other, but not sure which one.
Moreover, I encountered errors while building that SpreadSheet example:
so the build_paraview_client macro should be the deprecated one?

Spreadsheet is a disabled, out of date example that should be removed or upgraded.

See Examples/CMakeLists.txt to check which example are actually usable.

1 Like