VTK  9.0.1
vtkHierarchicalGraphPipeline.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkHierarchicalGraphPipeline.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 /*-------------------------------------------------------------------------
16  Copyright 2008 Sandia Corporation.
17  Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18  the U.S. Government retains certain rights in this software.
19 -------------------------------------------------------------------------*/
31 #ifndef vtkHierarchicalGraphPipeline_h
32 #define vtkHierarchicalGraphPipeline_h
33 
34 #include "vtkObject.h"
35 #include "vtkViewsInfovisModule.h" // For export macro
36 
37 class vtkActor;
38 class vtkActor2D;
39 class vtkAlgorithmOutput;
40 class vtkApplyColors;
43 class vtkEdgeCenters;
45 class vtkGraphToPolyData;
46 class vtkPolyDataMapper;
47 class vtkRenderView;
49 class vtkSelection;
50 class vtkTextProperty;
51 class vtkViewTheme;
52 
53 class VTKVIEWSINFOVIS_EXPORT vtkHierarchicalGraphPipeline : public vtkObject
54 {
55 public:
58  void PrintSelf(ostream& os, vtkIndent indent) override;
59 
61 
64  vtkGetObjectMacro(Actor, vtkActor);
66 
68 
71  vtkGetObjectMacro(LabelActor, vtkActor2D);
73 
75 
78  virtual void SetBundlingStrength(double strength);
79  virtual double GetBundlingStrength();
81 
83 
86  virtual void SetLabelArrayName(const char* name);
87  virtual const char* GetLabelArrayName();
89 
91 
94  virtual void SetLabelVisibility(bool vis);
95  virtual bool GetLabelVisibility();
96  vtkBooleanMacro(LabelVisibility, bool);
98 
100 
103  virtual void SetLabelTextProperty(vtkTextProperty* prop);
104  virtual vtkTextProperty* GetLabelTextProperty();
106 
108 
111  virtual void SetColorArrayName(const char* name);
112  virtual const char* GetColorArrayName();
114 
116 
119  virtual void SetColorEdgesByArray(bool vis);
120  virtual bool GetColorEdgesByArray();
121  vtkBooleanMacro(ColorEdgesByArray, bool);
123 
125 
128  virtual void SetVisibility(bool vis);
129  virtual bool GetVisibility();
130  vtkBooleanMacro(Visibility, bool);
132 
137  virtual vtkSelection* ConvertSelection(vtkDataRepresentation* rep, vtkSelection* sel);
138 
145  virtual void PrepareInputConnections(
146  vtkAlgorithmOutput* graphConn, vtkAlgorithmOutput* treeConn, vtkAlgorithmOutput* annConn);
147 
151  virtual void ApplyViewTheme(vtkViewTheme* theme);
152 
154 
157  vtkSetStringMacro(HoverArrayName);
158  vtkGetStringMacro(HoverArrayName);
160 
162 
168  virtual void SetSplineType(int type);
169  virtual int GetSplineType();
171 
175  void RegisterProgress(vtkRenderView* view);
176 
177 protected:
179  ~vtkHierarchicalGraphPipeline() override;
180 
191 
193 
194  vtkSetStringMacro(ColorArrayNameInternal);
195  vtkGetStringMacro(ColorArrayNameInternal);
197 
198  vtkSetStringMacro(LabelArrayNameInternal);
199  vtkGetStringMacro(LabelArrayNameInternal);
201 
202 private:
204  void operator=(const vtkHierarchicalGraphPipeline&) = delete;
205 };
206 
207 #endif
vtkPolyDataMapper
map vtkPolyData to graphics primitives
Definition: vtkPolyDataMapper.h:36
vtkHierarchicalGraphPipeline::Spline
vtkSplineGraphEdges * Spline
Definition: vtkHierarchicalGraphPipeline.h:184
vtkGraphToPolyData
convert a vtkGraph to vtkPolyData
Definition: vtkGraphToPolyData.h:41
vtkHierarchicalGraphPipeline::TextProperty
vtkTextProperty * TextProperty
Definition: vtkHierarchicalGraphPipeline.h:187
vtkRenderView
A view containing a renderer.
Definition: vtkRenderView.h:64
vtkX3D::type
@ type
Definition: vtkX3D.h:522
vtkHierarchicalGraphPipeline::ApplyColors
vtkApplyColors * ApplyColors
Definition: vtkHierarchicalGraphPipeline.h:181
vtkObject::New
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
vtkHierarchicalGraphPipeline::GraphToPoly
vtkGraphToPolyData * GraphToPoly
Definition: vtkHierarchicalGraphPipeline.h:183
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:62
vtkHierarchicalGraphPipeline::Actor
vtkActor * Actor
Definition: vtkHierarchicalGraphPipeline.h:186
vtkApplyColors
apply colors to a data set.
Definition: vtkApplyColors.h:86
vtkHierarchicalGraphPipeline::EdgeCenters
vtkEdgeCenters * EdgeCenters
Definition: vtkHierarchicalGraphPipeline.h:188
vtkSelection
data object that represents a "selection" in VTK.
Definition: vtkSelection.h:57
vtkHierarchicalGraphPipeline
helper class for rendering graphs superimposed on a tree.
Definition: vtkHierarchicalGraphPipeline.h:53
vtkHierarchicalGraphPipeline::LabelActor
vtkActor2D * LabelActor
Definition: vtkHierarchicalGraphPipeline.h:190
vtkViewTheme
Sets theme colors for a graphical view.
Definition: vtkViewTheme.h:42
vtkDataRepresentation
The superclass for all representations.
Definition: vtkDataRepresentation.h:72
vtkHierarchicalGraphPipeline::HoverArrayName
char * HoverArrayName
Definition: vtkHierarchicalGraphPipeline.h:192
vtkHierarchicalGraphPipeline::Bundle
vtkGraphHierarchicalBundleEdges * Bundle
Definition: vtkHierarchicalGraphPipeline.h:182
vtkActor
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:45
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkObject::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkHierarchicalGraphPipeline::ColorArrayNameInternal
char * ColorArrayNameInternal
Definition: vtkHierarchicalGraphPipeline.h:195
vtkSplineGraphEdges
subsample graph edges to make smooth curves
Definition: vtkSplineGraphEdges.h:45
vtkHierarchicalGraphPipeline::LabelArrayNameInternal
char * LabelArrayNameInternal
Definition: vtkHierarchicalGraphPipeline.h:199
vtkX3D::name
@ name
Definition: vtkX3D.h:225
vtkObject.h
vtkTextProperty
represent text properties.
Definition: vtkTextProperty.h:33
vtkActor2D
a actor that draws 2D data
Definition: vtkActor2D.h:39
vtkDynamic2DLabelMapper
draw text labels at 2D dataset points
Definition: vtkDynamic2DLabelMapper.h:68
vtkAlgorithmOutput
Proxy object to connect input/output ports.
Definition: vtkAlgorithmOutput.h:36
vtkEdgeCenters
generate points at center of edges
Definition: vtkEdgeCenters.h:41
vtkHierarchicalGraphPipeline::LabelMapper
vtkDynamic2DLabelMapper * LabelMapper
Definition: vtkHierarchicalGraphPipeline.h:189
vtkHierarchicalGraphPipeline::Mapper
vtkPolyDataMapper * Mapper
Definition: vtkHierarchicalGraphPipeline.h:185
vtkGraphHierarchicalBundleEdges
layout graph arcs in bundles
Definition: vtkGraphHierarchicalBundleEdges.h:61