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 More... | |
virtual | ~StatusNodeT () |
destructor More... | |
ACG_CLASSNAME (StatusNode) | |
void | updateGeometry () |
set geometry invalid, topology and selection is kept More... | |
void | updateTopology () |
set topology invalid (updates everything) More... | |
void | updateSelection () |
set selection invalid (Only selection changed, rest is kept) More... | |
void | setDrawMesh (DrawMeshT< Mesh > *_drawmesh) |
Set drawmesh. More... | |
void | getRenderObjects (IRenderer *_renderer, GLState &_state, const DrawModes::DrawMode &_drawMode, const class Material *_mat) override |
support for shader-pipeline More... | |
DrawModes::DrawMode | availableDrawModes () const override |
void | boundingBox (Vec3d &_bbMin, Vec3d &_bbMax) override |
void | draw (GLState &_state, const DrawModes::DrawMode &_drawMode) override |
void | pick (GLState &, PickTarget) override |
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) |
void | updateIBOData (GLuint &bufferName_, size_t numberOfElements_, size_t sizeOfElements_, void *data_) |
void | updateHEVBOPoints (size_t numberOfElements_, size_t sizeOfElements_, void *data_) |
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. More... | |
bool | vertexIndexInvalid_ |
bool | halfedgeCacheInvalid_ |
bool | edgeIndexInvalid_ |
bool | faceIndexInvalid_ |
VertexDeclaration | pointVertexDecl_ |
VertexDeclaration | halfedgeVertexDecl_ |
![]() | |
GLuint | heVBO_ |
GLuint | eIBO_ |
GLuint | fIBO_ |
GLuint | vIBO_ |
GLuint | pIBO_ |
Renders Status flags of Mesh Vertices/Faces/Edges
Definition at line 207 of file StatusNodesT.hh.
typedef StatusNodeBaseT<Mesh, Mod, ::StatusNodes_ModTraits<Mod>::StaticUsage> ACG::SceneGraph::StatusNodeT< Mesh, Mod >::BaseClass |
Definition at line 212 of file StatusNodesT.hh.
|
private |
Definition at line 272 of file StatusNodesT.hh.
|
private |
Definition at line 269 of file StatusNodesT.hh.
|
private |
Definition at line 273 of file StatusNodesT.hh.
|
private |
Definition at line 271 of file StatusNodesT.hh.
|
private |
Definition at line 274 of file StatusNodesT.hh.
typedef Mod ACG::SceneGraph::StatusNodeT< Mesh, Mod >::ModType |
Definition at line 213 of file StatusNodesT.hh.
|
private |
Definition at line 277 of file StatusNodesT.hh.
|
private |
Definition at line 276 of file StatusNodesT.hh.
|
private |
Definition at line 270 of file StatusNodesT.hh.
ACG::SceneGraph::StatusNodeT< Mesh, Mod >::StatusNodeT | ( | const Mesh & | _mesh, |
BaseNode * | _parent = 0 , |
||
const std::string & | _name = "<StatusNode>" |
||
) |
constructor
Definition at line 69 of file StatusNodesT_impl.hh.
|
inlinevirtual |
destructor
Definition at line 221 of file StatusNodesT.hh.
|
override |
Definition at line 106 of file StatusNodesT_impl.hh.
|
override |
Definition at line 93 of file StatusNodesT_impl.hh.
|
override |
Definition at line 313 of file StatusNodesT_impl.hh.
|
private |
Definition at line 462 of file StatusNodesT_impl.hh.
|
private |
Definition at line 499 of file StatusNodesT_impl.hh.
|
private |
Definition at line 478 of file StatusNodesT_impl.hh.
|
private |
Definition at line 446 of file StatusNodesT_impl.hh.
|
override |
support for shader-pipeline
_renderer | Render-Interface, collector for Renderobjects |
_state | current OpenGL state |
_drawMode | active Drawmode |
_mat | active Material |
Definition at line 598 of file StatusNodesT_impl.hh.
|
private |
Definition at line 567 of file StatusNodesT_impl.hh.
|
inlineoverride |
Definition at line 259 of file StatusNodesT.hh.
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 765 of file StatusNodesT_impl.hh.
|
private |
build/update cache of active vertices/edges/faces. This function automatically enables caching.
Definition at line 121 of file StatusNodesT_impl.hh.
void ACG::SceneGraph::StatusNodeT< Mesh, Mod >::updateGeometry |
set geometry invalid, topology and selection is kept
Definition at line 741 of file StatusNodesT_impl.hh.
void ACG::SceneGraph::StatusNodeT< Mesh, Mod >::updateSelection |
set selection invalid (Only selection changed, rest is kept)
Definition at line 756 of file StatusNodesT_impl.hh.
void ACG::SceneGraph::StatusNodeT< Mesh, Mod >::updateTopology |
set topology invalid (updates everything)
Definition at line 747 of file StatusNodesT_impl.hh.
|
private |
Definition at line 302 of file StatusNodesT.hh.
|
private |
Definition at line 301 of file StatusNodesT.hh.
|
private |
Definition at line 290 of file StatusNodesT.hh.
|
private |
Definition at line 293 of file StatusNodesT.hh.
|
private |
Definition at line 309 of file StatusNodesT.hh.
|
private |
Definition at line 293 of file StatusNodesT.hh.
|
private |
Definition at line 310 of file StatusNodesT.hh.
|
private |
Definition at line 294 of file StatusNodesT.hh.
|
private |
Definition at line 308 of file StatusNodesT.hh.
|
private |
Definition at line 315 of file StatusNodesT.hh.
|
private |
Definition at line 298 of file StatusNodesT.hh.
|
private |
Definition at line 297 of file StatusNodesT.hh.
|
private |
State variables.
Definition at line 305 of file StatusNodesT.hh.
|
private |
Definition at line 289 of file StatusNodesT.hh.
|
private |
Definition at line 314 of file StatusNodesT.hh.
|
private |
Definition at line 293 of file StatusNodesT.hh.
|
private |
Definition at line 293 of file StatusNodesT.hh.
|
private |
Definition at line 307 of file StatusNodesT.hh.