Template invariant parts for indexedOctree. More...
Classes | |
class | node |
Tree node. Has up pointer and down pointers. More... | |
Public Member Functions | |
ClassName ("indexedOctree") | |
Runtime type information. More... | |
indexedOctreeBase ()=default | |
Default construct. More... | |
Static Public Member Functions | |
static bool | isEmpty (labelBits i) noexcept |
An empty node - no content. More... | |
static bool | isContent (labelBits i) noexcept |
Node with content (leaf) More... | |
static bool | isNode (labelBits i) noexcept |
A parent node. More... | |
static label | getContent (labelBits i) |
Return real (dereferenced) index for a content node. More... | |
static label | getNode (const labelBits i) |
Return real (dereferenced) index for a parent node. More... | |
static direction | getOctant (labelBits i) noexcept |
Return sub-node direction/octant. More... | |
static scalar & | perturbTol () noexcept |
Get the perturbation tolerance. More... | |
static scalar | perturbTol (scalar tol) noexcept |
Set the perturbation tolerance, return the old value. More... | |
static void | writeOBJ (Ostream &os, const treeBoundBox &bb, label &vertIndex, const bool writeLinesOnly=false) |
Write treeBoundBox in OBJ format. More... | |
Static Protected Member Functions | |
static labelBits | emptyPlusOctant (direction octant) |
From empty to subNodes_ entry. More... | |
static labelBits | contentPlusOctant (label i, direction octant) |
From index into contents_ to subNodes_ entry. More... | |
static labelBits | nodePlusOctant (label i, direction octant) |
From index into nodes_ to subNodes_ entry. More... | |
Static Protected Attributes | |
static scalar | perturbTol_ = 10*SMALL |
Relative perturbation tolerance. More... | |
Template invariant parts for indexedOctree.
The internal node bookkeeping is encoded follows:
Definition at line 67 of file indexedOctree.H.
|
default |
Default construct.
|
inlinestaticnoexcept |
An empty node - no content.
Definition at line 139 of file indexedOctree.H.
|
inlinestaticnoexcept |
Node with content (leaf)
Definition at line 147 of file indexedOctree.H.
Referenced by indexedOctreeBase::getContent().
|
inlinestaticnoexcept |
A parent node.
Definition at line 155 of file indexedOctree.H.
Referenced by indexedOctreeBase::getNode().
|
inlinestatic |
Return real (dereferenced) index for a content node.
Definition at line 166 of file indexedOctree.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, indexedOctreeBase::isContent(), and labelBits::val().
|
inlinestatic |
Return real (dereferenced) index for a parent node.
Definition at line 179 of file indexedOctree.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, indexedOctreeBase::isNode(), and labelBits::val().
Return sub-node direction/octant.
Definition at line 192 of file indexedOctree.H.
From empty to subNodes_ entry.
Definition at line 221 of file indexedOctree.H.
From index into contents_ to subNodes_ entry.
Definition at line 229 of file indexedOctree.H.
From index into nodes_ to subNodes_ entry.
Definition at line 237 of file indexedOctree.H.
|
inlinestaticnoexcept |
Get the perturbation tolerance.
Definition at line 248 of file indexedOctree.H.
References indexedOctreeBase::perturbTol_.
Referenced by triSurfaceMesh::edgeTree(), triSurfaceSearch::findLine(), triSurfaceSearch::findLineAll(), triSurfaceSearch::findLineAny(), triSurfaceSearch::findNearest(), triSurfaceMesh::getVolumeType(), triSurfaceSearch::tree(), and triSurfaceSearch::triSurfaceSearch().
|
inlinestaticnoexcept |
Set the perturbation tolerance, return the old value.
Definition at line 253 of file indexedOctree.H.
References indexedOctreeBase::perturbTol_.
ClassName | ( | "indexedOctree" | ) |
Runtime type information.
|
static |
Write treeBoundBox in OBJ format.
Definition at line 38 of file indexedOctreeBase.C.
References Foam::constant::electromagnetic::e, f(), Foam::nl, os(), p, treeBoundBox::points(), and pts.
|
staticprotected |
Relative perturbation tolerance.
Determines when point is considered to be close to face/edge of bb of node. The tolerance is relative to the bounding box of the smallest node.
Definition at line 210 of file indexedOctree.H.
Referenced by indexedOctreeBase::perturbTol().