Workspace 6.21.5
Classes | Namespaces | Typedefs | Functions | Variables
octree.h File Reference
#include <QVector>
#include "Workspace/Application/LanguageUtils/errorchecks.h"
#include "Workspace/Application/LanguageUtils/numericcast.h"
#include "Workspace/Application/logmanager.h"
#include "Mesh/Geometry/vector3d.h"
#include "Mesh/mesh_api.h"
Include dependency graph for octree.h:
This graph shows which files directly or indirectly include this file:

Classes

class  Octree< ItemType >
 
class  OctreeItem< ItemType >
 
class  OctreeNode< ScalarType >
 A node in the octree. More...
 
class  OctreeVector3< ScalarType >
 Templated Vector3 class for use by the Octree. More...
 

Namespaces

namespace  CSIRO
 Top level namespace for all Workspace code.
 
namespace  CSIRO::Mesh
 Mesh model data structures.
 

Typedefs

typedef uint OctreeIndex
 

Functions

template<typename ScalarType >
ScalarType clamp (ScalarType v, ScalarType low, ScalarType high)
 
OctreeIndex octreeNodeChildArrayIndex (unsigned x, unsigned y, unsigned z)
 
template<typename ScalarType >
OctreeIndex octreeNodeChildExists (const OctreeNode< ScalarType > &node, OctreeIndex childArrayIndex)
 
template<typename ScalarType >
OctreeIndex octreeNodeGetChild (const OctreeNode< ScalarType > &node, OctreeIndex childArrayIndex)
 
template<typename ScalarType >
bool octreeNodeIntersectsAABB (const OctreeNode< ScalarType > &node, const OctreeVector3< ScalarType > &aabbMin, const OctreeVector3< ScalarType > &aabbMax)
 
template<typename ScalarType >
bool octreeNodeIntersectsSphere (const OctreeNode< ScalarType > &node, const OctreeVector3< ScalarType > &pos, ScalarType radius)
 
template<typename ScalarType >
OctreeVector3< ScalarType > operator* (const OctreeVector3< ScalarType > &a, ScalarType b)
 
template<typename ScalarType >
OctreeVector3< ScalarType > operator+ (const OctreeVector3< ScalarType > &t1, const OctreeVector3< ScalarType > &t2)
 
template<typename ScalarType >
OctreeVector3< ScalarType > operator- (const OctreeVector3< ScalarType > &t1, const OctreeVector3< ScalarType > &t2)
 

Variables

const OctreeIndex InvalidOctreeIndex = std::numeric_limits<OctreeIndex>::max()