Hierarchical Edge Bundle 1.0
J:/Caro/C++_Coding/HierarchicalEdgeBundle/HierarchicalEdgeBundle/header/BallonTree.h
Go to the documentation of this file.
00001 #pragma once
00002 #include "View.h"
00003 #include "Graph.h"
00004 #include <map>
00005 
00011 class VertexBallon
00012 {
00013 public:
00014         typedef boost::shared_ptr<VertexBallon> VertexBallonPtr;
00015 
00019         VertexBallon(); 
00024         VertexBallon(VertexPtr v); 
00034         VertexBallon(VertexPtr v, double r, double rr, double circumference, double ark, double angle); 
00035         
00040         VertexPtr GetVertex();
00045         double GetRadius();
00050         double GetRadiusRendering();
00055         double GetArk();
00060         double GetAngle();
00065         double GetCircumference();
00066 
00071         void SetVertex(VertexPtr v);
00076         void SetRadius(double r);
00081         void SetRadiusRendering(double r);
00086         void SetArk(double r);
00091         void SetAngle(double angle);
00096         void SetCircumference(double circumference);
00097 
00098 private:
00099         VertexPtr m_pkV;
00100         double m_r;
00101         double m_rr;
00102         double m_ark;
00103         double m_angle;
00104         double m_circumference;
00105 };
00106 
00112 class BallonTree :      public View
00113 {
00114         typedef boost::shared_ptr<VertexBallon> VertexBallonPtr;
00115 
00116 public:
00120         BallonTree();
00124         ~BallonTree(void);
00125 
00129         virtual void Calculate();
00130 
00131         /*std::vector<VertexBallonPtr> verticesChilds;/*/
00132         std::map<unsigned int, VertexBallonPtr> verticesChilds;//*/
00133 };
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Defines