Public Member Functions | |
| None | calcFromGrid (self, std_vector_float res, Vector3i dims, AffineXf3f gridToMeshXf, float beta, func_bool_from_float cb='{}') |
| None | calcFromGridWithDistances (self, std_vector_float res, Vector3i dims, AffineXf3f gridToMeshXf, DistanceToMeshOptions options, func_bool_from_float cb) |
| None | calcFromVector (self, std_vector_float res, std_vector_Vector3_float points, float beta, FaceId skipFace=..., func_bool_from_float cb='{}') |
| None | calcSelfIntersections (self, FaceBitSet res, float beta, func_bool_from_float cb='{}') |
Static Public Member Functions | |
| IFastWindingNumber | operator (*args, **kwargs) |
Generated from: MR::IFastWindingNumber Abstract class for fast approximate computation of generalized winding number for a mesh (using its AABB tree)
| None mrmeshpy.IFastWindingNumber.calcFromGrid | ( | self, | |
| std_vector_float | res, | ||
| Vector3i | dims, | ||
| AffineXf3f | gridToMeshXf, | ||
| float | beta, | ||
| func_bool_from_float | cb = '{}' ) |
calculates winding numbers in each point from a three-dimensional grid \\param res resulting winding numbers, will be resized automatically \\param dims dimensions of the grid \\param gridToMeshXf transform from integer grid locations to voxel's centers in mesh reference frame \\param beta determines the precision of the approximation: the more the better, recommended value 2 or more
Reimplemented in mrmeshpy.FastWindingNumber.
| None mrmeshpy.IFastWindingNumber.calcFromGridWithDistances | ( | self, | |
| std_vector_float | res, | ||
| Vector3i | dims, | ||
| AffineXf3f | gridToMeshXf, | ||
| DistanceToMeshOptions | options, | ||
| func_bool_from_float | 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 \\param res resulting signed distances, will be resized automatically \\param dims dimensions of the grid
Reimplemented in mrmeshpy.FastWindingNumber.
| None mrmeshpy.IFastWindingNumber.calcFromVector | ( | self, | |
| std_vector_float | res, | ||
| std_vector_Vector3_float | points, | ||
| float | beta, | ||
| FaceId | skipFace = ..., | ||
| func_bool_from_float | cb = '{}' ) |
calculates winding numbers in the points from given vector \\param res resulting winding numbers, will be resized automatically \\param points incoming points \\param beta determines the precision of the approximation: the more the better, recommended value 2 or more \\param skipFace this triangle (if it is close to `q`) will be skipped from summation
Reimplemented in mrmeshpy.FastWindingNumber.
| None mrmeshpy.IFastWindingNumber.calcSelfIntersections | ( | self, | |
| FaceBitSet | res, | ||
| float | beta, | ||
| func_bool_from_float | cb = '{}' ) |
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 \\param res resulting bit set \\param beta determines the precision of the approximation: the more the better, recommended value 2 or more
Reimplemented in mrmeshpy.FastWindingNumber.
|
static |