Abstract class for fast approximate computation of generalized winding number for a mesh (using its AABB tree) Generated from class MR.IFastWindingNumber. Derived classes: Direct: (non-virtual) MR.FastWindingNumber This is the non-const half of the class.
More...
|
| 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) |
| | calculates winding numbers in the points from given vector
|
| |
| unsafe void | calcSelfIntersections (MR.FaceBitSet res, float beta, MR.Std.Const_Function_BoolFuncFromFloat? cb=null) |
| | 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
|
| |
| 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) |
| | calculates winding numbers in each point from a three-dimensional grid
|
| |
| 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) |
| | 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) Generated from class MR.IFastWindingNumber. Derived classes: Direct: (non-virtual) MR.FastWindingNumber This is the non-const half of the class.
◆ calcFromGrid()
| unsafe void MR.IFastWindingNumber.calcFromGrid |
( |
MR.Std.Vector_Float | res, |
|
|
in MR.Vector3i | dims, |
|
|
in MR.AffineXf3f | gridToMeshXf, |
|
|
float | beta, |
|
|
MR.Std.Const_Function_BoolFuncFromFloat? | cb = null ) |
|
inline |
calculates winding numbers in each point from a three-dimensional grid
- Parameters
-
| res | resulting winding numbers, will be resized automatically |
| dims | dimensions of the grid |
| gridToMeshXf | transform from integer grid locations to voxel's centers in mesh reference frame |
| beta | determines the precision of the approximation: the more the better, recommended value 2 or more |
Generated from method MR.IFastWindingNumber.calcFromGrid. Parameter cb defaults to {}.
◆ calcFromGridWithDistances()
| unsafe void MR.IFastWindingNumber.calcFromGridWithDistances |
( |
MR.Std.Vector_Float | res, |
|
|
in MR.Vector3i | dims, |
|
|
in MR.AffineXf3f | gridToMeshXf, |
|
|
MR.Const_DistanceToMeshOptions | options, |
|
|
MR.Std.Const_Function_BoolFuncFromFloat | cb ) |
|
inline |
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
- Parameters
-
| res | resulting signed distances, will be resized automatically |
| dims | dimensions of the grid |
Generated from method MR.IFastWindingNumber.calcFromGridWithDistances.
◆ calcFromVector()
| unsafe void MR.IFastWindingNumber.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 ) |
|
inline |
calculates winding numbers in the points from given vector
- Parameters
-
| res | resulting winding numbers, will be resized automatically |
| points | incoming points |
| beta | determines the precision of the approximation: the more the better, recommended value 2 or more |
| skipFace | this triangle (if it is close to q) will be skipped from summation |
Generated from method MR.IFastWindingNumber.calcFromVector. Parameter skipFace defaults to {}. Parameter cb defaults to {}.
◆ calcSelfIntersections()
| unsafe void MR.IFastWindingNumber.calcSelfIntersections |
( |
MR.FaceBitSet | res, |
|
|
float | beta, |
|
|
MR.Std.Const_Function_BoolFuncFromFloat? | cb = null ) |
|
inline |
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
- Parameters
-
| res | resulting bit set |
| beta | determines the precision of the approximation: the more the better, recommended value 2 or more |
Generated from method MR.IFastWindingNumber.calcSelfIntersections. Parameter cb defaults to {}.
The documentation for this class was generated from the following file: