ACG::SceneGraph::TriangleNode Class Reference

Inheritance diagram for ACG::SceneGraph::TriangleNode:
Inheritance graph
[legend]
Collaboration diagram for ACG::SceneGraph::TriangleNode:
Collaboration graph
[legend]

List of all members.

Public Types

typedef std::vector< ACG::Vec3f > PointVector

Public Member Functions

 TriangleNode (BaseNode *_parent=0, std::string _name="<TriangleNode>")
 ACG_CLASSNAME (TriangleNode)
DrawModes::DrawMode availableDrawModes () const
void boundingBox (Vec3d &_bbMin, Vec3d &_bbMax)
void draw (GLState &_state, DrawModes::DrawMode _drawMode)
void pick (GLState &_state, PickTarget _target)
void add_triangle (const ACG::Vec3f &_p0, const ACG::Vec3f &_p1, const ACG::Vec3f &_p2)
void clear ()
int n_triangles () const
void triangle (int _i, ACG::Vec3f &_p0, ACG::Vec3f &_p1, ACG::Vec3f &_p2) const

Protected Types

enum  FaceMode { FACE_NORMALS, FACE_COLORS, PER_VERTEX }

Protected Member Functions

void draw_vertices ()
void draw_faces ()
void draw_wireframe ()

Protected Attributes

PointVector point_
PointVector normal_

Detailed Description

Definition at line 69 of file TriangleNode.hh.


Member Function Documentation

DrawModes::DrawMode ACG::SceneGraph::TriangleNode::availableDrawModes (  )  const [virtual]

Return a list of available draw modes for this node: should be OR'ed from the items of the enum DrawModeIDs.

Reimplemented from ACG::SceneGraph::ACG::SceneGraph::BaseNode.

Definition at line 108 of file TriangleNode.cc.

References ACG::SceneGraph::DrawModes::HIDDENLINE, ACG::SceneGraph::DrawModes::NONE, ACG::SceneGraph::DrawModes::SOLID_FLAT_SHADED, and ACG::SceneGraph::DrawModes::WIREFRAME.

void ACG::SceneGraph::TriangleNode::boundingBox ( Vec3d &  ,
Vec3d &   
) [virtual]

Compute the bounding box of this node and update the values _bbMin and _bbMax accordingly. Do not initialize _bbMin and _bbMax since they may already store values of previous nodes' bounding box computation.

Reimplemented from ACG::SceneGraph::ACG::SceneGraph::BaseNode.

Definition at line 81 of file TriangleNode.cc.


The documentation for this class was generated from the following files:

acg pic Project OpenFlipper, ©  Computer Graphics Group, RWTH Aachen. Documentation generated using doxygen .