ParaView Documentation

repository·master·Indexed 23 days ago

https://github.com/kitware/paraview

ParaView is an open-source, multi-platform data analysis and visualization application built on the Visualization Toolkit (VTK) for high-performance scientific visualization. Documentation covers building and running the Catalyst Adaptor for CAM5 simulations, developing C++ and Python plugins, utilizing the Catalyst in situ analysis framework, and managing remote connections to pvserver.

Tokens
62.3K
Snippets
108
Records
294
Agent score
82%

What's inside ParaView

  1. Overview of ParaView Node Editor

    master

    The ParaView Node Editor is a plugin that provides a visual graph interface for managing ParaView pipelines. It allows users to:

    • Modify filter and view properties (node elements).
    • Manage filter input/output connections (represented by blue edges).
    • Manage the visibility of outputs in specific views (represented by orange edges).

    The editor is fully compatible with existing ParaView widgets like the Pipeline Browser and Properties Panel, allowing them to be used simultaneously. It automatically synchronizes proxy selection with the Pipeline Browser and property values with the Properties Panel. It also supports state files, Python tracing, and embedded annotations to explain the pipeline.

  2. Overview of Cinema Viewers repository

    master

    The Cinema Viewers repository (Version 2.1) provides an integrated environment for Cinema-related visualization tools. It combines the functionalities of two primary repositories:

    • Cinema:Explorer: For exploratory data analysis and visualization.
    • Cinema:View: For viewing and inspecting data.

    Additionally, it includes Cinema:Simple, which is designed as the simplest implementation for single or double viewer configurations.

  3. Use the Gmsh IO plugin for high-order polynomial solutions

    master

    The Gmsh IO plugin is a ParaView/VTK reader and writer designed to handle high-order polynomial solutions using the Gmsh format. It is built upon the Gmsh 4.7 API.

    Use this plugin when you need to import or export Gmsh mesh files that contain high-order polynomial data within the ParaView environment.

  4. Use the Looking Glass Plugin to render views to Looking Glass displays

    master
    The Looking Glass Plugin allows you to render a ParaView Render View onto Looking Glass displays. Once the plugin is loaded, it provides a dockable control panel within the ParaView interface. This panel contains controls to send the content of the currently active render view (which is indicated by a blue outline) to the connected Looking Glass display.
  5. Integrate NVPipe for low-latency video streaming

    master

    NVPipe is a lightweight library designed for low-latency video compression in networked interactive client/server applications. It provides access to NVIDIA hardware-accelerated codecs with an optional fallback to libx264 via FFMpeg.

    Key Characteristics:

    • Low Latency: Optimized for interactive applications rather than passive video streaming.
    • Network Agnostic: NVPipe does not handle network communication; you must manage the transmission of compressed data (e.g., via sockets) yourself.
    • Hardware Requirements: Requires Kepler-class NVIDIA hardware or newer. Supported on Linux and Windows (OS X is not supported).
    • Limitations: The underlying H.264 stream does not support alpha channels.
  6. Understand the ParaView protobuf fork

    master

    ParaView uses a specialized fork of Protocol Buffers (protobuf) designed to be embedded directly into the ParaView source tree. This fork includes specific modifications to prevent symbol collisions and to integrate seamlessly with the ParaView/VTK build environment.

    Key features of this fork include:

    • Symbol Mangling: All exported symbols are mangled with a vtkprotobuf namespace to avoid conflicts if other versions of protobuf are loaded in the same process.
    • VTK Integration: The CMake build system is integrated with the VTK module system.
    • Proto Wrapping: Includes specialized functions to facilitate the wrapping of .proto files.
  7. Use the PythonAlgorithm plugin examples

    master

    The PythonAlgorithm plugin collection provides examples of how to implement ParaView extensions—specifically sources, filters, writers, and readers—using only Python.

    These examples can be used in two ways:

    1. Direct Loading: Load the .py files directly into ParaView as plugins.
    2. Shared Library: Compile the Python files into a single shared library using the provided CMake logic if your workflow requires a compiled plugin.
  8. SpaceMouseInteractor platform support

    master

    The SpaceMouseInteractor plugin support varies by platform:

    • Windows: Full support using the 3DxWare 10 SDK.
    • MacOS: Full support using the 3DxWare 10 drivers (requires manual header rearrangement).
    • Linux: No functional implementation is currently provided as there is no equivalent official SDK. Users may wish to explore the open-source driver at http://spacenav.sourceforge.net as a potential future alternative.
  9. Use the BivariateRepresentations plugin for bi-variate data visualization

    master

    The BivariateRepresentations plugin extends ParaView with new representation types designed to visualize bi-variate data (data containing two variables of interest simultaneously). It provides two primary methods for visualization:

    1. Perlin Noise Visualization: Use vtkBivariateNoiseRepresentation to visualize bi-variate data using Perlin noise.
    2. 2D Color Texture Visualization: Use vtkBivariateTextureRepresentation to visualize bi-variate data by mapping it to a 2D color texture.
  10. Access the ParaView visualization engine via Python

    master

    ParaView provides scripting support through several different Python-enabled interfaces. Depending on your workflow, you can use:

    • paraview: The standard ParaView client.
    • pvbatch: An MPI-enabled batch application for running parallel scripts.
    • pvpython: The ParaView-specific Python client/interpreter.
    • Other Python-enabled applications: Any application that integrates the ParaView visualization engine.
  11. Understand complex VTK module and ParaView plugin architectures

    master

    This example demonstrates how to structure advanced ParaView extensions involving multiple layers of dependencies. It is useful for developers who need to implement one of the following patterns:

    1. Nested VTK Modules: Creating a ParaView plugin that encapsulates multiple distinct VTK modules.
    2. Shared VTK Modules: Developing a standalone VTK module designed to be shared across multiple different ParaView plugins.
    3. Client-Server Wrapping: Triggering the Client-Server wrapping process for a shared module to ensure it functions correctly in ParaView's distributed architecture.

    To implement the shared module wrapping, refer to the CMake configuration in ComplexModuleArchitecture/ParaViewPlugin/CMakeLists.txt.