MeshLib C# Docs
Loading...
Searching...
No Matches
MR.Const_MeshOrPoints Class Reference

This class can hold either mesh part or point cloud. It is used for generic algorithms operating with either of them Generated from class MR.MeshOrPoints. This is the const half of the class. More...

+ Inheritance diagram for MR.Const_MeshOrPoints:

Classes

class  _InOptConst_ProjectionResult
 This is used for optional parameters of class ProjectionResult with default arguments. This is only used const parameters. For non-const ones we have _InOptMut_ProjectionResult. Usage: More...
 
class  _InOptMut_ProjectionResult
 This is used for optional parameters of class ProjectionResult with default arguments. This is only used mutable parameters. For const ones we have _InOptConst_ProjectionResult. Usage: More...
 
struct  _Underlying
 
class  Const_ProjectionResult
 Generated from class MR.MeshOrPoints.ProjectionResult. This is the const half of the class. More...
 
class  ProjectionResult
 Generated from class MR.MeshOrPoints.ProjectionResult. This is the non-const half of the class. More...
 

Public Member Functions

virtual void Dispose ()
 
unsafe Const_MeshOrPoints (MR.Const_MeshOrPoints _other)
 Generated from constructor MR.MeshOrPoints.MeshOrPoints.
 
unsafe Const_MeshOrPoints (MR.Const_MeshPart mp)
 Generated from constructor MR.MeshOrPoints.MeshOrPoints.
 
unsafe Const_MeshOrPoints (MR.Const_PointCloudPart pcp)
 Generated from constructor MR.MeshOrPoints.MeshOrPoints.
 
unsafe Const_MeshOrPoints (MR.Const_Mesh mesh)
 Generated from constructor MR.MeshOrPoints.MeshOrPoints.
 
unsafe Const_MeshOrPoints (MR.Const_PointCloud pc)
 Generated from constructor MR.MeshOrPoints.MeshOrPoints.
 
unsafe MR.? Const_MeshPart asMeshPart ()
 if this object holds a mesh part then returns pointer on it, otherwise returns nullptr Generated from method MR.MeshOrPoints.asMeshPart.
 
unsafe MR.? Const_PointCloudPart asPointCloudPart ()
 if this object holds a point cloud part then returns pointer on it, otherwise returns nullptr Generated from method MR.MeshOrPoints.asPointCloudPart.
 
unsafe MR.Box3f getObjBoundingBox ()
 returns the minimal bounding box containing all valid vertices of the object (and not only part of mesh); implemented via obj.getAABBTree() Generated from method MR.MeshOrPoints.getObjBoundingBox.
 
unsafe void cacheAABBTree ()
 if AABBTree is already built does nothing otherwise builds and caches it Generated from method MR.MeshOrPoints.cacheAABBTree.
 
unsafe MR.Box3f computeBoundingBox (MR.AffineXf3f? toWorld=null)
 passes through all valid vertices and finds the minimal bounding box containing all of them; if toWorld transformation is given then returns minimal bounding box in world space Generated from method MR.MeshOrPoints.computeBoundingBox.
 
unsafe void accumulate (MR.PointAccumulator accum, MR.AffineXf3f? xf=null)
 Adds in existing PointAccumulator the elements of the contained object Generated from method MR.MeshOrPoints.accumulate.
 
unsafe MR.Std.Optional_MRVertBitSet pointsGridSampling (float voxelSize, ulong? maxVoxels=null, MR.Std.Const_Function_BoolFuncFromFloat? cb=null)
 performs sampling of vertices or points; subdivides bounding box of the object on voxels of approximately given size and returns at most one vertex per voxel; voxelSize is automatically increased to avoid more voxels than
 
unsafe MR.Const_VertCoords points ()
 gives access to points-vector (which can include invalid points as well) Generated from method MR.MeshOrPoints.points.
 
unsafe MR.Const_VertBitSet validPoints ()
 gives access to bit set of valid points Generated from method MR.MeshOrPoints.validPoints.
 
unsafe MR.Std.Function_MRVector3fFuncFromMRVertId normals ()
 returns normals generating function: VertId->normal (or empty for point cloud without normals) Generated from method MR.MeshOrPoints.normals.
 
unsafe MR.Std.Function_FloatFuncFromMRVertId weights ()
 returns weights generating function: VertId->float: for mesh it is double area of surrounding triangles, and for point cloud - nothing Generated from method MR.MeshOrPoints.weights.
 
unsafe MR.Std.Function_MRMeshOrPointsProjectionResultFuncFromConstMRVector3fRef projector ()
 returns a function that finds projection (closest) points on this: Vector3f->ProjectionResult Generated from method MR.MeshOrPoints.projector.
 
unsafe MR.Std.Function_BoolFuncFromConstMRVector3fRefMRMeshOrPointsProjectionResultRef limitedProjector ()
 returns a function that updates previously known projection (closest) points on this, the update takes place only if newly found closest point is closer to p than sqrt(res.distSq) given on input The function returns true if the update has taken place. Generated from method MR.MeshOrPoints.limitedProjector.
 

Static Public Member Functions

static unsafe implicit operator Const_MeshOrPoints (MR.Const_MeshPart mp)
 Generated from constructor MR.MeshOrPoints.MeshOrPoints.
 
static unsafe implicit operator Const_MeshOrPoints (MR.Const_PointCloudPart pcp)
 Generated from constructor MR.MeshOrPoints.MeshOrPoints.
 
static unsafe implicit operator Const_MeshOrPoints (MR.Const_Mesh mesh)
 Generated from constructor MR.MeshOrPoints.MeshOrPoints.
 
static unsafe implicit operator Const_MeshOrPoints (MR.Const_PointCloud pc)
 Generated from constructor MR.MeshOrPoints.MeshOrPoints.
 

Protected Member Functions

virtual unsafe void Dispose (bool disposing)
 

Additional Inherited Members

- Protected Attributes inherited from MR.Misc.Object< Const_MeshOrPoints >
bool _IsOwningVal
 
- Properties inherited from MR.Misc.Object< Const_MeshOrPoints >
virtual bool _IsOwning [get]
 Returns true if this is an owning instance, and when disposed, will destroy the underlying C++ instance. If false, we assume that the underlying C++ instance will live long enough.
 

Detailed Description

This class can hold either mesh part or point cloud. It is used for generic algorithms operating with either of them Generated from class MR.MeshOrPoints. This is the const half of the class.

Member Function Documentation

◆ pointsGridSampling()

unsafe MR.Std.Optional_MRVertBitSet MR.Const_MeshOrPoints.pointsGridSampling ( float voxelSize,
ulong? maxVoxels = null,
MR.Std.Const_Function_BoolFuncFromFloat? cb = null )
inline

performs sampling of vertices or points; subdivides bounding box of the object on voxels of approximately given size and returns at most one vertex per voxel; voxelSize is automatically increased to avoid more voxels than

Parameters
maxVoxels;if voxelSize == 0 then all valid points are returned; returns std.nullopt if it was terminated by the callback Generated from method MR.MeshOrPoints.pointsGridSampling. Parameter maxVoxels defaults to 500000. Parameter cb defaults to {}.

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