Overview | Modules | Class Hierarchy | Classes | Members

# tlp::GlQuadTreeLODCalculator Class Reference

`#include <GlQuadTreeLODCalculator.h>`

Inherits tlp::GlSceneObserver.

Inheritance diagram for tlp::GlQuadTreeLODCalculator:

[legend]
Collaboration diagram for tlp::GlQuadTreeLODCalculator:

[legend]
List of all members.

## Detailed Description

Class use to compute bounding boxs of a vector of GlEntity

## Public Member Functions

- GlQuadTreeLODCalculator ()
- ~GlQuadTreeLODCalculator ()
- void setScene (GlScene *scene)
- bool needEntities ()
- void setNeedEntities (bool)
- void addSimpleEntityBoundingBox (unsigned long entity, const BoundingBox &bb)
- void addNodeBoundingBox (unsigned int id, const BoundingBox &bb)
- void addEdgeBoundingBox (unsigned int id, const BoundingBox &bb)
- void compute (const Vector< int, 4 > &globalViewport, const Vector< int, 4 > &currentViewport)
- void computeFor3DCamera (LayerLODUnit *layerLODUnit, const Coord &eye, const Matrix< float, 4 > transformMatrix, const Vector< int, 4 > &globalViewport, const Vector< int, 4 > &currentViewport)
- void removeObservers ()
- void addObservers ()
- void setInputData (GlGraphInputData *newInputData)
- void update (std::set< Observable * >::iterator begin, std::set< Observable * >::iterator end)
- void observableDestroyed (Observable *)
- void addNode (Graph *, const node)
- void addEdge (Graph *, const edge)
- void delNode (Graph *, const node)
- void delEdge (Graph *, const edge)
- void addLocalProperty (Graph *, const std::string &name)
- void delLocalProperty (Graph *, const std::string &name)
- void destroy (Graph *)
- void addLayer (GlScene *, const std::string &, GlLayer *)
- void delLayer (GlScene *, const std::string &, GlLayer *)
- void modifyLayer (GlScene *, const std::string &, GlLayer *)
- void modifyEntity (GlScene *, GlSimpleEntity *)
- virtual GlLODCalculator * clone ()

## Protected Member Functions

- void setHaveToCompute ()

## Protected Attributes

- GlScene * scene
- std::vector< QuadTreeNode<
  unsigned int > * > nodesQuadTree
- std::vector< QuadTreeNode<
  unsigned int > * > edgesQuadTree
- std::vector< QuadTreeNode<
  unsigned int > * > nodesSelectedQuadTree
- std::vector< QuadTreeNode<
  unsigned int > * > edgesSelectedQuadTree
- std::vector< QuadTreeNode<
  unsigned long > * > entitiesQuadTree
- std::vector< std::vector<
  SimpleEntityLODUnit > > simpleEntities
- bool haveToCompute
- GlGraphInputData * inputData
- BoundingBox nodesGlobalBoundingBox
- BoundingBox edgesGlobalBoundingBox
- BoundingBox entitiesGlobalBoundingBox
- std::vector< std::pair< Camera *,
  Camera > > cameras
- Camera * currentCamera
- Graph * currentGraph
- PropertyInterface * layoutProperty
- PropertyInterface * sizeProperty
- PropertyInterface * selectionProperty
- int quadTreesVectorPosition
- int simpleEntitiesVectorPosition

## Constructor & Destructor Documentation

tlp::GlQuadTreeLODCalculator::GlQuadTreeLODCalculator | ( |  | ) |

tlp::GlQuadTreeLODCalculator::~GlQuadTreeLODCalculator | ( |  | ) |

## Member Function Documentation

void tlp::GlQuadTreeLODCalculator::addEdge | ( | Graph * | ,
|  | const | edge
| ) | `[inline]`

void tlp::GlQuadTreeLODCalculator::addEdgeBoundingBox | ( | unsigned int | id,
|  | const BoundingBox & | bb
| ) |

void tlp::GlQuadTreeLODCalculator::addLayer | ( | GlScene * | ,
|  | const std::string & | ,
|  | GlLayer * |
| ) | `[inline, virtual]`

| This function is call when we add a new layer Reimplemented from tlp::GlSceneObserver.

void tlp::GlQuadTreeLODCalculator::addLocalProperty | ( | Graph * | ,
|  | const std::string & | name
| ) |

void tlp::GlQuadTreeLODCalculator::addNode | ( | Graph * | ,
|  | const | node
| ) | `[inline]`

void tlp::GlQuadTreeLODCalculator::addNodeBoundingBox | ( | unsigned int | id,
|  | const BoundingBox & | bb
| ) |

void tlp::GlQuadTreeLODCalculator::addObservers | ( |  | ) |

void tlp::GlQuadTreeLODCalculator::addSimpleEntityBoundingBox | ( | unsigned long | entity,
|  | const BoundingBox & | bb
| ) |

virtual GlLODCalculator* tlp::GlQuadTreeLODCalculator::clone | ( |  | ) | `[inline, virtual]`

void tlp::GlQuadTreeLODCalculator::compute | ( | const Vector< int, 4 > & | globalViewport,
|  | const Vector< int, 4 > & | currentViewport
| ) |

void tlp::GlQuadTreeLODCalculator::computeFor3DCamera | ( | LayerLODUnit * | layerLODUnit,
|  | const Coord & | eye,
|  | const Matrix< float, 4 > | transformMatrix,
|  | const Vector< int, 4 > & | globalViewport,
|  | const Vector< int, 4 > & | currentViewport
| ) |

void tlp::GlQuadTreeLODCalculator::delEdge | ( | Graph * | ,
|  | const | edge
| ) | `[inline]`

void tlp::GlQuadTreeLODCalculator::delLayer | ( | GlScene * | ,
|  | const std::string & | ,
|  | GlLayer * |
| ) | `[inline, virtual]`

| This function is call when we remove a layer Reimplemented from tlp::GlSceneObserver.

void tlp::GlQuadTreeLODCalculator::delLocalProperty | ( | Graph * | ,
|  | const std::string & | name
| ) |

void tlp::GlQuadTreeLODCalculator::delNode | ( | Graph * | ,
|  | const | node
| ) | `[inline]`

void tlp::GlQuadTreeLODCalculator::destroy | ( | Graph * |  | ) |

void tlp::GlQuadTreeLODCalculator::modifyEntity | ( | GlScene * | ,
|  | GlSimpleEntity * |
| ) | `[inline, virtual]`

| This function is call when we modify an entity Reimplemented from tlp::GlSceneObserver.

void tlp::GlQuadTreeLODCalculator::modifyLayer | ( | GlScene * | ,
|  | const std::string & | ,
|  | GlLayer * |
| ) | `[inline, virtual]`

| This function is call when we add an entity to the layer Reimplemented from tlp::GlSceneObserver.

bool tlp::GlQuadTreeLODCalculator::needEntities | ( |  | ) |

void tlp::GlQuadTreeLODCalculator::observableDestroyed | ( | Observable * |  | ) | `[inline]`

void tlp::GlQuadTreeLODCalculator::removeObservers | ( |  | ) |

void tlp::GlQuadTreeLODCalculator::setHaveToCompute | ( |  | ) | `[protected]`

void tlp::GlQuadTreeLODCalculator::setInputData | ( | GlGraphInputData * | newInputData | ) |

void tlp::GlQuadTreeLODCalculator::setNeedEntities | ( | bool |  | ) |

void tlp::GlQuadTreeLODCalculator::setScene | ( | GlScene * | scene | ) |

void tlp::GlQuadTreeLODCalculator::update | ( | std::set< Observable * >::iterator | begin,
|  | std::set< Observable * >::iterator | end
| ) |

## Member Data Documentation

std::vector<std::pair<Camera*,Camera> > tlp::GlQuadTreeLODCalculator::cameras `[protected]`

Camera* tlp::GlQuadTreeLODCalculator::currentCamera `[protected]`

Graph* tlp::GlQuadTreeLODCalculator::currentGraph `[protected]`

BoundingBox tlp::GlQuadTreeLODCalculator::edgesGlobalBoundingBox `[protected]`

std::vector<QuadTreeNode<unsigned int> *> tlp::GlQuadTreeLODCalculator::edgesQuadTree `[protected]`

std::vector<QuadTreeNode<unsigned int> *> tlp::GlQuadTreeLODCalculator::edgesSelectedQuadTree `[protected]`

BoundingBox tlp::GlQuadTreeLODCalculator::entitiesGlobalBoundingBox `[protected]`

std::vector<QuadTreeNode<unsigned long> *> tlp::GlQuadTreeLODCalculator::entitiesQuadTree `[protected]`

bool tlp::GlQuadTreeLODCalculator::haveToCompute `[protected]`

GlGraphInputData* tlp::GlQuadTreeLODCalculator::inputData `[protected]`

PropertyInterface* tlp::GlQuadTreeLODCalculator::layoutProperty `[protected]`

BoundingBox tlp::GlQuadTreeLODCalculator::nodesGlobalBoundingBox `[protected]`

std::vector<QuadTreeNode<unsigned int> *> tlp::GlQuadTreeLODCalculator::nodesQuadTree `[protected]`

std::vector<QuadTreeNode<unsigned int> *> tlp::GlQuadTreeLODCalculator::nodesSelectedQuadTree `[protected]`

int tlp::GlQuadTreeLODCalculator::quadTreesVectorPosition `[protected]`

GlScene* tlp::GlQuadTreeLODCalculator::scene `[protected]`

PropertyInterface* tlp::GlQuadTreeLODCalculator::selectionProperty `[protected]`

std::vector<std::vector<SimpleEntityLODUnit> > tlp::GlQuadTreeLODCalculator::simpleEntities `[protected]`

int tlp::GlQuadTreeLODCalculator::simpleEntitiesVectorPosition `[protected]`

PropertyInterface* tlp::GlQuadTreeLODCalculator::sizeProperty `[protected]`

Tulip Software by LaBRI Visualization Team 2001 - 2010