61 template<
class Po
int,
class Po
intRef>
class tetrahedron;
63 template<
class Po
int,
class Po
intRef>
70 template<
class Po
int,
class Po
intRef>
81 template<
class Po
int,
class Po
intRef>
86 PointRef a_, b_, c_, d_;
127 inline const Point&
a()
const;
129 inline const Point&
b()
const;
131 inline const Point&
c()
const;
133 inline const Point&
d()
const;
150 inline Point
centre()
const;
153 inline scalar
mag()
const;
194 friend Istream&
operator>> <Point, PointRef>
200 friend Ostream& operator<< <Point, PointRef>
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
A 2-tuple for storing two objects of different types.
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
A bounding box defined in terms of the points at its extremities.
barycentric pointToBarycentric(const point &pt) const
Calculate the barycentric coordinates from the given point.
triPointRef tri(const label facei) const
Return i-th face.
boundBox bounds() const
Calculate the bounding box.
const Point & a() const
Return vertices.
Point centre() const
Return centre (centroid)
bool inside(const point &pt) const
Return true if point is inside tetrahedron.
Tuple2< Point, scalar > circumSphere() const
Return the circum centre and radius.
scalar mag() const
Return volume.
pointHit nearestPoint(const point &p) const
Return nearest point to p on tetrahedron. Is p itself.
Point randomPoint(randomGenerator &rndGen) const
Return a random point in the tetrahedron from a.
Point barycentricToPoint(const barycentric &bary) const
Calculate the point from the given barycentric coordinates.
tetrahedron(const Point &a, const Point &b, const Point &c, const Point &d)
Construct from points.
scalar quality() const
Return quality: Ratio of tetrahedron and circum-sphere.
vector Sa() const
Return face normal.
A triangle primitive used to calculate face areas and swept volumes.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Forward declarations of the specialisations of Field<T> for scalar, vector and tensor.
randomGenerator rndGen(653213)