VTK
dox/Views/vtkRenderedHierarchyRepresentation.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkRenderedHierarchyRepresentation.h
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00015 /*-------------------------------------------------------------------------
00016   Copyright 2008 Sandia Corporation.
00017   Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
00018   the U.S. Government retains certain rights in this software.
00019 -------------------------------------------------------------------------*/
00025 #ifndef __vtkRenderedHierarchyRepresentation_h
00026 #define __vtkRenderedHierarchyRepresentation_h
00027 
00028 #include "vtkRenderedGraphRepresentation.h"
00029 
00030 class VTK_VIEWS_EXPORT vtkRenderedHierarchyRepresentation : public vtkRenderedGraphRepresentation
00031 {
00032 public:
00033   static vtkRenderedHierarchyRepresentation* New();
00034   vtkTypeMacro(vtkRenderedHierarchyRepresentation, vtkRenderedGraphRepresentation);
00035   void PrintSelf(ostream& os, vtkIndent indent);
00036 
00038  */
00039   virtual void SetGraphEdgeLabelArrayName(const char* name)
00040     { this->SetGraphEdgeLabelArrayName(name, 0); }
00041   virtual void SetGraphEdgeLabelArrayName(const char* name, int idx);
00042   virtual const char* GetGraphEdgeLabelArrayName()
00043     { return this->GetGraphEdgeLabelArrayName(0); }
00044   virtual const char* GetGraphEdgeLabelArrayName(int idx);
00046 
00047   virtual void SetGraphEdgeLabelVisibility(bool vis)
00048     { this->SetGraphEdgeLabelVisibility(vis, 0); }
00049   virtual void SetGraphEdgeLabelVisibility(bool vis, int idx);
00050   virtual bool GetGraphEdgeLabelVisibility()
00051     { return this->GetGraphEdgeLabelVisibility(0); }
00052   virtual bool GetGraphEdgeLabelVisibility(int idx);
00053   vtkBooleanMacro(GraphEdgeLabelVisibility, bool);
00054 
00055   virtual void SetGraphEdgeColorArrayName(const char* name)
00056     { this->SetGraphEdgeColorArrayName(name, 0); }
00057   virtual void SetGraphEdgeColorArrayName(const char* name, int idx);
00058   virtual const char* GetGraphEdgeColorArrayName()
00059     { return this->GetGraphEdgeColorArrayName(0); }
00060   virtual const char* GetGraphEdgeColorArrayName(int idx);
00061 
00062   virtual void SetColorGraphEdgesByArray(bool vis)
00063     { this->SetColorGraphEdgesByArray(vis, 0); }
00064   virtual void SetColorGraphEdgesByArray(bool vis, int idx);
00065   virtual bool GetColorGraphEdgesByArray()
00066     { return this->GetColorGraphEdgesByArray(0); }
00067   virtual bool GetColorGraphEdgesByArray(int idx);
00068   vtkBooleanMacro(ColorGraphEdgesByArray, bool);
00069 
00070   virtual void SetGraphEdgeColorToSplineFraction()
00071     { this->SetGraphEdgeColorArrayName("fraction", 0); }
00072   virtual void SetGraphEdgeColorToSplineFraction(int idx)
00073     { this->SetGraphEdgeColorArrayName("fraction", idx); }
00074 
00075   virtual void SetGraphVisibility(bool vis)
00076     { this->SetGraphVisibility(vis, 0); }
00077   virtual void SetGraphVisibility(bool vis, int idx);
00078   virtual bool GetGraphVisibility()
00079     { return this->GetGraphVisibility(0); }
00080   virtual bool GetGraphVisibility(int idx);
00081   vtkBooleanMacro(GraphVisibility, bool);
00082 
00083   virtual void SetBundlingStrength(double strength)
00084     { this->SetBundlingStrength(strength, 0); }
00085   virtual void SetBundlingStrength(double strength, int idx);
00086   virtual double GetBundlingStrength()
00087     { return this->GetBundlingStrength(0); }
00088   virtual double GetBundlingStrength(int idx);
00089 
00090   virtual void SetGraphEdgeLabelFontSize(int size)
00091     { this->SetGraphEdgeLabelFontSize(size, 0); }
00092   virtual void SetGraphEdgeLabelFontSize(int size, int idx);
00093   virtual int GetGraphEdgeLabelFontSize()
00094     { return this->GetGraphEdgeLabelFontSize(0); }
00095   virtual int GetGraphEdgeLabelFontSize(int idx);
00096 
00097 protected:
00098   vtkRenderedHierarchyRepresentation();
00099   ~vtkRenderedHierarchyRepresentation();
00100 
00102 
00103   virtual bool AddToView(vtkView* view);
00104   virtual bool RemoveFromView(vtkView* view);
00106 
00108   bool ValidIndex(int idx);
00109   
00110   virtual vtkSelection* ConvertSelection(vtkView* view, vtkSelection* sel);
00111 
00112   virtual int FillInputPortInformation(int port, vtkInformation* info);
00113 
00115 
00116   virtual int RequestData(
00117     vtkInformation* request,
00118     vtkInformationVector** inputVector,
00119     vtkInformationVector* outputVector);
00121 
00122   virtual void ApplyViewTheme(vtkViewTheme* theme);
00123 
00124   //BTX
00125   class Internals;
00126   Internals* Implementation;
00127   //ETX
00128 
00129 private:
00130   vtkRenderedHierarchyRepresentation(const vtkRenderedHierarchyRepresentation&); // Not implemented
00131   void operator=(const vtkRenderedHierarchyRepresentation&);   // Not implemented
00132 };
00133 
00134 #endif
00135