|
Developer Documentation
|
#include <ACG/Scenegraph/StatusNodesT.hh>
Public Types | |
|
typedef StatusNodeBaseT< Mesh, Mod,::StatusNodes_ModTraits < Mod >::StaticUsage > | BaseClass |
| typedef Mod | ModType |
Public Member Functions | |
| StatusNodeT (const Mesh &_mesh, BaseNode *_parent=0, const std::string &_name="<StatusNode>") | |
| constructor | |
| virtual | ~StatusNodeT () |
| destructor | |
| ACG_CLASSNAME (StatusNode) | |
| void | updateGeometry () |
| set geometry invalid, topology and selection is kept | |
| void | updateTopology () |
| set topology invalid (updates everything) | |
| void | updateSelection () |
| set selection invalid (Only selection changed, rest is kept) | |
| void | setDrawMesh (DrawMeshT< Mesh > *_drawmesh) |
| Set drawmesh. More... | |
| void | getRenderObjects (IRenderer *_renderer, GLState &_state, const DrawModes::DrawMode &_drawMode, const class Material *_mat) |
| support for shader-pipeline More... | |
| DrawModes::DrawMode | availableDrawModes () const |
| void | boundingBox (Vec3d &_bbMin, Vec3d &_bbMax) |
| void | draw (GLState &_state, const DrawModes::DrawMode &_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 |
| typedef Mesh::HalfedgeHandle | HalfedgeHandle |
| typedef Mesh::Point | Point |
| typedef Mesh::Normal | Normal |
Private Member Functions | |
| void | update_cache () |
| void | draw_points () |
| void | draw_edges () |
| void | draw_halfedges () |
| void | draw_faces (bool _per_vertex) |
| Point | halfedge_point (const HalfedgeHandle _heh) |
Private Attributes | |
| const Mesh & | mesh_ |
| DrawMeshT< Mesh > * | drawMesh_ |
| std::vector< unsigned int > | v_cache_ |
| std::vector< unsigned int > | e_cache_ |
| std::vector< unsigned int > | f_cache_ |
| std::vector< unsigned int > | poly_cache_ |
| std::vector< FaceHandle > | fh_cache_ |
| std::vector< Point > | he_points_ |
| std::vector< Normal > | he_normals_ |
| Vec3d | bbMin_ |
| Vec3d | bbMax_ |
| bool | invalidGeometry_ |
| State variables. | |
| bool | vertexIndexInvalid_ |
| bool | halfedgeCacheInvalid_ |
| bool | edgeIndexInvalid_ |
| bool | faceIndexInvalid_ |
| VertexDeclaration | pointVertexDecl_ |
| VertexDeclaration | halfedgeVertexDecl_ |
Renders Status flags of Mesh Vertices/Faces/Edges
Definition at line 183 of file StatusNodesT.hh.
| void ACG::SceneGraph::StatusNodeT< Mesh, Mod >::getRenderObjects | ( | IRenderer * | _renderer, |
| GLState & | _state, | ||
| const DrawModes::DrawMode & | _drawMode, | ||
| const class Material * | _mat | ||
| ) |
support for shader-pipeline
| _renderer | Render-Interface, collector for Renderobjects |
| _state | current OpenGL state |
| _drawMode | active Drawmode |
| _mat | active Material |
Definition at line 589 of file StatusNodesT.cc.
| void ACG::SceneGraph::StatusNodeT< Mesh, Mod >::setDrawMesh | ( | DrawMeshT< Mesh > * | _drawmesh | ) |
Set drawmesh.
Selections are then rendered with gpu buffers gathered fro the meshnode for improved performance
| _drawmesh | Pointer to the drawmesh for which this status node will work |
Definition at line 750 of file StatusNodesT.cc.
|
private |
build/update cache of active vertices/edges/faces. This function automatically enables caching.
Definition at line 132 of file StatusNodesT.cc.