MeshLib Python Docs
Loading...
Searching...
No Matches
meshlib.mrcudapy.FastWindingNumber Class Reference
+ Inheritance diagram for meshlib.mrcudapy.FastWindingNumber:

Public Member Functions

None __init__ (self, meshlib.mrmeshpy.Mesh mesh)
 
None __init__ (self, FastWindingNumber arg0)
 
None calcFromGrid (self, meshlib.mrmeshpy.std_vector_float res, meshlib.mrmeshpy.Vector3i dims, meshlib.mrmeshpy.AffineXf3f gridToMeshXf, float beta, meshlib.mrmeshpy.func_bool_from_float cb)
 
None calcFromGridWithDistances (self, meshlib.mrmeshpy.std_vector_float res, meshlib.mrmeshpy.Vector3i dims, meshlib.mrmeshpy.AffineXf3f gridToMeshXf, float windingNumberThreshold, float beta, float maxDistSq, float minDistSq, meshlib.mrmeshpy.func_bool_from_float cb)
 
None calcFromVector (self, meshlib.mrmeshpy.std_vector_float res, meshlib.mrmeshpy.std_vector_Vector3_float points, float beta, meshlib.mrmeshpy.FaceId skipFace='MR::FaceId{}')
 
bool calcSelfIntersections (self, meshlib.mrmeshpy.FaceBitSet res, float beta, meshlib.mrmeshpy.func_bool_from_float cb)
 

Detailed Description

Generated from:  MR::Cuda::FastWindingNumber

the class for fast approximate computation of winding number for a mesh (using its AABB tree)
\\ingroup AABBTreeGroup

Constructor & Destructor Documentation

◆ __init__() [1/2]

None meshlib.mrcudapy.FastWindingNumber.__init__ ( self,
meshlib.mrmeshpy.Mesh mesh )
constructs this from AABB tree of given mesh;

◆ __init__() [2/2]

None meshlib.mrcudapy.FastWindingNumber.__init__ ( self,
FastWindingNumber arg0 )
Implicit copy constructor.

Member Function Documentation

◆ calcFromGrid()

None meshlib.mrcudapy.FastWindingNumber.calcFromGrid ( self,
meshlib.mrmeshpy.std_vector_float res,
meshlib.mrmeshpy.Vector3i dims,
meshlib.mrmeshpy.AffineXf3f gridToMeshXf,
float beta,
meshlib.mrmeshpy.func_bool_from_float cb )
<summary>
calculates winding numbers in each point from a three-dimensional grid
</summary>
<param name="res">resulting winding numbers, will be resized automatically</param>
<param name="dims">dimensions of the grid</param>
<param name="gridToMeshXf">transform from integer grid locations to voxel's centers in mesh reference frame</param>
<param name="beta">determines the precision of the approximation: the more the better, recommended value 2 or more</param>

Reimplemented from meshlib.mrmeshpy.IFastWindingNumber.

◆ calcFromGridWithDistances()

None meshlib.mrcudapy.FastWindingNumber.calcFromGridWithDistances ( self,
meshlib.mrmeshpy.std_vector_float res,
meshlib.mrmeshpy.Vector3i dims,
meshlib.mrmeshpy.AffineXf3f gridToMeshXf,
float windingNumberThreshold,
float beta,
float maxDistSq,
float minDistSq,
meshlib.mrmeshpy.func_bool_from_float cb )
<summary>
calculates distances with the sign obtained from winding number in each point from a three-dimensional grid
</summary>
<param name="res">resulting signed distances, will be resized automatically</param>
<param name="dims">dimensions of the grid</param>
<param name="gridToMeshXf">transform from integer grid locations to voxel's centers in mesh reference frame</param>
<param name="windingNumberThreshold">positive distance if winding number below or equal this threshold</param>
<param name="beta">determines the precision of the approximation: the more the better, recommended value 2 or more</param>

Reimplemented from meshlib.mrmeshpy.IFastWindingNumber.

◆ calcFromVector()

None meshlib.mrcudapy.FastWindingNumber.calcFromVector ( self,
meshlib.mrmeshpy.std_vector_float res,
meshlib.mrmeshpy.std_vector_Vector3_float points,
float beta,
meshlib.mrmeshpy.FaceId skipFace = 'MR::FaceId{}' )
see methods' descriptions in IFastWindingNumber

Reimplemented from meshlib.mrmeshpy.IFastWindingNumber.

◆ calcSelfIntersections()

bool meshlib.mrcudapy.FastWindingNumber.calcSelfIntersections ( self,
meshlib.mrmeshpy.FaceBitSet res,
float beta,
meshlib.mrmeshpy.func_bool_from_float cb )
<summary>
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
</summary>
<param name="res">resulting bit set</param>
<param name="beta">determines the precision of the approximation: the more the better, recommended value 2 or more</param>
<returns>false if the operation was canceled by the user</returns>

Reimplemented from meshlib.mrmeshpy.IFastWindingNumber.


The documentation for this class was generated from the following file: