VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
vtkGraphAnnotationLayersFilter Class Reference

Produce filled convex hulls around subsets of vertices in a vtkGraph. More...

#include <vtkGraphAnnotationLayersFilter.h>

Inherits vtkPolyDataAlgorithm.

Public Types

typedef vtkPolyDataAlgorithm Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkGraphAnnotationLayersFilterNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
void SetScaleFactor (double scale)
 
void SetHullShapeToBoundingRectangle ()
 
void SetHullShapeToConvexHull ()
 
void SetMinHullSizeInWorld (double size)
 
void SetMinHullSizeInDisplay (int size)
 
void SetRenderer (vtkRenderer *renderer)
 
virtual unsigned long GetMTime ()
 
void OutlineOn ()
 
void OutlineOff ()
 
void SetOutline (bool b)
 

Static Public Member Functions

static
vtkGraphAnnotationLayersFilter
New ()
 
static int IsTypeOf (const char *type)
 
static
vtkGraphAnnotationLayersFilter
SafeDownCast (vtkObjectBase *o)
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 
 vtkGraphAnnotationLayersFilter ()
 
 ~vtkGraphAnnotationLayersFilter ()
 
int FillInputPortInformation (int port, vtkInformation *info)
 
int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 

Detailed Description

Produce filled convex hulls around subsets of vertices in a vtkGraph.

Produces a vtkPolyData comprised of filled polygons of the convex hull of a cluster. Alternatively, you may choose to output bounding rectangles. Clusters with fewer than three vertices are artificially expanded to ensure visibility (see vtkConvexHull2D).

The first input is a vtkGraph with points, possibly set by passing the graph through vtkGraphLayout (z-values are ignored). The second input is a vtkAnnotationsLayer containing vtkSelectionNodeS of vertex ids (the 'clusters' output of vtkTulipReader for example).

Setting OutlineOn() additionally produces outlines of the clusters on output port 1.

Three arrays are added to the cells of the output: "Hull id"; "Hull name"; and "Hull color".

Note: This filter operates in the x,y-plane and as such works best with an interactor style that does not allow camera rotation, such as vtkInteractorStyleRubberBand2D.

See Also
vtkContext2D
Thanks:
Thanks to Colin Myers, University of Leeds for providing this implementation.
Tests:
vtkGraphAnnotationLayersFilter (Tests)

Definition at line 63 of file vtkGraphAnnotationLayersFilter.h.

Member Typedef Documentation

typedef vtkPolyDataAlgorithm vtkGraphAnnotationLayersFilter::Superclass

Definition at line 67 of file vtkGraphAnnotationLayersFilter.h.

Constructor & Destructor Documentation

vtkGraphAnnotationLayersFilter::vtkGraphAnnotationLayersFilter ( )
protected
vtkGraphAnnotationLayersFilter::~vtkGraphAnnotationLayersFilter ( )
protected

Member Function Documentation

static vtkGraphAnnotationLayersFilter* vtkGraphAnnotationLayersFilter::New ( )
static
static int vtkGraphAnnotationLayersFilter::IsTypeOf ( const char *  type)
static
virtual int vtkGraphAnnotationLayersFilter::IsA ( const char *  type)
virtual
static vtkGraphAnnotationLayersFilter* vtkGraphAnnotationLayersFilter::SafeDownCast ( vtkObjectBase *  o)
static
virtual vtkObjectBase* vtkGraphAnnotationLayersFilter::NewInstanceInternal ( ) const
protectedvirtual
vtkGraphAnnotationLayersFilter* vtkGraphAnnotationLayersFilter::NewInstance ( ) const
void vtkGraphAnnotationLayersFilter::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
void vtkGraphAnnotationLayersFilter::OutlineOn ( )

Produce outlines of the hulls on output port 1.

void vtkGraphAnnotationLayersFilter::OutlineOff ( )

Produce outlines of the hulls on output port 1.

void vtkGraphAnnotationLayersFilter::SetOutline ( bool  b)

Produce outlines of the hulls on output port 1.

void vtkGraphAnnotationLayersFilter::SetScaleFactor ( double  scale)

Scale each hull by the amount specified. Defaults to 1.0.

void vtkGraphAnnotationLayersFilter::SetHullShapeToBoundingRectangle ( )

Set the shape of the hulls to bounding rectangle.

void vtkGraphAnnotationLayersFilter::SetHullShapeToConvexHull ( )

Set the shape of the hulls to convex hull. Default.

void vtkGraphAnnotationLayersFilter::SetMinHullSizeInWorld ( double  size)

Set the minimum x,y-dimensions of each hull in world coordinates. Defaults to 1.0. Set to 0.0 to disable.

void vtkGraphAnnotationLayersFilter::SetMinHullSizeInDisplay ( int  size)

Set the minimum x,y-dimensions of each hull in pixels. You must also set a vtkRenderer. Defaults to 1. Set to 0 to disable.

void vtkGraphAnnotationLayersFilter::SetRenderer ( vtkRenderer *  renderer)

Renderer needed for MinHullSizeInDisplay calculation. Not reference counted.

virtual unsigned long vtkGraphAnnotationLayersFilter::GetMTime ( )
virtual

The modified time of this filter.

int vtkGraphAnnotationLayersFilter::RequestData ( vtkInformation *  ,
vtkInformationVector **  ,
vtkInformationVector *   
)
protected

This is called by the superclass. This is the method you should override.

int vtkGraphAnnotationLayersFilter::FillInputPortInformation ( int  port,
vtkInformation *  info 
)
protected

Set the input to vtkGraph and vtkAnnotationLayers.


The documentation for this class was generated from the following file: