Abstract class for fast approximate computation of generalized winding number for a mesh (using its AABB tree) More...
#include <MRFastWindingNumber.h>
Inheritance diagram for MR::IFastWindingNumber:Public Member Functions | |
| virtual | ~IFastWindingNumber ()=default |
| virtual Expected< void > | calcFromVector (std::vector< float > &res, const std::vector< Vector3f > &points, float beta, FaceId skipFace={}, const ProgressCallback &cb={})=0 |
| calculates winding numbers in the points from given vector | |
| virtual Expected< void > | calcSelfIntersections (FaceBitSet &res, float beta, const ProgressCallback &cb={})=0 |
| calculates winding numbers for all centers of mesh's triangles. if winding number is less than 0 or greater then 1, that face is marked as self-intersected | |
| virtual Expected< void > | calcFromGrid (std::vector< float > &res, const Vector3i &dims, const AffineXf3f &gridToMeshXf, float beta, const ProgressCallback &cb={})=0 |
| calculates winding numbers in each point from a three-dimensional grid | |
| virtual Expected< void > | calcFromGridWithDistances (std::vector< float > &res, const Vector3i &dims, const AffineXf3f &gridToMeshXf, const DistanceToMeshOptions &options, const ProgressCallback &cb)=0 |
| calculates distances with the sign obtained from generalized winding number in each point from a three-dimensional grid; if sqr(res) < minDistSq or sqr(res) >= maxDistSq, then NaN is returned for such point | |
Abstract class for fast approximate computation of generalized winding number for a mesh (using its AABB tree)