36 point(-VGREAT, -VGREAT, -VGREAT),
37 point(VGREAT, VGREAT, VGREAT)
43 point(VGREAT, VGREAT, VGREAT),
44 point(-VGREAT, -VGREAT, -VGREAT)
50 void Foam::boundBox::calculate(
const UList<point>& points,
const bool doReduce)
60 min_ =
point(VGREAT, VGREAT, VGREAT);
61 max_ =
point(-VGREAT, -VGREAT, -VGREAT);
70 for (
label i = 1; i < points.size(); i++)
80 reduce(min_, minOp<point>());
81 reduce(max_, maxOp<point>());
93 calculate(points, doReduce);
102 calculate(
points(), doReduce);
122 min_ =
point(VGREAT, VGREAT, VGREAT);
123 max_ =
point(-VGREAT, -VGREAT, -VGREAT);
128 min_ = points[indices[0]];
129 max_ = points[indices[0]];
131 for (
label i=1; i < indices.size(); ++i)
155 pt[1] =
point(max_.
x(), min_.
y(), min_.
z());
156 pt[2] =
point(max_.
x(), max_.
y(), min_.
z());
157 pt[3] =
point(min_.
x(), max_.
y(), min_.
z());
158 pt[4] =
point(min_.
x(), min_.
y(), max_.
z());
159 pt[5] =
point(max_.
x(), min_.
y(), max_.
z());
161 pt[7] =
point(min_.
x(), max_.
y(), max_.
z());
310 return point(surfPtx, surfPty, surfPtz);
326 reinterpret_cast<const char*>(&bb.min_),
332 os.
check(
"Ostream& operator<<(Ostream&, const boundBox&)");
341 is >> bb.min_ >> bb.max_;
347 reinterpret_cast<char*>(&bb.min_),
353 is.
check(
"Istream& operator>>(Istream&, boundBox&)");
boundBox()
Construct null, setting points to zero.
#define forAll(list, i)
Loop across all elements in list.
streamFormat format() const
Return current stream format.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Inter-processor communication reduction functions.
dimensioned< Type > max(const dimensioned< Type > &, const dimensioned< Type > &)
bool empty() const
Return true if the UList is empty (ie, size() is zero)
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
static const scalar great
The great value used for greatBox and invertedBox.
static faceList faces()
Return faces with correct point order.
virtual bool check(const char *operation) const
Check IOstream status for given operation.
A bounding box defined in terms of the points at its extremities.
static const Vector< scalar > one
static const boundBox greatBox
A very large boundBox: min/max == -/+ VGREAT.
scalar mag() const
The magnitude of the bounding box span.
void clear() const
If object pointer points to valid object:
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))
vectorField pointField
pointField is a vectorField.
virtual Istream & read(token &)=0
Return next token from stream.
Istream & operator>>(Istream &, directionInfo &)
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
void inflate(const scalar s)
Inflate box by factor*mag(span) in all dimensions.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
bool containsAny(const UList< point > &) const
Contains any of the points? (inside or on edge)
dimensioned< Type > min(const dimensioned< Type > &, const dimensioned< Type > &)
void reduce(const List< UPstream::commsStruct > &comms, T &Value, const BinaryOp &bop, const int tag, const label comm)
point nearest(const point &) const
Return the nearest point on the boundBox to the supplied point.
void setSize(const label)
Reset size of List.
static const boundBox invertedBox
A very large inverted boundBox: min/max == +/- VGREAT.
static bool & parRun()
Is this a parallel run?
vector point
Point is a vector.
Ostream & operator<<(Ostream &, const ensightPart &)
virtual Ostream & write(const token &)=0
Write next token to stream.
tmp< pointField > points() const
Return corner points in an order corresponding to a 'hex' cell.
A class for managing temporary objects.
T & ref() const
Return non-const reference or generate a fatal error.
bool contains(const point &) const
Contains point? (inside or on edge)