Field to encapsulate an increasing float value from range [0,1].
Helper class for performing a cutting on a face.
Defines the mesh component: face.
Defines the mesh component: an face holding a list of up to 100 indices.
Defines the mesh component: node.
Base class for triangle and quad patches.
Dynamic templated vector.
Target mlrange_cast(Source arg)
Generic version of checked ML casts.
void _addStab(WEMFace *face, WEMFaceCut *faceCut, WEMIndexedFace *nFace, WEMPatch *wemPatch, WEMVector< WEMNode > **edgeTable2, int *hitEdgeTable2)
Adds the given face cut (stab) to nFace (boolOp version).
MLWEM_EXPORT bool cutFace(WEMFace *face, WEMVector< WEMFaceCut > *faceCuts, WEMPatch *wemPatch, WEMVector< WEMIndexedFace > *cutFaces, bool traversedTrue, WEMNode **nodeTable, WEMVector< WEMNode > **edgeTable1, int *hitEdgeTable1, WEMVector< WEMNode > **edgeTable2, int *hitEdgeTable2, unsigned int intersectingFlag)
Applies the given cuts to the given face (boolOp version).
void _addPartialStab(WEMFace *face, WEMFaceCut *faceCut, int start, int end, WEMIndexedFace *nFace, WEMPatch *wemPatch, WEMVector< WEMNode > **edgeTable2, int *hitEdgeTable2)
Adds the given face cut (stab) to nFace, partially between given indices (boolOp version).
void _addFaceCut(WEMFace *face, WEMFaceCut *faceCut, WEMIndexedFace *nFace, WEMPatch *wemPatch, bool reverse, WEMVector< WEMNode > **edgeTable1, int *hitEdgeTable1, WEMVector< WEMNode > **edgeTable2, int *hitEdgeTable2)
Adds the given face cut to nFace (boolOp version).
MLWEM_EXPORT bool intersectFaces(WEMFace *face1, WEMVector< WEMPartialFaceCut > *partialCuts1, WEMFace *face2, WEMVector< WEMPartialFaceCut > *partialCuts2)
Intersects the two given faces and outputs the partial cuts to the given lists.
MLWEM_EXPORT void smoothFaceNormals(WEMPatch *wemPatch, unsigned int numSmoothingPasses, ProgressField *progressFld=nullptr)
Smooths all face normals.