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.