32 #ifndef vtkRenderedGraphRepresentation_h
33 #define vtkRenderedGraphRepresentation_h
35 #include "vtkViewsInfovisModule.h"
89 vtkSetStringMacro(VertexHoverArrayName);
96 vtkGetMacro(HideVertexLabelsOnInteraction,
bool)
103 virtual
void SetEdgeLabelArrayName(const
char*
name);
104 virtual const
char* GetEdgeLabelArrayName();
105 virtual
void SetEdgeLabelPriorityArrayName(const
char*
name);
106 virtual const
char* GetEdgeLabelPriorityArrayName();
107 virtual
void SetEdgeLabelVisibility(
bool b);
108 virtual
bool GetEdgeLabelVisibility();
112 vtkSetStringMacro(EdgeHoverArrayName);
119 vtkGetMacro(HideEdgeLabelsOnInteraction,
bool)
126 virtual
void SetVertexIconArrayName(const
char*
name);
127 virtual const
char* GetVertexIconArrayName();
128 virtual
void SetVertexIconPriorityArrayName(const
char*
name);
129 virtual const
char* GetVertexIconPriorityArrayName();
130 virtual
void SetVertexIconVisibility(
bool b);
131 virtual
bool GetVertexIconVisibility();
133 virtual
void AddVertexIconType(const
char*
name,
int type);
134 virtual
void ClearVertexIconTypes();
135 virtual
void SetUseVertexIconTypeMap(
bool b);
136 virtual
bool GetUseVertexIconTypeMap();
138 virtual
void SetVertexIconAlignment(
int align);
139 virtual
int GetVertexIconAlignment();
140 virtual
void SetVertexSelectedIcon(
int icon);
141 virtual
int GetVertexSelectedIcon();
142 virtual
void SetVertexDefaultIcon(
int icon);
143 virtual
int GetVertexDefaultIcon();
156 virtual
void SetVertexIconSelectionMode(
int mode);
157 virtual
int GetVertexIconSelectionMode();
158 virtual
void SetVertexIconSelectionModeToSelectedIcon()
159 { this->SetVertexIconSelectionMode(0); }
161 { this->SetVertexIconSelectionMode(1); }
163 { this->SetVertexIconSelectionMode(2); }
165 { this->SetVertexIconSelectionMode(3); }
252 { this->SetLayoutStrategy(
"Random"); }
254 { this->SetLayoutStrategy(
"Force Directed"); }
256 { this->SetLayoutStrategy(
"Simple 2D"); }
258 { this->SetLayoutStrategy(
"Clustering 2D"); }
260 { this->SetLayoutStrategy(
"Community 2D"); }
262 { this->SetLayoutStrategy(
"Fast 2D"); }
264 { this->SetLayoutStrategy(
"Pass Through"); }
266 { this->SetLayoutStrategy(
"Circular"); }
268 { this->SetLayoutStrategy(
"Tree"); }
270 { this->SetLayoutStrategy(
"Cosmic Tree"); }
272 { this->SetLayoutStrategy(
"Cone"); }
274 { this->SetLayoutStrategy(
"Span Tree"); }
281 const char* xarr,
const char* yarr = 0,
const char* zarr = 0);
296 double leafSpacing = 0.9,
297 double logSpacing = 1.0);
310 const char* nodeSizeArrayName,
311 bool sizeLeafNodesOnly =
true,
325 { this->SetEdgeLayoutStrategy(
"Arc Parallel"); }
327 { this->SetEdgeLayoutStrategy(
"Pass Through"); }
473 vtkSetStringMacro(VertexColorArrayNameInternal);
477 vtkSetStringMacro(EdgeColorArrayNameInternal);
481 vtkSetStringMacro(ScalingArrayNameInternal);
485 vtkSetStringMacro(LayoutStrategyName);
487 vtkSetStringMacro(EdgeLayoutStrategyName);
represents an object (geometry & properties) in a rendered scene
apply colors to a data set.
apply icons to a data set.
generate points at center of edges
abstract superclass for all edge layout strategies
abstract superclass for all graph layout strategies
layout a graph in 2 or 3 dimensions
create glyphs for graph vertices
convert a vtkGraph a set of points.
convert a vtkGraph to vtkPolyData
Filter that generates a polydata consisting of quads with texture coordinates referring to a set of i...
a simple class to control print indentation
map scalar values into colors via a lookup table
Perturbs vertices that are coincident.
build a label hierarchy for a graph or point set.
draw vtkPolyData onto the image plane
map vtkPolyData to graphics primitives
concrete dataset represents vertices, lines, polygons, and triangle strips
Removes the rows/edges/vertices of input data flagged by ann.
A view containing a renderer.
virtual void SetEdgeIconVisibility(bool b)
void SetLayoutStrategyToCosmicTree()
virtual void SetEnabledEdgesArrayName(const char *name)
virtual void SetEdgeLayoutStrategy(vtkEdgeLayoutStrategy *strategy)
Set/get the graph layout strategy.
virtual bool RemoveFromView(vtkView *view)
~vtkRenderedGraphRepresentation()
virtual void SetLayoutStrategyToTree(bool radial, double angle=90, double leafSpacing=0.9, double logSpacing=1.0)
Set the layout strategy to a tree layout.
virtual const char * GetVertexLabelArrayName()
virtual bool GetScaling()
vtkSmartPointer< vtkActor > OutlineActor
vtkSmartPointer< vtkApplyColors > ApplyColors
Internal filter classes.
virtual void SetScaling(bool b)
Set whether to scale vertex glyphs.
virtual void SetColorEdgesByArray(bool b)
char * EdgeHoverArrayName
void SetLayoutStrategyToForceDirected()
virtual void ApplyViewTheme(vtkViewTheme *theme)
Apply a theme to this representation.
virtual bool GetColorEdgesByArray()
void SetEdgeSelection(bool b)
virtual const char * GetVertexColorArrayName()
virtual void SetLayoutStrategyToAssignCoordinates(const char *xarr, const char *yarr=0, const char *zarr=0)
Set the layout strategy to use coordinates from arrays.
virtual void SetLayoutStrategyToCosmicTree(const char *nodeSizeArrayName, bool sizeLeafNodesOnly=true, int layoutDepth=0, vtkIdType layoutRoot=-1)
Set the layout strategy to a cosmic tree layout.
void SetLayoutStrategyToSimple2D()
void SetLayoutStrategyToTree()
virtual void SetLayoutStrategy(const char *name)
Get/set the layout strategy by name.
virtual void SetEdgeLayoutStrategy(const char *name)
Set the edge layout strategy by name.
vtkSmartPointer< vtkActor > VertexActor
virtual void SetVertexLabelTextProperty(vtkTextProperty *p)
void SetLayoutStrategyToCommunity2D()
vtkSmartPointer< vtkTexturedActor2D > VertexIconActor
vtkSmartPointer< vtkTransformCoordinateSystems > VertexIconTransform
virtual bool GetColorVerticesByArray()
virtual void SetEnableEdgesByArray(bool b)
virtual void SetVertexLabelArrayName(const char *name)
virtual vtkSelection * ConvertSelection(vtkView *view, vtkSelection *sel)
Convert the selection to a type appropriate for sharing with other representations through vtkAnnotat...
virtual void SetEdgeVisibility(bool b)
vtkSmartPointer< vtkGraphLayout > Layout
virtual const char * GetEdgeIconPriorityArrayName()
bool HideVertexLabelsOnInteraction
virtual const char * GetEnabledEdgesArrayName()
vtkSmartPointer< vtkScalarBarWidget > EdgeScalarBar
char * EdgeColorArrayNameInternal
virtual int GetGlyphType()
vtkSmartPointer< vtkGraphToPoints > VertexIconPoints
virtual bool GetEnableEdgesByArray()
vtkSmartPointer< vtkPointSetToLabelHierarchy > EdgeLabelHierarchy
virtual bool GetEdgeIconVisibility()
virtual vtkUnicodeString GetHoverTextInternal(vtkSelection *sel)
Subclasses may override this method to generate the hover text.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Connect inputs to internal pipeline.
virtual bool GetEnableVerticesByArray()
vtkSmartPointer< vtkApplyIcons > ApplyVertexIcons
virtual void SetEnabledVerticesArrayName(const char *name)
void SetLayoutStrategyToFast2D()
virtual void AddEdgeIconType(const char *name, int type)
virtual vtkTextProperty * GetVertexLabelTextProperty()
vtkRenderedGraphRepresentation()
vtkSmartPointer< vtkPolyData > EmptyPolyData
vtkSmartPointer< vtkPolyDataMapper2D > VertexIconMapper
virtual const char * GetEdgeIconArrayName()
virtual void ClearEdgeIconTypes()
virtual void PrepareForRendering(vtkRenderView *view)
The view will call this method before every render.
virtual const char * GetEnabledVerticesArrayName()
void SetLayoutStrategyToClustering2D()
vtkSmartPointer< vtkEdgeCenters > EdgeCenters
virtual void UpdateLayout()
Performs another iteration on the graph layout.
vtkSmartPointer< vtkPointSetToLabelHierarchy > VertexLabelHierarchy
virtual vtkScalarBarWidget * GetVertexScalarBar()
Obtain the scalar bar widget used to draw a legend for the vertices/edges.
virtual int GetEdgeIconAlignment()
virtual void SetVertexIconSelectionModeToAnnotationIcon()
virtual void SetScalingArrayName(const char *name)
Set the glyph scaling array name.
void SetEdgeLayoutStrategyToPassThrough()
virtual void SetVertexScalarBarVisibility(bool b)
Vertex/edge scalar bar visibility.
void SetLayoutStrategyToRandom()
Set predefined layout strategies.
virtual void SetLayoutStrategy(vtkGraphLayoutStrategy *strategy)
Set/get the graph layout strategy.
virtual bool GetEdgeVisibility()
bool HideEdgeLabelsOnInteraction
virtual void SetVertexIconSelectionModeToIgnoreSelection()
virtual bool IsLayoutComplete()
Whether the current graph layout is complete.
virtual const char * GetScalingArrayName()
virtual void SetEdgeIconAlignment(int align)
vtkSmartPointer< vtkEdgeLayout > EdgeLayout
virtual void SetEdgeIconArrayName(const char *name)
static vtkRenderedGraphRepresentation * New()
void SetLayoutStrategyToPassThrough()
virtual void SetVertexIconSelectionModeToSelectedOffset()
virtual void SetEdgeColorArrayName(const char *name)
virtual void SetColorVerticesByArray(bool b)
virtual const char * GetVertexLabelPriorityArrayName()
virtual vtkScalarBarWidget * GetEdgeScalarBar()
vtkSmartPointer< vtkRemoveHiddenData > RemoveHiddenGraph
virtual bool GetVertexLabelVisibility()
vtkSmartPointer< vtkPolyDataMapper > VertexMapper
char * EdgeLayoutStrategyName
vtkSmartPointer< vtkGraphToGlyphs > VertexGlyph
vtkSmartPointer< vtkPolyDataMapper > EdgeMapper
virtual void SetEdgeLayoutStrategyToGeo(double explodeFactor=0.2)
Set the edge layout strategy to a geospatial arced strategy appropriate for vtkGeoView.
vtkSmartPointer< vtkPerturbCoincidentVertices > Coincident
virtual void SetVertexColorArrayName(const char *name)
char * VertexHoverArrayName
virtual bool GetUseEdgeIconTypeMap()
virtual void SetEdgeIconPriorityArrayName(const char *name)
virtual void SetVertexLabelVisibility(bool b)
virtual void SetEnableVerticesByArray(bool b)
char * ScalingArrayNameInternal
vtkSmartPointer< vtkGraphToPoints > GraphToPoints
void SetLayoutStrategyToCircular()
virtual void SetUseEdgeIconTypeMap(bool b)
char * VertexColorArrayNameInternal
virtual vtkGraphLayoutStrategy * GetLayoutStrategy()
virtual const char * GetEdgeColorArrayName()
virtual void SetGlyphType(int type)
Set the graph vertex glyph type.
virtual void SetVertexLabelPriorityArrayName(const char *name)
vtkSmartPointer< vtkActor > EdgeActor
vtkSmartPointer< vtkScalarBarWidget > VertexScalarBar
void SetEdgeLayoutStrategyToArcParallel()
virtual bool AddToView(vtkView *view)
Called by the view to add/remove this representation.
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
vtkSmartPointer< vtkGraphToGlyphs > OutlineGlyph
vtkSmartPointer< vtkPolyDataMapper > OutlineMapper
vtkSmartPointer< vtkVertexDegree > VertexDegree
void SetLayoutStrategyToCone()
vtkSmartPointer< vtkGraphToPolyData > GraphToPoly
virtual void SetEdgeScalarBarVisibility(bool b)
virtual bool GetEdgeScalarBarVisibility()
char * LayoutStrategyName
vtkSmartPointer< vtkIconGlyphFilter > VertexIconGlyph
void SetLayoutStrategyToSpanTree()
virtual vtkEdgeLayoutStrategy * GetEdgeLayoutStrategy()
void ComputeSelectedGraphBounds(double bounds[6])
Compute the bounding box of the selected subgraph.
virtual bool GetVertexScalarBarVisibility()
Superclass for mapping scalar values to colors.
A node in a selection tree.
represent text properties.
actor that draws 2D data with texture support
String class that stores Unicode text.
Adds an attribute array with the degree of each vertex.
Sets theme colors for a graphical view.
The superclass for all views.
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.