#include <ACG/Scenegraph/StatusNodesT.hh>


Public Member Functions | |
| StatusNodeT (const Mesh &_mesh, BaseNode *_parent=0, const std::string &_name="<StatusNode>") | |
| constructor | |
| ~StatusNodeT () | |
| destructor | |
| ACG_CLASSNAME (StatusNode) | |
| void | update_cache () |
| unsigned int | availableDrawModes () const |
| void | boundingBox (Vec3f &_bbMin, Vec3f &_bbMax) |
| void | draw (GLState &_state, unsigned int _drawMode) |
| void | pick (GLState &, PickTarget) |
Private Types | |
| typedef Mesh::Face | Face |
| typedef Mesh::Vertex | Vertex |
| typedef Mesh::Halfedge | Halfedge |
| typedef Mesh::Edge | Edge |
| typedef Mesh::FaceHandle | FaceHandle |
Private Member Functions | |
| void | draw_points () |
| void | draw_edges () |
| void | draw_faces (bool _per_vertex) |
Private Attributes | |
| const Mesh & | mesh_ |
| std::vector< unsigned int > | v_cache_ |
| std::vector< unsigned int > | e_cache_ |
| std::vector< unsigned int > | f_cache_ |
| std::vector< FaceHandle > | fh_cache_ |
| Vec3f | bbMin_ |
| Vec3f | bbMax_ |
Renders Status flags of Mesh Vertices/Faces/Edges
Definition at line 84 of file StatusNodesT.hh.
| unsigned int ACG::SceneGraph::StatusNodeT< Mesh, Mod >::availableDrawModes | ( | ) | const [inline, 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::BaseNode.
Definition at line 108 of file StatusNodesT.cc.
References ACG::SceneGraph::DrawModes::POINTS, ACG::SceneGraph::DrawModes::SOLID_FLAT_SHADED, and ACG::SceneGraph::DrawModes::WIREFRAME.
| void ACG::SceneGraph::StatusNodeT< Mesh, Mod >::boundingBox | ( | Vec3f & | , | |
| Vec3f & | ||||
| ) | [inline, 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::BaseNode.
Definition at line 95 of file StatusNodesT.cc.
| void ACG::SceneGraph::StatusNodeT< Mesh, Mod >::draw | ( | GLState & | , | |
| unsigned int | ||||
| ) | [inline, virtual] |
Draw this node using the draw modes _drawMode
Reimplemented from ACG::SceneGraph::BaseNode.
Definition at line 187 of file StatusNodesT.cc.
References ACG::SceneGraph::DrawModes::DEFAULT, ACG::SceneGraph::BaseNode::depthFunc(), ACG::SceneGraph::BaseNode::drawMode(), ACG::SceneGraph::DrawModes::HIDDENLINE, ACG::SceneGraph::DrawModes::POINTS, ACG::SceneGraph::DrawModes::POINTS_SHADED, ACG::SceneGraph::DrawModes::SOLID_FLAT_SHADED, ACG::SceneGraph::DrawModes::SOLID_PHONG_SHADED, ACG::SceneGraph::DrawModes::SOLID_SMOOTH_SHADED, ACG::SceneGraph::DrawModes::SOLID_TEXTURED_SHADED, and ACG::SceneGraph::DrawModes::WIREFRAME.
| void ACG::SceneGraph::StatusNodeT< Mesh, Mod >::pick | ( | GLState & | , | |
| PickTarget | ||||
| ) | [inline, virtual] |
Draw the node using the GL picking name stack. The node's ID will already be on the name stack, so only names identifing e.g. faces should be used ( by glLoadName() ).
Reimplemented from ACG::SceneGraph::BaseNode.
Definition at line 108 of file StatusNodesT.hh.
| void ACG::SceneGraph::StatusNodeT< Mesh, Mod >::update_cache | ( | ) | [inline] |
build/update cache of active vertices/edges/faces. This function automatically enables caching.
Definition at line 122 of file StatusNodesT.cc.
Referenced by MeshObject< MeshT, objectDataType >::updateFeatures(), MeshObject< MeshT, objectDataType >::updateModelingRegions(), and MeshObject< MeshT, objectDataType >::updateSelection().