|
| MRCUDA_API | FastWindingNumber (const Mesh &mesh) |
| | constructs this from AABB tree of given mesh;
|
| |
| MRCUDA_API Expected< void > | calcFromVector (std::vector< float > &res, const std::vector< Vector3f > &points, float beta, FaceId skipFace, const ProgressCallback &cb) override |
| | calculates winding numbers in the points from given vector
|
| |
| MRCUDA_API Expected< void > | calcSelfIntersections (FaceBitSet &res, float beta, const ProgressCallback &cb) override |
| | 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
|
| |
| MRCUDA_API Expected< void > | calcFromGrid (std::vector< float > &res, const Vector3i &dims, const AffineXf3f &gridToMeshXf, float beta, const ProgressCallback &cb) override |
| | calculates winding numbers in each point from a three-dimensional grid
|
| |
| MRCUDA_API Expected< void > | calcFromGridWithDistances (std::vector< float > &res, const Vector3i &dims, const AffineXf3f &gridToMeshXf, const DistanceToMeshOptions &options, const ProgressCallback &cb) override |
| | 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
|
| |
| MRCUDA_API Expected< void > | calcFromGridByParts (GridByPartsFunc resFunc, const Vector3i &dims, const AffineXf3f &gridToMeshXf, float beta, int layerOverlap, const ProgressCallback &cb) override |
| | calculates winding numbers in each point from a three-dimensional grid
|
| |
| MRCUDA_API Expected< void > | calcFromGridWithDistancesByParts (GridByPartsFunc resFunc, const Vector3i &dims, const AffineXf3f &gridToMeshXf, const DistanceToMeshOptions &options, int layerOverlap, const ProgressCallback &cb) override |
| | 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
|
| |
| unsafe void | calcFromVector (MR.Std.Vector_Float res, MR.Std.Const_Vector_MRVector3f points, float beta, MR._InOpt_FaceId skipFace=default, MR.Std.Const_Function_BoolFuncFromFloat? cb=null) |
| |
| unsafe void | calcSelfIntersections (MR.FaceBitSet res, float beta, MR.Std.Const_Function_BoolFuncFromFloat? cb=null) |
| |
| unsafe void | calcFromGrid (MR.Std.Vector_Float res, in MR.Vector3i dims, in MR.AffineXf3f gridToMeshXf, float beta, MR.Std.Const_Function_BoolFuncFromFloat? cb=null) |
| |
| unsafe void | calcFromGridWithDistances (MR.Std.Vector_Float res, in MR.Vector3i dims, in MR.AffineXf3f gridToMeshXf, MR.Const_DistanceToMeshOptions options, MR.Std.Const_Function_BoolFuncFromFloat cb) |
| |
| virtual | ~IFastWindingNumber ()=default |
| |
| unsafe void | calcFromGridByParts (MR.Std._ByValue_Function_ExpectedVoidStdStringFuncFromStdVectorFloatRvalueRefConstMRVector3iRefInt resFunc, in MR.Vector3i dims, in MR.AffineXf3f gridToMeshXf, float beta, int layerOverlap, MR.Std.Const_Function_BoolFuncFromFloat cb) |
| |
| unsafe void | calcFromGridWithDistancesByParts (MR.Std._ByValue_Function_ExpectedVoidStdStringFuncFromStdVectorFloatRvalueRefConstMRVector3iRefInt resFunc, in MR.Vector3i dims, in MR.AffineXf3f gridToMeshXf, MR.Const_DistanceToMeshOptions options, int layerOverlap, MR.Std.Const_Function_BoolFuncFromFloat cb) |
| |
| virtual | ~IFastWindingNumberByParts ()=default |
| |
the class for fast approximate computation of winding number for a mesh (using its AABB tree)