VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions
vtkGraphAnnotationLayersFilter Class Reference

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

#include <vtkGraphAnnotationLayersFilter.h>

Inheritance diagram for vtkGraphAnnotationLayersFilter:
Inheritance graph
[legend]
Collaboration diagram for vtkGraphAnnotationLayersFilter:
Collaboration graph
[legend]

List of all members.

Public Types

typedef vtkPolyDataAlgorithm Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
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 (vtkObject *o)

Protected Member Functions

 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 62 of file vtkGraphAnnotationLayersFilter.h.


Member Typedef Documentation

Reimplemented from vtkPolyDataAlgorithm.

Definition at line 66 of file vtkGraphAnnotationLayersFilter.h.


Constructor & Destructor Documentation

vtkGraphAnnotationLayersFilter::vtkGraphAnnotationLayersFilter ( ) [protected]
vtkGraphAnnotationLayersFilter::~vtkGraphAnnotationLayersFilter ( ) [protected]

Member Function Documentation

static vtkGraphAnnotationLayersFilter* vtkGraphAnnotationLayersFilter::New ( ) [static]

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkPolyDataAlgorithm.

virtual const char* vtkGraphAnnotationLayersFilter::GetClassName ( ) [virtual]

Reimplemented from vtkPolyDataAlgorithm.

static int vtkGraphAnnotationLayersFilter::IsTypeOf ( const char *  name) [static]

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkPolyDataAlgorithm.

virtual int vtkGraphAnnotationLayersFilter::IsA ( const char *  name) [virtual]

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkPolyDataAlgorithm.

static vtkGraphAnnotationLayersFilter* vtkGraphAnnotationLayersFilter::SafeDownCast ( vtkObject o) [static]

Reimplemented from vtkPolyDataAlgorithm.

void vtkGraphAnnotationLayersFilter::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkPolyDataAlgorithm.

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.

Reimplemented from vtkObject.

int vtkGraphAnnotationLayersFilter::RequestData ( vtkInformation ,
vtkInformationVector **  ,
vtkInformationVector  
) [protected, virtual]

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

Reimplemented from vtkPolyDataAlgorithm.

int vtkGraphAnnotationLayersFilter::FillInputPortInformation ( int  port,
vtkInformation info 
) [protected, virtual]

Set the input to vtkGraph and vtkAnnotationLayers.

Reimplemented from vtkPolyDataAlgorithm.


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