62 template<
class Po
int,
class Po
intRef>
class tetrahedron;
64 template<
class Po
int,
class Po
intRef>
71 template<
class Po
int,
class Po
intRef>
82 template<
class Po
int,
class Po
intRef>
87 PointRef a_, b_, c_, d_;
128 inline const Point&
a()
const;
130 inline const Point&
b()
const;
132 inline const Point&
c()
const;
134 inline const Point&
d()
const;
151 inline Point
centre()
const;
154 inline scalar
mag()
const;
218 friend Istream&
operator>> <Point, PointRef>
224 friend Ostream& operator<< <Point, PointRef>
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.
pointHit containmentSphere(const scalar tol) const
Return (min)containment sphere, i.e. the smallest sphere with.
scalar circumRadius() const
Return circum-radius.
tetrahedron(const Point &a, const Point &b, const Point &c, const Point &d)
Construct from points.
Point circumCentre() const
Return circum-centre.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
void gradNiSquared(scalarField &buffer) const
Fill buffer with shape function products.
const Point & a() const
Return vertices.
A bounding box defined in terms of the points at its extremities.
Point barycentricToPoint(const barycentric &bary) const
Calculate the point from the given barycentric coordinates.
Forward declarations of the specialisations of Field<T> for scalar, vector and tensor.
scalar quality() const
Return quality: Ratio of tetrahedron and circum-sphere.
void gradNiGradNi(tensorField &buffer) const
scalar mag() const
Return volume.
vector Sa() const
Return face normal.
Point centre() const
Return centre (centroid)
bool inside(const point &pt) const
Return true if point is inside tetrahedron.
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
An Ostream is an abstract base class for all output systems (streams, files, token lists...
triPointRef tri(const label facei) const
Return i-th face.
boundBox bounds() const
Calculate the bounding box.
barycentric pointToBarycentric(const point &pt) const
Calculate the barycentric coordinates from the given point.
void gradNiGradNj(tensorField &buffer) const
pointHit nearestPoint(const point &p) const
Return nearest point to p on tetrahedron. Is p itself.
void gradNiDotGradNj(scalarField &buffer) const
Point randomPoint(Random &rndGen) const
Return a random point in the tetrahedron from a.