Overview | Modules | Class Hierarchy | Classes | Members

# tlp::GlConvexGraphHull Class Reference

`#include <GlConvexGraphHull.h>`

Collaboration diagram for tlp::GlConvexGraphHull:

[legend]
List of all members.

## Detailed Description

This class draws a convex hull around a graph.

Given a graph, this class computes the various control points of a convex hull that embraces the nodes and edges present into the graph. If this entity is translated using the translate method, every element of the linked graph will be translated as well.

Warning:
  The graph or any of the properties linked to a GlConvexGraphHull should never be deleted before the entity. Such a thing should be reported to the user in debug mode, raising an assertion.

## Public Member Functions

- GlConvexGraphHull (GlComposite *parent, const std::string &name, const tlp::Color &fcolor, Graph *graph, LayoutProperty *layout, SizeProperty *size, DoubleProperty *rotation)
- virtual void translate (const Coord &mouvement)
- void updateHull ()
- void setVisible (bool visible)
- bool isVisible ()
- virtual void draw (float lod, Camera *camera)
- virtual void addNode (tlp::Graph *graph, tlp::node n)
- virtual void afterSetNodeValue (PropertyInterface *property, const node n)
- virtual void destroy (Graph *)
- virtual void destroy (PropertyInterface *)

## Constructor & Destructor Documentation

tlp::GlConvexGraphHull::GlConvexGraphHull | ( | GlComposite * | parent,
|  | const std::string & | name,
|  | const tlp::Color & | fcolor,
|  | Graph * | graph,
|  | LayoutProperty * | layout,
|  | SizeProperty * | size,
|  | DoubleProperty * | rotation
| ) |

Parameters:

  | fcolor | The color used to fill the hull.
  | graph | The graph whose elements should be inside the hull.
  | layout | The property used to layout the elements in the graph.
  | size | The property defining the graph's elements' sizes.
  | rotation | The property defining the graph's elements' rotation.

## Member Function Documentation

virtual void tlp::GlConvexGraphHull::addNode | ( | tlp::Graph * | graph,
|  | tlp::node | n
| ) | `[virtual]`

virtual void tlp::GlConvexGraphHull::afterSetNodeValue | ( | PropertyInterface * | property,
|  | const node | n
| ) | `[virtual]`

virtual void tlp::GlConvexGraphHull::destroy | ( | PropertyInterface * |  | ) | `[virtual]`

virtual void tlp::GlConvexGraphHull::destroy | ( | Graph * |  | ) | `[virtual]`

virtual void tlp::GlConvexGraphHull::draw | ( | float | lod,
|  | Camera * | camera
| ) | `[virtual]`

| Draw the complex polygon

bool tlp::GlConvexGraphHull::isVisible | ( |  | ) |

void tlp::GlConvexGraphHull::setVisible | ( | bool | visible | ) |

virtual void tlp::GlConvexGraphHull::translate | ( | const Coord & | mouvement | ) | `[virtual]`

| Translate entity

void tlp::GlConvexGraphHull::updateHull | ( |  | ) |

| Recomputes the whole Hull

Tulip Software by LaBRI Visualization Team 2001 - 2010