Go to the documentation of this file.
52 initialCubePtr_(NULL),
53 initialCubeRotation_(0),
55 isRootInitialised_(false),
59 regularityPositions_(),
62 isQuadtree_(isQuadtree)
134 for(
label vrtI=0;vrtI<8;++vrtI)
146 Info <<
"Vert " << vrtI <<
" vc " << vc <<
endl;
149 for(
label i=0;i<8;++i)
153 for(
label j=0;j<3;++j)
192 const point c = (max_ + min_) / 2.0;
193 scalar cs = 1.5 * (max_.
x() - min_.
x()) / 2.0;
194 if( cs < (1.5 * (max_.
y() - min_.
y()) / 2.0) )
196 cs = 1.5 * (max_.
y() - min_.
y()) / 2.0;
198 if( cs < (1.5 * (max_.
z() - min_.
z()) / 2.0) )
200 cs = 1.5 * (max_.
z() - min_.
z()) / 2.0;
214 if( omp_get_num_procs() > 0 )
FixedList< Vector< label >, 8 > octantVectors_
FixedList< meshOctreeCubeCoordinates, 26 > regularityPositions_
const point & max() const
Maximum describing the bounding box.
Template functions to aid in the implementation of demand driven data.
const pointField & points() const
access to points
void setOctantVectorsAndPositions()
set data needed for finding neighbours
static bool & parRun()
Is this a parallel run?
List< meshOctreeSlot > dataSlots_
List of slots containing data generated by each processor.
Ostream & endl(Ostream &os)
Add newline and flush stream.
LongList< meshOctreeCube > cubes_
List of octree cubes.
FixedList< FixedList< meshOctreeCubeCoordinates, 8 >, 8 > vrtLeavesPos_
meshOctree(const meshOctree &)
Disallow default bitwise copy construct.
void reduce(const List< UPstream::commsStruct > &comms, T &Value, const BinaryOp &bop, const int tag, const label comm)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
const bool isQuadtree_
a flag whether is true if is it a quadtree
const point & min() const
Minimum describing the bounding box.
LongList< meshOctreeCube * > leaves_
list of cubes which are leaves of the octree
label size() const
return the number of triangles
const triSurf & surface_
Reference to surface to work on.
A bounding box defined in terms of the points at its extremities.
const dimensionedScalar c
Speed of light in a vacuum.
meshOctreeCube * initialCubePtr_
Root cube of the octree structure.
vector point
Point is a vector.
void createInitialOctreeBox()
create initial octree box
dimensionedScalar pos(const dimensionedScalar &ds)