37 (a[0] ==
b[0] && a[1] ==
b[1] && a[2] ==
b[2])
38 || (a[0] ==
b[1] && a[1] ==
b[2] && a[2] ==
b[0])
39 || (a[0] ==
b[2] && a[1] ==
b[0] && a[2] ==
b[1])
47 (a[0] ==
b[2] && a[1] ==
b[1] && a[2] ==
b[0])
48 || (a[0] ==
b[1] && a[1] ==
b[0] && a[2] ==
b[2])
49 || (a[0] ==
b[0] && a[1] ==
b[2] && a[2] ==
b[1])
102 if (
operator[](0) ==
operator[](1) ||
operator[](1) == -1)
107 else if (
operator[](1) ==
operator[](2) ||
operator[](2) == -1)
112 if (
operator[](0) ==
operator[](2))
124 Swap(
operator[](1),
operator[](2));
144 f[0] = operator[](0);
145 f[1] = operator[](1);
146 f[2] = operator[](2);
194 return maga > 0 ? a/maga :
Zero;
207 return triFace(
operator[](0),
operator[](2),
operator[](1));
220 (npts[operator[](0)] - opts[operator[](0)])
222 (opts[
operator[](1)] - opts[
operator[](0)])
223 ^ (opts[operator[](2)] - opts[operator[](0)])
227 (npts[
operator[](1)] - opts[operator[](1)])
229 (opts[
operator[](2)] - opts[
operator[](1)])
230 ^ (npts[operator[](0)] - opts[operator[](1)])
234 (opts[
operator[](2)] - npts[operator[](2)])
236 (npts[
operator[](1)] - npts[
operator[](2)])
237 ^ (npts[operator[](0)] - npts[operator[](2)])
252 return this->tri(
points).inertia(refPt, density);
265 return this->tri(
points).ray(
p, q, alg, dir);
279 return this->tri(
points).intersection(
p, q, alg, tol);
303 return this->tri(
points).nearestPoint(
p);
315 return this->tri(
points).nearestPointClassify(
p, nearType, nearLabel);
329 e[0].start() = operator[](0);
330 e[0].end() = operator[](1);
332 e[1].start() = operator[](1);
333 e[1].end() = operator[](2);
335 e[2].start() = operator[](2);
336 e[2].end() = operator[](0);
344 return edge(
operator[](
n),
operator[](fcIndex(
n)));
356 (
operator[](0) ==
e.start() &&
operator[](1) ==
e.end())
357 || (
operator[](1) ==
e.start() &&
operator[](2) ==
e.end())
358 || (
operator[](2) ==
e.start() &&
operator[](0) ==
e.end())
365 (
operator[](0) ==
e.end() &&
operator[](1) ==
e.start())
366 || (
operator[](1) ==
e.end() &&
operator[](2) ==
e.start())
367 || (
operator[](2) ==
e.end() &&
operator[](0) ==
e.start())
Useful combination of include files which define Sin, Sout and Serr and the use of IO streams general...
A 1D vector of objects of type <T> with a fixed size <Size>.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
An edge is a list of two point labels. The functionality it provides supports the discretisation on a...
A face is a list of labels corresponding to mesh vertices.
A triangular face using a FixedList of labels corresponding to mesh vertices.
void flip()
Flip the face in-place.
static int compare(const triFace &, const triFace &)
Compare triFaces.
pointField points(const pointField &) const
Return the points corresponding to this face.
tensor inertia(const pointField &, const point &refPt=vector::zero, scalar density=1.0) const
Return the inertia tensor, with optional reference.
triFace reverseFace() const
Return face with reverse direction.
scalar mag(const pointField &) const
Return scalar magnitude.
int edgeDirection(const edge &) const
Return the edge direction on the face.
scalar sweptVol(const pointField &oldPoints, const pointField &newPoints) const
Return swept-volume.
point centre(const pointField &) const
Return centre (centroid)
vector area(const pointField &) const
Return vector area.
pointHit nearestPointClassify(const point &p, const pointField &points, label &nearType, label &nearLabel) const
Return nearest point to face and classify it:
vector normal(const pointField &) const
Return unit normal.
pointHit ray(const point &p, const vector &q, const pointField &points, const intersection::algorithm=intersection::algorithm::fullRay, const intersection::direction dir=intersection::direction::vector) const
Return point intersection with a ray starting at p,.
pointHit nearestPoint(const point &p, const pointField &points) const
Return nearest point to face.
label collapse()
Collapse face by removing duplicate point labels.
face triFaceFace() const
Return triangle as a face.
label nTriangles() const
Number of triangles after splitting.
edgeList edges() const
Return edges in face point ordering,.
pointHit intersection(const point &p, const vector &q, const pointField &points, const intersection::algorithm alg, const scalar tol=0.0) const
Fast intersection with a ray.
triPointRef tri(const pointField &) const
Return the triangle.
label nEdges() const
Return number of edges.
edge faceEdge(const label n) const
Return n-th face edge.
A triangle primitive used to calculate face areas and swept volumes.
const dimensionedScalar c
Speed of light in a vacuum.
bool operator!=(const particle &, const particle &)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
tmp< fvMatrix< Type > > operator==(const fvMatrix< Type > &, const fvMatrix< Type > &)
dimensioned< scalar > mag(const dimensioned< Type > &)
triangle< point, const point & > triPointRef