Subversion Repositories gelsvn

Rev

Rev 368 | Rev 396 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
167 jab 1
#ifndef __GLGRAPHICS_DRAW_H_
2
#define __GLGRAPHICS_DRAW_H_
3
 
4
#include "Geometry/TriMesh.h"
299 jrf 5
#include "Geometry/AABox.h"
6
#include "Geometry/OBox.h"
7
#include "Geometry/BoundingINode.h"
8
#include "Geometry/BoundingLNode.h"
9
#include "Geometry/BoundingTree.h"
331 jab 10
#include "HMesh/Manifold.h"
167 jab 11
 
299 jrf 12
namespace GLGraphics
13
{
362 jab 14
  /// Draw a triangles mesh. Inefficient function that should be compiled into a display list.
331 jab 15
  void draw(const Geometry::TriMesh& tm, bool per_vertex_norms=true);
368 jrf 16
 
362 jab 17
  /// Draw an axis aligned bounding box
299 jrf 18
  void draw(const Geometry::AABox& box);
362 jab 19
 
20
  /// Draw an oriented bounding box
299 jrf 21
  void draw(const Geometry::OBox& box);
362 jab 22
 
23
  /// Draw a HMesh Manifold
24
  void draw(HMesh::Manifold& m, bool per_vertex_norms=true);
331 jab 25
 
299 jrf 26
 
27
  template<class BoxType>
28
	void draw(const Geometry::BoundingINode<BoxType>& node, int level, int max_level);
29
  template<class BoxType>
30
    void draw(const Geometry::BoundingLNode<BoxType>& node, int level, int max_level);
31
  template<class BoxType>
32
    void draw(const Geometry::BoundingTree<BoxType>& tree, int max_level = 1e6);
167 jab 33
 
299 jrf 34
}
167 jab 35
#endif