AnimaL |
Tutorial |
Documentation |
#include <Octree.h>
Inheritance diagram for animal::octree::Octree:
Public Member Functions | |
Octree (Vec3d bboxMin, Vec3d bboxMax, MFVec3f *points, MFVec3f normals, unsigned int nMaxPointsPerCell=1) | |
~Octree () | |
unsigned int | getNMaxPointsPerCell () |
void | setNMaxPointsPerCell (unsigned int n) |
Set the maximum number of points per cell and update the octree by subdividing/simplifying cells if needed Require : n!=0. | |
void | setPositionMethod (int m) |
int | getPositionMethod () const |
void | subdivideDeformed (Cell *cell) |
void | subdivideRecDeformed (Cell *cell) |
void | simplify (Cell *cell) |
void | updateFrames (ConstrainedVertex *vertex, Cell *cell, unsigned int vPos) |
void | updateCellFrames (Cell *cell) |
void | movedRecLeaves (Cell *cell) |
void | structureChangedRecLeaves (Cell *cell) |
void | updateCellsData (Cell *cell) |
void | directManipulation (SFVec3fCellConstrained *vertex, Vec3d newPosition) |
std::vector< Vec3d > | getNormals () const |
OctreeDataPoints & | getMeshVertices () |
void | setFreeFrames (bool) |
bool | haveFreeFrames () const |
void | setDMMethod (int method) |
Static Public Member Functions | |
void | updateFrame (Cell *cell) |
void | updateFrames (Cell *cell) |
void | moved (Cell *cell) |
void | structureChanged (Cell *cell) |
void | updateVertexInformationsRec (Cell *cell) |
Update the relativePosition data in the OctreeDataPoints. | |
void | updateVertexInformationsRecLeaves (Cell *cell) |
void | updateVertexInformations (Cell *cell) |
void | updateInfluenceMapsRecLeaves (Cell *cell) |
void | updateInfluenceMaps (Cell *cell) |
Private Member Functions | |
int | createOctree (Cell *cell, std::deque< SFVec3f * > pointsIn) |
int | createOctree (Cell *cell) |
void | updateHierarchy (Cell *cell) |
bool | isLeaf (Cell *cell) |
Private Attributes | |
unsigned int | _nMaxPointsPerCell |
int | _optionPositionMethod |
bool | _freeFrames |
int | _DMMethod |
|
|
Definition at line 594 of file Octree.cpp. |
|
Definition at line 621 of file Octree.cpp. References animal::octree::Cell, createOctree(), getNMaxPointsPerCell(), and subdivideDeformed(). |
|
Referenced by createOctree(), and Octree(). |
|
|
Definition at line 1425 of file Octree.cpp. References animal::octree::OctreeDataPoints, and animal::octree::FastOctree< T, S, U >::root(). |
|
Definition at line 645 of file Octree.cpp. References _nMaxPointsPerCell. Referenced by createOctree(), X3DTK::X3D::DeformableOctreeNode::getOptionNMaxPointsPerCell(), Octree(), and updateHierarchy(). |
|
Definition at line 1409 of file Octree.cpp. References animal::octree::Cell, and animal::octree::FastOctree< T, S, U >::root(). |
|
Definition at line 702 of file Octree.cpp. References _optionPositionMethod. Referenced by directManipulation(), and movedRecLeaves(). |
|
Definition at line 115 of file Octree.h. References _freeFrames. Referenced by directManipulation(), movedRecLeaves(), structureChangedRecLeaves(), and subdivideDeformed(). |
|
Definition at line 133 of file Octree.h. References animal::octree::Cell. |
|
Definition at line 890 of file Octree.cpp. References animal::octree::_globalPositionMethod, animal::octree::Cell, and animal::octree::OctreeDataPoints. Referenced by movedRecLeaves(). |
|
|
Definition at line 601 of file Octree.cpp. References _DMMethod, animal::octree::OCTREE_DM_FRAMES, animal::octree::OCTREE_DM_NOTHING, animal::octree::OCTREE_DM_VERTICES, and Require. |
|
Definition at line 608 of file Octree.cpp. References _freeFrames. |
|
Set the maximum number of points per cell and update the octree by subdividing/simplifying cells if needed Require : n!=0.
Definition at line 650 of file Octree.cpp. References _nMaxPointsPerCell, Require, animal::octree::FastOctree< T, S, U >::root(), and updateHierarchy(). Referenced by X3DTK::X3D::DeformableOctreeNode::slotSetNMaxPointsPerCell(). |
|
Set the interpolation method for calcing mesh' vertices position Definition at line 691 of file Octree.cpp. References _optionPositionMethod, animal::octree::FastOctree< T, S, U >::root(), animal::octree::ConstrainedVertex::setDelta(), and animal::octree::Vec3d. Referenced by X3DTK::X3D::DeformableOctreeNode::slotSetInterpolationMethod(). |
|
Simplify a cell Definition at line 1000 of file Octree.cpp. References animal::octree::Cell, movedRecLeaves(), animal::octree::FastOctree< T, S, U >::root(), structureChangedRecLeaves(), updateInfluenceMapsRecLeaves(), and updateVertexInformationsRecLeaves(). Referenced by X3DTK::X3D::DeformableOctreeNode::slotSimplify(). |
|
Definition at line 959 of file Octree.cpp. References animal::octree::Cell, updateInfluenceMaps(), and updateVertexInformations(). Referenced by structureChangedRecLeaves(). |
|
Definition at line 903 of file Octree.cpp. References animal::octree::Cell, animal::octree::Frame::getVector(), haveFreeFrames(), animal::octree::Frame::setOrigin(), animal::octree::Frame::setVector(), structureChanged(), and updateFrames(). Referenced by Octree(), simplify(), and subdivideRecDeformed(). |
|
Subdivide a cell of any type Definition at line 716 of file Octree.cpp. References animal::octree::Cell, animal::octree::SFVec3fCellConstrained::computeDerivative(), animal::octree::SFVec3fCellConstrained::computePosition(), Ensure, haveFreeFrames(), animal::octree::LOCAL_SKINNING, Require, animal::octree::SFVec3fCellConstrained::setParams(), animal::octree::SFVec3fCellConstrained::updateSkinningInformations(), and animal::octree::Vec3d. Referenced by createOctree(), subdivideRecDeformed(), and updateHierarchy(). |
|
Subdivide recursively this cell meaning that we subdivide every leaf cell Definition at line 849 of file Octree.cpp. References animal::octree::Cell, movedRecLeaves(), animal::octree::FastOctree< T, S, U >::root(), structureChangedRecLeaves(), and subdivideDeformed(). Referenced by X3DTK::X3D::DeformableOctreeNode::slotSubdivide(). |
|
|
|
Definition at line 1086 of file Octree.cpp. References animal::octree::Cell, and animal::octree::OctreeDataPoints. |
|
Update the frames depending on the cell Definition at line 1026 of file Octree.cpp. References animal::octree::Cell. |
|
Definition at line 1054 of file Octree.cpp. References animal::octree::Cell. |
|
Definition at line 1036 of file Octree.cpp. References animal::octree::Cell. Referenced by movedRecLeaves(), and structureChangedRecLeaves(). |
|
Definition at line 660 of file Octree.cpp. References animal::octree::Cell, getNMaxPointsPerCell(), and subdivideDeformed(). Referenced by setNMaxPointsPerCell(). |
|
|
Definition at line 1120 of file Octree.cpp. References animal::octree::Cell, and updateInfluenceMaps(). Referenced by simplify(). |
|
Definition at line 988 of file Octree.cpp. References animal::octree::Cell. Referenced by Octree(), structureChanged(), updateVertexInformationsRec(), and updateVertexInformationsRecLeaves(). |
|
Update the relativePosition data in the OctreeDataPoints.
Definition at line 975 of file Octree.cpp. References animal::octree::Cell, and updateVertexInformations(). |
|
Definition at line 981 of file Octree.cpp. References animal::octree::Cell, and updateVertexInformations(). Referenced by simplify(). |
|
Definition at line 139 of file Octree.h. Referenced by directManipulation(), and setDMMethod(). |
|
Definition at line 137 of file Octree.h. Referenced by haveFreeFrames(), and setFreeFrames(). |
|
Definition at line 127 of file Octree.h. Referenced by getNMaxPointsPerCell(), and setNMaxPointsPerCell(). |
|
Definition at line 131 of file Octree.h. Referenced by getPositionMethod(), and setPositionMethod(). |