Difference between revisions of "ParaView/User Created Plugins"
From KitwarePublic
< ParaView
(Adapted documentation of AddVertices plugin to updated zip file) 
Daviddoria (Talk  contribs) m (moved User Created Plugins to ParaView/User Created Plugins: Naming convention.) 
(No difference)

Revision as of 13:50, 25 March 2012
General
 Add Vertices  If a dataset contains points (geometry) but no vertices (topology), Paraview will not display anything. Use this filter to add vertices to your dataset.
 Inputs: 1 data set of any type
 Outputs: 1 polydata
Registration
 Iterative Closest Point Transform Filter  Register one point set to another point set using the Iterative Closest Point (ICP) algorithm.
 Inputs: 2 polydata (Source and Target  the source will attempt to be moved to the target)
 Outputs: 1 polydata  the transformed source dataset
 Landmark Transform Filter  Select three or more corresponding points from two data sets and align the two data sets using a Landmark Transform.
 Inputs: 1 polydata, 2 datasets  1) SourceLandmarks (vtkDataSet)  A set of points extracted from the source dataset 2) TargetLandmarks (vtkDataSet)  A set of points from the target dataset corresponding (and ordered the same as) the points in the source dataset 3) SourceDataset (vtkPolyData)  The source dataset which will be transformed
 Outputs: 1 polydata  the transformed source dataset
 Tensor Glyph Filter  The filter exposes vtkTensorGlyph and overcomes the class' shortcoming of not naming its output data arrays which prevents ParaView from listing and using them.
It offers ellipsoids, cuboids, cylinder or superquadric tensor glyphs to visualize tensors by scaling each glyph according to a tensor's eigenvalues or the norms of an individual tensor's columns.
The plugin is no superset of Superquadric Tensor Glyph Filter in that merely one set of superquadric glyphs are used for all tensors, in contrast to the mentioned plugin that determines per tensor suitable superquadric glyph settings.
The Tensor Glyph filter operates on any type of data set. Its output is polygonal.
Version 1.0.2 now supports serial and multicore mode.  Superquadric Tensor Glyph Filter  The filter generates a superquadric glyph at every point in the input data set as suggested by Gordon Kindlmann at VisSym 2004. The glyphs are oriented and scaled according to eigenvalues and eigenvectors of point tensor data of the input data set. If ExtractEigenvalues is false, the entries of the 3x3 matrix are interpreted as principal axes of the superquadric and their norm as the length of these axes.
By default a different glyph is used per tensor, based on its eigenvalues, to distinguish tensors easily for all view angles reducing visual ambiguity (from certain viewpoints, e.g. ellipsoids poorly convey tensor shape). The gamma roundness parameter allows the user to control the visual prominence of orientation information at low anisotropy levels (low differences in eigenvalues). Use values between 1.5 and 3. High values (above about 4) turn the superquadrics back into cuboid glyphs which misleadingly depict underconstrained orientation (problem of eigenvalue indeterminacy).
The behavior of a standard Tensor Glyph filter can be achieved by setting FixedThetaPhiRoundness to true and choosing fixed theta and phi roundness values for all tensors. Set theta and phi roundness to 0.0 to get rectangular glyphs, set them to 1.0 to get ellipsoidal glyphs, set theta roundness to 1.0 and phi roundness to 0.0 to get cylindrical glyphs.
The Superquadric Tensor Glyph filter operates on any type of data set, but assumes positivedefinite tensors, negative and vanishing eigenvalues are ignored. Its output is polygonal.
Version 2.0.2 now supports serial and multicore mode.
Based on experience with large scale data, use of D3 filter is recommended to make the optimum use of multiplecores.
This filter has been successfully tested on a 128X128X128 grid of tensors, running on a cluster with 5 nodes of 8 cpu's each. Beware though; the current implementation requires large amount of computing power as the data scales up.
Instructions
To use these plugins, you must have compiled Paraview from source
 Unzip the plugin
 Create a bin directory in the directory in which you have unzipped the plugin:
mkdir bin
 From the bin directory, run cmake to create the make files:
cmake ../
 Compile the plugin:
make
 Load the plugin in Paraview: 1) Tools > Manage Plugins/Extensions 2) On the right pane, click Load New. 3) Browse to the bin directory you were just working in and load libYOURPLUGIN.so
 You can now use the plugin by selecting an object in the Pipeline Browser and then selecting the plugin you have just added from the Filters menu.