|
#include <array>#include <memory>#include <functional>#include "SurgSim/DataStructures/EmptyData.h"#include "SurgSim/Framework/Asset.h"#include "SurgSim/Math/Vector.h"#include "SurgSim/Math/Aabb.h"#include "SurgSim/DataStructures/OctreeNode-inl.h"Go to the source code of this file.
Classes | |
| class | SurgSim::DataStructures::OctreePathHash |
| Enable the OctreePath to be used as a key in an unordered map, if the int range is exceeded this will just push the least significant numbers (root addresses) out of scope, it loses a little bit of address space as octree ids only go from 0-7. More... | |
| class | SurgSim::DataStructures::OctreeNodePlyReaderDelegate< Data > |
| Subclass the OctreeNodePLyReaderDelegateBase class to enable processing of the templated data, this should be specialized to enable specific processing of various extended node types. More... | |
| class | SurgSim::DataStructures::OctreeNode< Data > |
| Octree data structure. More... | |
Namespaces | |
| SurgSim | |
| SurgSim::Math | |
| SurgSim::DataStructures | |
Typedefs | |
| typedef std::vector< size_t > | SurgSim::DataStructures::OctreePath |
| Typedef of octree path The path is a vector of children indexes (each within 0 to 7) that lead to the specific node the front of the vector holds the index of the root's children. More... | |
Enumerations | |
| enum | SurgSim::DataStructures::Neighborhood { SurgSim::DataStructures::NEIGHBORHOOD_NONE = 0x0, SurgSim::DataStructures::NEIGHBORHOOD_FACE = 0x1, SurgSim::DataStructures::NEIGHBORHOOD_EDGE = 0x2, SurgSim::DataStructures::NEIGHBORHOOD_VERTEX = 0x4, SurgSim::DataStructures::NEIGHBORHOOD_ALL = 0x1 | 0x2 | 0x4 } |
| Indicates what neighbors to grab. More... | |
| enum | SurgSim::DataStructures::Symbol { SurgSim::DataStructures::SYMBOL_HALT = -1, SurgSim::DataStructures::SYMBOL_DOWN = 0, SurgSim::DataStructures::SYMBOL_UP = 1, SurgSim::DataStructures::SYMBOL_RIGHT = 2, SurgSim::DataStructures::SYMBOL_LEFT = 3, SurgSim::DataStructures::SYMBOL_BACK = 4, SurgSim::DataStructures::SYMBOL_FRONT = 5 } |
| Direction code for the neighborhood search. More... | |
Functions | |
| SurgSim::DataStructures::OctreePath | SurgSim::DataStructures::getNeighbor (const OctreePath &origin, const std::array< Symbol, 3 > &direction) |
| Calculate the neighbor of an node in the octree by traversing a state machine, see http://ww1.ucmss.com/books/LFS/CSREA2006/MSV4517.pdf for detailed description. More... | |
| std::vector< OctreePath > | SurgSim::DataStructures::getNeighbors (const OctreePath &origin, int type) |
| Fetch a list of neighbors, indicated by the type, Face, Edge and Vertex are possible types and can be combined via OR. More... | |
1.8.13