57 #ifndef treeBoundBox_H 58 #define treeBoundBox_H 77 bool operator==(
const treeBoundBox&,
const treeBoundBox&);
78 bool operator!=(
const treeBoundBox&,
const treeBoundBox&);
80 Istream&
operator>>(Istream& is, treeBoundBox&);
81 Ostream&
operator<<(Ostream& os,
const treeBoundBox&);
106 static const scalar
great;
198 template<
unsigned Size>
215 inline scalar
typDim()
const;
297 const point& overallStart,
static const FixedList< vector, 6 > faceNormals
Per face the unit normal.
bool overlaps(const boundBox &) const
Overlaps/touches boundingBox?
scalar typDim() const
Typical dimension length,height,width.
direction subOctant(const point &pt) const
Returns octant number given point and the calculated midpoint.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
A class for handling file names.
point nearest(const point &) const
Return the nearest point on the boundBox to the supplied point.
A 1D vector of objects of type <T> with a fixed size <Size>.
point corner(const direction) const
Corner point given octant.
static const treeBoundBox greatBox
As per boundBox::greatBox, but with great instead of vGreat.
treeBoundBox subBbox(const direction) const
Sub box given by octant number. Midpoint calculated.
bool contiguous< treeBoundBox >()
Data associated with treeBoundBox type are contiguous.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
direction faceBits(const point &) const
Code position of point on bounding box faces.
static faceList faces()
Return faces with correct point order.
bool contains(const point &) const
Contains point? (inside or on edge)
A bounding box defined in terms of the points at its extremities.
void searchOrder(const point &pt, FixedList< direction, 8 > &octantOrder) const
Calculates optimal order to look for nearest to point.
direction posBits(const point &) const
Position of point relative to bounding box.
friend Istream & operator>>(Istream &is, treeBoundBox &)
gmvFile<< "tracers "<< particles.size()<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().x()<< " ";}gmvFile<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().y()<< " ";}gmvFile<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().z()<< " ";}gmvFile<< nl;forAll(lagrangianScalarNames, i){ word name=lagrangianScalarNames[i];IOField< scalar > s(IOobject(name, runTime.timeName(), cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
bool intersects(const point &overallStart, const vector &overallVec, const point &start, const point &end, point &pt, direction &ptBits) const
Intersects segment; set point to intersection position and face,.
friend bool operator==(const treeBoundBox &, const treeBoundBox &)
treeBoundBox()
Construct null setting points to zero.
tmp< fvMatrix< Type > > operator==(const fvMatrix< Type > &, const fvMatrix< Type > &)
Istream & operator>>(Istream &, directionInfo &)
static const edgeList edges
Edge to point addressing.
faceBit
Bits used for face coding.
friend bool operator!=(const treeBoundBox &, const treeBoundBox &)
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
void calcExtremities(const point &pt, point &nearest, point &furthest) const
Calculate nearest and furthest (to point) vertex coords of.
bool contains(const vector &dir, const point &) const
Contains point (inside or on edge) and moving in direction.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
scalar maxDist(const point &) const
Returns distance point to furthest away corner.
octantBit
Bits used for octant/point coding.
const point & max() const
Maximum describing the bounding box.
Direction is an 8-bit unsigned integer type used to represent the Cartesian directions etc...
label distanceCmp(const point &, const treeBoundBox &other) const
Compare distance to point with other bounding box.
Ostream & operator<<(Ostream &, const ensightPart &)
static const treeBoundBox invertedBox
As per boundBox::invertedBox, but with great instead of vGreat.
tmp< pointField > points() const
Vertex coordinates. In octant coding.
friend Ostream & operator<<(Ostream &os, const treeBoundBox &)
Standard boundBox + extra functionality for use in octree.
bool contiguous< boundBox >()
Data associated with boundBox type are contiguous.
const point & min() const
Minimum describing the bounding box.
A class for managing temporary objects.
bool operator!=(const particle &, const particle &)
static const scalar great
The great value used for greatBox and invertedBox.
treeBoundBox extend(const scalar s) const
Return asymetrically extended bounding box, with guaranteed.
void writeOBJ(const fileName &fName) const