MeshLib Python Docs
Loading...
Searching...
No Matches
meshlib.mrmeshpy.PointCloudComponents Class Reference

Static Public Member Functions

tuple[std_vector_TaggedBitSet_VertTag, int] getAllComponents (PointCloud pointCloud, float maxDist, int maxComponentCount=2147483647, func_bool_from_float pc='MR::ProgressCallback{}')
 
std_vector_TaggedBitSet_VertTag getLargeComponents (PointCloud pointCloud, float maxDist, int minSize, func_bool_from_float pc='MR::ProgressCallback{}')
 
VertBitSet getLargeComponentsUnion (PointCloud pointCloud, float maxDist, int minSize, func_bool_from_float pc='MR::ProgressCallback{}')
 
VertBitSet getLargeComponentsUnion (UnionFind_VertId unionStructs, VertBitSet region, int minSize, func_bool_from_float pc='MR::ProgressCallback{}')
 
UnionFind_VertId getUnionFindStructureVerts (PointCloud pointCloud, float maxDist, VertBitSet region=None, func_bool_from_float pc='MR::ProgressCallback{}')
 

Detailed Description

This is a namespace.

Member Function Documentation

◆ getAllComponents()

tuple[std_vector_TaggedBitSet_VertTag, int] meshlib.mrmeshpy.PointCloudComponents.getAllComponents ( PointCloud pointCloud,
float maxDist,
int maxComponentCount = 2147483647,
func_bool_from_float pc = 'MR::ProgressCallback{}' )
static
gets all components of point cloud connected by a distance no greater than \\param maxDist
\\detail if components number more than the maxComponentCount, they will be combined into groups of the same size 
\\note be careful, if point cloud is large enough and has many components, the memory overflow will occur
\\param maxComponentCount should be more then 1
\\return pair components bitsets vector and number components in one group if components number more than maxComponentCount

◆ getLargeComponents()

std_vector_TaggedBitSet_VertTag meshlib.mrmeshpy.PointCloudComponents.getLargeComponents ( PointCloud pointCloud,
float maxDist,
int minSize,
func_bool_from_float pc = 'MR::ProgressCallback{}' )
static
returns vector of point cloud components containing at least minSize points and connected by a distance no greater than \\param maxDist
\\param minSize must be more than 1

◆ getLargeComponentsUnion() [1/2]

VertBitSet meshlib.mrmeshpy.PointCloudComponents.getLargeComponentsUnion ( PointCloud pointCloud,
float maxDist,
int minSize,
func_bool_from_float pc = 'MR::ProgressCallback{}' )
static
returns the union of point cloud components containing at least minSize points and connected by a distance no greater than \\param maxDist
\\param minSize must be more than 1

◆ getLargeComponentsUnion() [2/2]

VertBitSet meshlib.mrmeshpy.PointCloudComponents.getLargeComponentsUnion ( UnionFind_VertId unionStructs,
VertBitSet region,
int minSize,
func_bool_from_float pc = 'MR::ProgressCallback{}' )
static
returns the union of vertices components containing at least minSize points
\\param unionStructs prepared point union structure
\\note have side effect: call unionStructs.roots() that change unionStructs

◆ getUnionFindStructureVerts()

UnionFind_VertId meshlib.mrmeshpy.PointCloudComponents.getUnionFindStructureVerts ( PointCloud pointCloud,
float maxDist,
VertBitSet region = None,
func_bool_from_float pc = 'MR::ProgressCallback{}' )
static
gets union - find structure for vertices in \\param region connected by a distance no greater than \\param maxDist 

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