Camera and Property Linking

From KitwarePublic
Revision as of 20:00, 16 February 2007 by Berk (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

This is an overview of property linking in ParaView.

There are a few types of links.

  • Camera
  • Proxy
  • Property

Camera Linking

  • A camera link links cameras from two render modules together.
  • A change in one, propagates to the other, and vice versa.

Proxy Linking

  • Two proxies can be linked together.
  • If a proxy have any property with the same name as the other proxy, those properties will be linked.
    • For example:
      • Two sphere sources will have all of their properties linked.
      • A sphere source and a cylinder source will have only Radius and Center linked.
      • The planes of two clip filters can be linked.

Property Linking

  • Two properties of the same type can be linked.
    • For example:
      • A sphere's Phi Resolution and Theta Resolution can be linked.
      • A cylinder's radius and a sphere's radius can be linked.
      • A cylinder's radius cannot be linked with a sphere's center.

Creating links in ParaView

  • Quick view links can be created by right clicking in a view and selecting "Link Views..." A popup window is presented with the ability to name the link, and cancel. The link is created when the user clicks on another view.
  • Tools -> Manage Links... is a place to manage all types of links.
    • Links can be added/edited/removed.
    • When adding/editing a link, property or object types can be chosen. Views can be selected under the object type.

Implementation Overview

  • Server Manager
    • vtkSMCameraLink, vtkSMPropertyLink, vtkSMProxyLink share a common vtkSMLink base class.
    • vtkSM*Link classes support bi-directional links, with multiple "inputs" and multiple "outputs".
    • If an "input" changes, the values are copied to the "outputs."
  • GUI side
    • All links are bi-directional.
    • All links are between only two objects. In other words, the vtkSM*Link objects have two inputs and two outputs. If it were not bi-directional, it would be one input and one output.
    • Camera linking is called View linking.