26 #ifndef vtkRenderedGraphRepresentation_h 27 #define vtkRenderedGraphRepresentation_h 29 #include "vtkViewsInfovisModule.h" 74 virtual void SetVertexLabelArrayName(
const char*
name);
75 virtual const char* GetVertexLabelArrayName();
76 virtual void SetVertexLabelPriorityArrayName(
const char*
name);
77 virtual const char* GetVertexLabelPriorityArrayName();
78 virtual void SetVertexLabelVisibility(
bool b);
79 virtual bool GetVertexLabelVisibility();
83 vtkSetStringMacro(VertexHoverArrayName);
90 vtkGetMacro(HideVertexLabelsOnInteraction,
bool)
97 virtual void SetEdgeLabelArrayName(
const char*
name);
98 virtual const char* GetEdgeLabelArrayName();
99 virtual void SetEdgeLabelPriorityArrayName(
const char*
name);
100 virtual const char* GetEdgeLabelPriorityArrayName();
101 virtual void SetEdgeLabelVisibility(
bool b);
102 virtual bool GetEdgeLabelVisibility();
106 vtkSetStringMacro(EdgeHoverArrayName);
113 vtkGetMacro(HideEdgeLabelsOnInteraction,
bool)
120 virtual void SetVertexIconArrayName(
const char*
name);
121 virtual const char* GetVertexIconArrayName();
122 virtual void SetVertexIconPriorityArrayName(
const char*
name);
123 virtual const char* GetVertexIconPriorityArrayName();
124 virtual void SetVertexIconVisibility(
bool b);
125 virtual bool GetVertexIconVisibility();
127 virtual void AddVertexIconType(
const char*
name,
int type);
128 virtual void ClearVertexIconTypes();
129 virtual void SetUseVertexIconTypeMap(
bool b);
130 virtual bool GetUseVertexIconTypeMap();
132 virtual void SetVertexIconAlignment(
int align);
133 virtual int GetVertexIconAlignment();
134 virtual void SetVertexSelectedIcon(
int icon);
135 virtual int GetVertexSelectedIcon();
136 virtual void SetVertexDefaultIcon(
int icon);
137 virtual int GetVertexDefaultIcon();
150 virtual void SetVertexIconSelectionMode(
int mode);
151 virtual int GetVertexIconSelectionMode();
153 { this->SetVertexIconSelectionMode(0); }
155 { this->SetVertexIconSelectionMode(1); }
157 { this->SetVertexIconSelectionMode(2); }
159 { this->SetVertexIconSelectionMode(3); }
165 virtual void SetEdgeIconArrayName(
const char*
name);
166 virtual const char* GetEdgeIconArrayName();
167 virtual void SetEdgeIconPriorityArrayName(
const char* name);
168 virtual const char* GetEdgeIconPriorityArrayName();
169 virtual void SetEdgeIconVisibility(
bool b);
170 virtual bool GetEdgeIconVisibility();
172 virtual void AddEdgeIconType(
const char* name,
int type);
173 virtual void ClearEdgeIconTypes();
174 virtual void SetUseEdgeIconTypeMap(
bool b);
175 virtual bool GetUseEdgeIconTypeMap();
177 virtual void SetEdgeIconAlignment(
int align);
178 virtual int GetEdgeIconAlignment();
183 virtual void SetColorVerticesByArray(
bool b);
184 virtual bool GetColorVerticesByArray();
186 virtual void SetVertexColorArrayName(
const char* name);
187 virtual const char* GetVertexColorArrayName();
192 virtual void SetColorEdgesByArray(
bool b);
193 virtual bool GetColorEdgesByArray();
195 virtual void SetEdgeColorArrayName(
const char* name);
196 virtual const char* GetEdgeColorArrayName();
201 virtual void SetEnableVerticesByArray(
bool b);
202 virtual bool GetEnableVerticesByArray();
204 virtual void SetEnabledVerticesArrayName(
const char* name);
205 virtual const char* GetEnabledVerticesArrayName();
210 virtual void SetEnableEdgesByArray(
bool b);
211 virtual bool GetEnableEdgesByArray();
213 virtual void SetEnabledEdgesArrayName(
const char* name);
214 virtual const char* GetEnabledEdgesArrayName();
216 virtual void SetEdgeVisibility(
bool b);
217 virtual bool GetEdgeVisibility();
220 void SetEdgeSelection(
bool b);
221 bool GetEdgeSelection();
238 virtual void SetLayoutStrategy(
const char* name);
246 { this->SetLayoutStrategy(
"Random"); }
248 { this->SetLayoutStrategy(
"Force Directed"); }
250 { this->SetLayoutStrategy(
"Simple 2D"); }
252 { this->SetLayoutStrategy(
"Clustering 2D"); }
254 { this->SetLayoutStrategy(
"Community 2D"); }
256 { this->SetLayoutStrategy(
"Fast 2D"); }
258 { this->SetLayoutStrategy(
"Pass Through"); }
260 { this->SetLayoutStrategy(
"Circular"); }
262 { this->SetLayoutStrategy(
"Tree"); }
264 { this->SetLayoutStrategy(
"Cosmic Tree"); }
266 { this->SetLayoutStrategy(
"Cone"); }
268 { this->SetLayoutStrategy(
"Span Tree"); }
274 virtual void SetLayoutStrategyToAssignCoordinates(
275 const char* xarr,
const char* yarr = 0,
const char* zarr = 0);
287 virtual void SetLayoutStrategyToTree(
290 double leafSpacing = 0.9,
291 double logSpacing = 1.0);
303 virtual void SetLayoutStrategyToCosmicTree(
304 const char* nodeSizeArrayName,
305 bool sizeLeafNodesOnly =
true,
319 { this->SetEdgeLayoutStrategy(
"Arc Parallel"); }
321 { this->SetEdgeLayoutStrategy(
"Pass Through"); }
328 virtual void SetEdgeLayoutStrategyToGeo(
double explodeFactor = 0.2);
334 virtual void SetEdgeLayoutStrategy(
const char* name);
350 virtual void SetGlyphType(
int type);
351 virtual int GetGlyphType();
358 virtual void SetScaling(
bool b);
359 virtual bool GetScaling();
367 virtual void SetScalingArrayName(
const char* name);
368 virtual const char* GetScalingArrayName();
375 virtual void SetVertexScalarBarVisibility(
bool b);
376 virtual bool GetVertexScalarBarVisibility();
377 virtual void SetEdgeScalarBarVisibility(
bool b);
378 virtual bool GetEdgeScalarBarVisibility();
392 virtual bool IsLayoutComplete();
397 virtual void UpdateLayout();
402 void ComputeSelectedGraphBounds(
double bounds[6] );
467 vtkSetStringMacro(VertexColorArrayNameInternal);
471 vtkSetStringMacro(EdgeColorArrayNameInternal);
475 vtkSetStringMacro(ScalingArrayNameInternal);
479 vtkSetStringMacro(LayoutStrategyName);
481 vtkSetStringMacro(EdgeLayoutStrategyName);
void SetLayoutStrategyToClustering2D()
virtual void ApplyViewTheme(vtkViewTheme *vtkNotUsed(theme))
Apply a theme to this representation.
vtkSmartPointer< vtkPolyDataMapper > OutlineMapper
Internal filter classes.
vtkSmartPointer< vtkGraphToPoints > VertexIconPoints
Internal filter classes.
virtual void SetVertexIconSelectionModeToIgnoreSelection()
Set the mode to one of.
virtual vtkSelection * ConvertSelection(vtkView *view, vtkSelection *selection)
Convert the selection to a type appropriate for sharing with other representations through vtkAnnotat...
virtual void SetVertexIconSelectionModeToSelectedIcon()
Set the mode to one of.
vtkSmartPointer< vtkGraphToPolyData > GraphToPoly
Internal filter classes.
vtkSmartPointer< vtkScalarBarWidget > VertexScalarBar
Internal filter classes.
bool HideEdgeLabelsOnInteraction
void SetEdgeLayoutStrategyToPassThrough()
Set/get the graph layout strategy.
represents an object (geometry & properties) in a rendered scene
actor that draws 2D data with texture support
vtkSmartPointer< vtkApplyIcons > ApplyVertexIcons
Internal filter classes.
vtkSmartPointer< vtkPointSetToLabelHierarchy > VertexLabelHierarchy
Internal filter classes.
Filter that generates a polydata consisting of quads with texture coordinates referring to a set of i...
char * EdgeLayoutStrategyName
char * VertexHoverArrayName
vtkSmartPointer< vtkGraphToGlyphs > VertexGlyph
Internal filter classes.
vtkSmartPointer< vtkActor > VertexActor
Internal filter classes.
map scalar values into colors via a lookup table
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Subclasses should override this to connect inputs to the internal pipeline as necessary.
void SetLayoutStrategyToPassThrough()
vtkSmartPointer< vtkIconGlyphFilter > VertexIconGlyph
Internal filter classes.
void SetLayoutStrategyToCosmicTree()
A node in a selection tree.
Adds an attribute array with the degree of each vertex.
vtkSmartPointer< vtkScalarBarWidget > EdgeScalarBar
Internal filter classes.
virtual bool AddToView(vtkView *vtkNotUsed(view))
Adds the representation to the view.
concrete dataset represents vertices, lines, polygons, and triangle strips
vtkSmartPointer< vtkApplyColors > ApplyColors
Internal filter classes.
char * VertexColorArrayNameInternal
void SetLayoutStrategyToCircular()
static vtkRenderedRepresentation * New()
abstract superclass for all graph layout strategies
vtkSmartPointer< vtkPolyDataMapper > EdgeMapper
Internal filter classes.
vtkSmartPointer< vtkVertexDegree > VertexDegree
Internal filter classes.
convert a vtkGraph to vtkPolyData
Superclass for mapping scalar values to colors.
vtkSmartPointer< vtkEdgeLayout > EdgeLayout
Internal filter classes.
generate points at center of edges
Sets theme colors for a graphical view.
vtkSmartPointer< vtkTexturedActor2D > VertexIconActor
Internal filter classes.
vtkSmartPointer< vtkTransformCoordinateSystems > VertexIconTransform
Internal filter classes.
void SetLayoutStrategyToSpanTree()
The superclass for all views.
void SetLayoutStrategyToCommunity2D()
a simple class to control print indentation
vtkSmartPointer< vtkPointSetToLabelHierarchy > EdgeLabelHierarchy
Internal filter classes.
vtkSmartPointer< vtkGraphLayout > Layout
Internal filter classes.
virtual bool RemoveFromView(vtkView *vtkNotUsed(view))
Removes the representation to the view.
layout a graph in 2 or 3 dimensions
virtual void PrepareForRendering(vtkRenderView *view)
The view will call this method before every render.
vtkSmartPointer< vtkPolyData > EmptyPolyData
Internal filter classes.
void SetLayoutStrategyToRandom()
Set predefined layout strategies.
void SetLayoutStrategyToTree()
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
void SetLayoutStrategyToSimple2D()
Perturbs vertices that are coincident.
char * EdgeHoverArrayName
represent text properties.
build a label hierarchy for a graph or point set.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
vtkSmartPointer< vtkRemoveHiddenData > RemoveHiddenGraph
Internal filter classes.
void SetLayoutStrategyToCone()
map vtkPolyData to graphics primitives
vtkSmartPointer< vtkActor > OutlineActor
Internal filter classes.
char * EdgeColorArrayNameInternal
vtkSmartPointer< vtkActor > EdgeActor
Internal filter classes.
char * LayoutStrategyName
void SetLayoutStrategyToForceDirected()
bool HideVertexLabelsOnInteraction
vtkSmartPointer< vtkGraphToPoints > GraphToPoints
Internal filter classes.
A view containing a renderer.
abstract superclass for all edge layout strategies
vtkSmartPointer< vtkEdgeCenters > EdgeCenters
Internal filter classes.
convert a vtkGraph a set of points.
apply colors to a data set.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetLayoutStrategyToFast2D()
char * ScalingArrayNameInternal
vtkSmartPointer< vtkPolyDataMapper > VertexMapper
Internal filter classes.
vtkSmartPointer< vtkGraphToGlyphs > OutlineGlyph
Internal filter classes.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
vtkSmartPointer< vtkPolyDataMapper2D > VertexIconMapper
Internal filter classes.
virtual void SetVertexIconSelectionModeToSelectedOffset()
Set the mode to one of.
create glyphs for graph vertices
virtual vtkUnicodeString GetHoverTextInternal(vtkSelection *)
Subclasses may override this method to generate the hover text.
virtual void SetVertexIconSelectionModeToAnnotationIcon()
Set the mode to one of.
apply icons to a data set.
vtkSmartPointer< vtkPerturbCoincidentVertices > Coincident
Internal filter classes.
draw vtkPolyData onto the image plane
String class that stores Unicode text.
Removes the rows/edges/vertices of input data flagged by ann.
void SetEdgeLayoutStrategyToArcParallel()
Set/get the graph layout strategy.