Go to the documentation of this file.
51 inline const cut::uniformOp<Type>&
triCutTri
87 inline const cut::uniformOp<Type>&
tetCutTet
134 template<
class Type,
unsigned N>
142 for (
unsigned i = 0; i < 3; ++ i)
144 result[i] =
x[indices[i]];
160 for (label i = 0; i < 2; ++ i)
162 result[i+1] =
x[0] +
f[i]*(
x[i+1] -
x[0]);
177 for (label i = 0; i < 2; ++ i)
180 result[3-i] =
x[0] +
f[i]*(
x[i+1] -
x[0]);
187 template<
class Type,
unsigned N>
195 for (
unsigned i = 0; i < 4; ++ i)
197 result[i] =
x[indices[i]];
213 for (label i = 0; i < 3; ++ i)
215 result[i+1] =
x[0] +
f[i]*(
x[i+1] -
x[0]);
230 for (label i = 0; i < 3; ++ i)
232 result[i] =
x[0] +
f[i]*(
x[i+1] -
x[0]);
233 result[i+3] =
x[i+1];
248 for (label i = 0; i < 2; ++ i)
251 for (label j = 0; j < 2; ++ j)
253 result[3*i+j+1] =
x[i] +
f[2*i+j]*(
x[j+2] -
x[i]);
272 Swap(result[2], result[4]);
293 template<
class Op,
class OpData>
294 inline typename Op::result
quadOp
296 const OpData& opData,
301 {{0, 1, 2}, {0, 2, 3}};
339 template<
class Op,
class OpData>
340 inline typename Op::result
prismOp
342 const OpData& opData,
347 {{0, 1, 2, 4}, {0, 2, 5, 4}, {0, 4, 5, 3}};
const cut::uniformOp< Type > & triCutTri(const cut::uniformOp< Type > &x, const Pair< scalar > &)
Modify a uniform operation for cutting a tri from a tri (does nothing)
const cut::uniformOp< Type > & tetCutTet(const cut::uniformOp< Type > &x, const FixedList< scalar, 3 > &)
Modify a uniform operation for cutting a tet from a tet (does nothing)
Op::result quadOp(const OpData &opData, const FixedList< point, 4 > &p)
Apply an operation to a quad. Splits the quad into two tris.
const cut::uniformOp< Type > & tetCutPrism23(const cut::uniformOp< Type > &x, const FixedList< scalar, 4 > &)
Modify a uniform operation for cutting prism23 from a tet (does nothing)
void Swap(DynamicList< T, SizeMin1 > &a, DynamicList< T, SizeMin2 > &b)
const cut::uniformOp< Type > & tetReorder(const cut::uniformOp< Type > &x, const FixedList< label, 4 > &)
Modify a uniform operation for reordering a tet (does nothing)
const cut::uniformOp< Type > & tetCutPrism01(const cut::uniformOp< Type > &x, const FixedList< scalar, 4 > &)
Modify a uniform operation for cutting prism01 from a tet (does nothing)
Functions for cutting triangles and tetrahedra. Generic operations are applied to each half of a cut.
const cut::uniformOp< Type > & tetCutPrism0(const cut::uniformOp< Type > &x, const FixedList< scalar, 3 > &)
Modify a uniform operation for cutting prism0 from a tet (does nothing)
Op::result prismOp(const OpData &opData, const FixedList< point, 6 > &p)
Apply an operation to a prism. Splits the prism into three tets.
const cut::uniformOp< Type > & triReorder(const cut::uniformOp< Type > &x, const FixedList< label, 3 > &)
Modify a uniform operation for reordering a tri (does nothing)
const cut::uniformOp< Type > & triCutQuad(const cut::uniformOp< Type > &x, const Pair< scalar > &)
Modify a uniform operation for cutting a quad from a tri (does nothing)