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 | Protected Attributes | List of all members
vtkGraphLayoutFilter Class Reference

nice layout of undirected graphs in 3D More...

#include <vtkGraphLayoutFilter.h>

Inherits vtkPolyDataAlgorithm.

Public Types

typedef vtkPolyDataAlgorithm Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkGraphLayoutFilterNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual void SetThreeDimensionalLayout (int)
 
virtual int GetThreeDimensionalLayout ()
 
virtual void ThreeDimensionalLayoutOn ()
 
virtual void ThreeDimensionalLayoutOff ()
 
virtual void SetGraphBounds (double, double, double, double, double, double)
 
virtual void SetGraphBounds (double[6])
 
virtual double * GetGraphBounds ()
 
virtual void GetGraphBounds (double data[6])
 
virtual void SetAutomaticBoundsComputation (int)
 
virtual int GetAutomaticBoundsComputation ()
 
virtual void AutomaticBoundsComputationOn ()
 
virtual void AutomaticBoundsComputationOff ()
 
virtual void SetMaxNumberOfIterations (int)
 
virtual int GetMaxNumberOfIterations ()
 
virtual void SetCoolDownRate (double)
 
virtual double GetCoolDownRate ()
 

Static Public Member Functions

static vtkGraphLayoutFilterNew ()
 
static int IsTypeOf (const char *type)
 
static vtkGraphLayoutFilterSafeDownCast (vtkObjectBase *o)
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 
 vtkGraphLayoutFilter ()
 
 ~vtkGraphLayoutFilter ()
 
int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 

Protected Attributes

double GraphBounds [6]
 
int AutomaticBoundsComputation
 
int MaxNumberOfIterations
 
double CoolDownRate
 
int ThreeDimensionalLayout
 

Detailed Description

nice layout of undirected graphs in 3D

vtkGraphLayoutFilter will reposition a network of nodes, connected by lines or polylines, into a more pleasing arrangement. The class implements a simple force-directed placement algorithm (Fruchterman & Reingold "Graph Drawing by Force-directed Placement" Software-Practice and Experience 21(11) 1991).

The input to the filter is a vtkPolyData representing the undirected graphs. A graph is represented by a set of polylines and/or lines. The output is also a vtkPolyData, where the point positions have been modified. To use the filter, specify whether you wish the layout to occur in 2D or 3D; the bounds in which the graph should lie (note that you can just use automatic bounds computation); and modify the cool down rate (controls the final process of simulated annealing).

Tests:
vtkGraphLayoutFilter (Tests)

Definition at line 42 of file vtkGraphLayoutFilter.h.

Member Typedef Documentation

typedef vtkPolyDataAlgorithm vtkGraphLayoutFilter::Superclass

Definition at line 47 of file vtkGraphLayoutFilter.h.

Constructor & Destructor Documentation

vtkGraphLayoutFilter::vtkGraphLayoutFilter ( )
protected
vtkGraphLayoutFilter::~vtkGraphLayoutFilter ( )
inlineprotected

Definition at line 92 of file vtkGraphLayoutFilter.h.

Member Function Documentation

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

Set / get the region in space in which to place the final graph. The GraphBounds only affects the results if AutomaticBoundsComputation is off.

virtual void vtkGraphLayoutFilter::SetGraphBounds ( double  [6])
virtual

Set / get the region in space in which to place the final graph. The GraphBounds only affects the results if AutomaticBoundsComputation is off.

virtual double* vtkGraphLayoutFilter::GetGraphBounds ( )
virtual

Set / get the region in space in which to place the final graph. The GraphBounds only affects the results if AutomaticBoundsComputation is off.

virtual void vtkGraphLayoutFilter::GetGraphBounds ( double  data[6])
virtual

Set / get the region in space in which to place the final graph. The GraphBounds only affects the results if AutomaticBoundsComputation is off.

virtual void vtkGraphLayoutFilter::SetAutomaticBoundsComputation ( int  )
virtual

Turn on/off automatic graph bounds calculation. If this boolean is off, then the manually specified GraphBounds is used. If on, then the input's bounds us used as the graph bounds.

virtual int vtkGraphLayoutFilter::GetAutomaticBoundsComputation ( )
virtual

Turn on/off automatic graph bounds calculation. If this boolean is off, then the manually specified GraphBounds is used. If on, then the input's bounds us used as the graph bounds.

virtual void vtkGraphLayoutFilter::AutomaticBoundsComputationOn ( )
virtual

Turn on/off automatic graph bounds calculation. If this boolean is off, then the manually specified GraphBounds is used. If on, then the input's bounds us used as the graph bounds.

virtual void vtkGraphLayoutFilter::AutomaticBoundsComputationOff ( )
virtual

Turn on/off automatic graph bounds calculation. If this boolean is off, then the manually specified GraphBounds is used. If on, then the input's bounds us used as the graph bounds.

virtual void vtkGraphLayoutFilter::SetMaxNumberOfIterations ( int  )
virtual

Set/Get the maximum number of iterations to be used. The higher this number, the more iterations through the algorithm is possible, and thus, the more the graph gets modified.

virtual int vtkGraphLayoutFilter::GetMaxNumberOfIterations ( )
virtual

Set/Get the maximum number of iterations to be used. The higher this number, the more iterations through the algorithm is possible, and thus, the more the graph gets modified.

virtual void vtkGraphLayoutFilter::SetCoolDownRate ( double  )
virtual

Set/Get the Cool-down rate. The higher this number is, the longer it will take to "cool-down", and thus, the more the graph will be modified.

virtual double vtkGraphLayoutFilter::GetCoolDownRate ( )
virtual

Set/Get the Cool-down rate. The higher this number is, the longer it will take to "cool-down", and thus, the more the graph will be modified.

virtual void vtkGraphLayoutFilter::SetThreeDimensionalLayout ( int  )
virtual
virtual int vtkGraphLayoutFilter::GetThreeDimensionalLayout ( )
virtual
virtual void vtkGraphLayoutFilter::ThreeDimensionalLayoutOn ( )
virtual
virtual void vtkGraphLayoutFilter::ThreeDimensionalLayoutOff ( )
virtual
int vtkGraphLayoutFilter::RequestData ( vtkInformation *  ,
vtkInformationVector **  ,
vtkInformationVector *   
)
protected

Member Data Documentation

double vtkGraphLayoutFilter::GraphBounds[6]
protected

Definition at line 96 of file vtkGraphLayoutFilter.h.

int vtkGraphLayoutFilter::AutomaticBoundsComputation
protected

Definition at line 97 of file vtkGraphLayoutFilter.h.

int vtkGraphLayoutFilter::MaxNumberOfIterations
protected

Definition at line 98 of file vtkGraphLayoutFilter.h.

double vtkGraphLayoutFilter::CoolDownRate
protected

Definition at line 99 of file vtkGraphLayoutFilter.h.

int vtkGraphLayoutFilter::ThreeDimensionalLayout
protected

Definition at line 100 of file vtkGraphLayoutFilter.h.


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