MeshLib C Docs
Loading...
Searching...
No Matches
MRAABBTreePoints.h File Reference
#include <MRCMesh/MRBox.h>
#include <MRCMesh/MRId.h>
#include <MRCMesh/MRVector3.h>
#include <MRCMisc/common.h>
#include <MRCMisc/exports.h>
#include <stdbool.h>
#include <stddef.h>

Go to the source code of this file.

Typedefs

typedef struct MR_Mesh MR_Mesh
 
typedef struct MR_PointCloud MR_PointCloud
 
typedef struct MR_Vector_MR_AABBTreePoints_Node_MR_NodeId MR_Vector_MR_AABBTreePoints_Node_MR_NodeId
 
typedef struct MR_VertBMap MR_VertBMap
 
typedef struct MR_VertBitSet MR_VertBitSet
 
typedef struct MR_VertCoords MR_VertCoords
 
typedef struct MR_std_pair_int_int MR_std_pair_int_int
 
typedef struct MR_std_vector_MR_AABBTreePoints_Point MR_std_vector_MR_AABBTreePoints_Point
 
typedef struct MR_AABBTreePoints_Node MR_AABBTreePoints_Node
 
typedef struct MR_AABBTreePoints_Point MR_AABBTreePoints_Point
 
typedef struct MR_AABBTreePoints MR_AABBTreePoints
 

Functions

MRC_API const int * MR_AABBTreePoints_Get_MaxNumPointsInLeaf (void)
 
MRC_API MR_AABBTreePointsMR_AABBTreePoints_ConstructFromAnother (MR_PassBy _other_pass_by, MR_AABBTreePoints *_other)
 
MRC_API const MR_AABBTreePointsMR_AABBTreePoints_OffsetPtr (const MR_AABBTreePoints *ptr, ptrdiff_t i)
 
MRC_API MR_AABBTreePointsMR_AABBTreePoints_OffsetMutablePtr (MR_AABBTreePoints *ptr, ptrdiff_t i)
 
MRC_API MR_AABBTreePointsMR_AABBTreePoints_Construct_1_MR_PointCloud (const MR_PointCloud *pointCloud)
 
MRC_API MR_AABBTreePointsMR_AABBTreePoints_Construct_1_MR_Mesh (const MR_Mesh *mesh)
 
MRC_API MR_AABBTreePointsMR_AABBTreePoints_Construct_2 (const MR_VertCoords *points, const MR_VertBitSet *validPoints)
 
MRC_API void MR_AABBTreePoints_Destroy (const MR_AABBTreePoints *_this)
 Destroys a heap-allocated instance of MR_AABBTreePoints. Does nothing if the pointer is null.
 
MRC_API void MR_AABBTreePoints_DestroyArray (const MR_AABBTreePoints *_this)
 Destroys a heap-allocated array of MR_AABBTreePoints. Does nothing if the pointer is null.
 
MRC_API MR_AABBTreePointsMR_AABBTreePoints_AssignFromAnother (MR_AABBTreePoints *_this, MR_PassBy _other_pass_by, MR_AABBTreePoints *_other)
 
MRC_API const MR_Vector_MR_AABBTreePoints_Node_MR_NodeIdMR_AABBTreePoints_nodes (const MR_AABBTreePoints *_this)
 
MRC_API const MR_AABBTreePoints_NodeMR_AABBTreePoints_index (const MR_AABBTreePoints *_this, MR_NodeId nid)
 
MRC_API MR_NodeId MR_AABBTreePoints_rootNodeId (void)
 Generated from method MR::AABBTreePoints::rootNodeId.
 
MRC_API MR_Box3f MR_AABBTreePoints_getBoundingBox (const MR_AABBTreePoints *_this)
 
MRC_API const MR_std_vector_MR_AABBTreePoints_PointMR_AABBTreePoints_orderedPoints (const MR_AABBTreePoints *_this)
 
MRC_API void MR_AABBTreePoints_getLeafOrder (const MR_AABBTreePoints *_this, MR_VertBMap *vertMap)
 
MRC_API void MR_AABBTreePoints_getLeafOrderAndReset (MR_AABBTreePoints *_this, MR_VertBMap *vertMap)
 
MRC_API MR_uint64_t MR_AABBTreePoints_heapBytes (const MR_AABBTreePoints *_this)
 
MRC_API void MR_AABBTreePoints_refit (MR_AABBTreePoints *_this, const MR_VertCoords *newCoords, const MR_VertBitSet *changedVerts)
 
MRC_API const MR_Box3fMR_AABBTreePoints_Node_Get_box (const MR_AABBTreePoints_Node *_this)
 
MRC_API void MR_AABBTreePoints_Node_Set_box (MR_AABBTreePoints_Node *_this, MR_Box3f value)
 
MRC_API MR_Box3fMR_AABBTreePoints_Node_GetMutable_box (MR_AABBTreePoints_Node *_this)
 
MRC_API const MR_NodeIdMR_AABBTreePoints_Node_Get_l (const MR_AABBTreePoints_Node *_this)
 
MRC_API void MR_AABBTreePoints_Node_Set_l (MR_AABBTreePoints_Node *_this, MR_NodeId value)
 
MRC_API MR_NodeIdMR_AABBTreePoints_Node_GetMutable_l (MR_AABBTreePoints_Node *_this)
 
MRC_API const MR_NodeIdMR_AABBTreePoints_Node_Get_r (const MR_AABBTreePoints_Node *_this)
 
MRC_API void MR_AABBTreePoints_Node_Set_r (MR_AABBTreePoints_Node *_this, MR_NodeId value)
 
MRC_API MR_NodeIdMR_AABBTreePoints_Node_GetMutable_r (MR_AABBTreePoints_Node *_this)
 
MRC_API MR_AABBTreePoints_NodeMR_AABBTreePoints_Node_DefaultConstruct (void)
 
MRC_API MR_AABBTreePoints_NodeMR_AABBTreePoints_Node_DefaultConstructArray (size_t num_elems)
 
MRC_API MR_AABBTreePoints_NodeMR_AABBTreePoints_Node_ConstructFrom (MR_Box3f box, MR_NodeId l, MR_NodeId r)
 
MRC_API const MR_AABBTreePoints_NodeMR_AABBTreePoints_Node_OffsetPtr (const MR_AABBTreePoints_Node *ptr, ptrdiff_t i)
 
MRC_API MR_AABBTreePoints_NodeMR_AABBTreePoints_Node_OffsetMutablePtr (MR_AABBTreePoints_Node *ptr, ptrdiff_t i)
 
MRC_API MR_AABBTreePoints_NodeMR_AABBTreePoints_Node_ConstructFromAnother (const MR_AABBTreePoints_Node *_other)
 
MRC_API void MR_AABBTreePoints_Node_Destroy (const MR_AABBTreePoints_Node *_this)
 Destroys a heap-allocated instance of MR_AABBTreePoints_Node. Does nothing if the pointer is null.
 
MRC_API void MR_AABBTreePoints_Node_DestroyArray (const MR_AABBTreePoints_Node *_this)
 Destroys a heap-allocated array of MR_AABBTreePoints_Node. Does nothing if the pointer is null.
 
MRC_API MR_AABBTreePoints_NodeMR_AABBTreePoints_Node_AssignFromAnother (MR_AABBTreePoints_Node *_this, const MR_AABBTreePoints_Node *_other)
 
MRC_API bool MR_AABBTreePoints_Node_leaf (const MR_AABBTreePoints_Node *_this)
 
MRC_API MR_std_pair_int_intMR_AABBTreePoints_Node_getLeafPointRange (const MR_AABBTreePoints_Node *_this)
 
MRC_API void MR_AABBTreePoints_Node_setLeafPointRange (MR_AABBTreePoints_Node *_this, int first, int last)
 
MRC_API const MR_Vector3fMR_AABBTreePoints_Point_Get_coord (const MR_AABBTreePoints_Point *_this)
 
MRC_API void MR_AABBTreePoints_Point_Set_coord (MR_AABBTreePoints_Point *_this, MR_Vector3f value)
 
MRC_API MR_Vector3fMR_AABBTreePoints_Point_GetMutable_coord (MR_AABBTreePoints_Point *_this)
 
MRC_API const MR_VertIdMR_AABBTreePoints_Point_Get_id (const MR_AABBTreePoints_Point *_this)
 
MRC_API void MR_AABBTreePoints_Point_Set_id (MR_AABBTreePoints_Point *_this, MR_VertId value)
 
MRC_API MR_VertIdMR_AABBTreePoints_Point_GetMutable_id (MR_AABBTreePoints_Point *_this)
 
MRC_API MR_AABBTreePoints_PointMR_AABBTreePoints_Point_DefaultConstruct (void)
 
MRC_API MR_AABBTreePoints_PointMR_AABBTreePoints_Point_DefaultConstructArray (size_t num_elems)
 
MRC_API MR_AABBTreePoints_PointMR_AABBTreePoints_Point_ConstructFrom (MR_Vector3f coord, MR_VertId id)
 
MRC_API const MR_AABBTreePoints_PointMR_AABBTreePoints_Point_OffsetPtr (const MR_AABBTreePoints_Point *ptr, ptrdiff_t i)
 
MRC_API MR_AABBTreePoints_PointMR_AABBTreePoints_Point_OffsetMutablePtr (MR_AABBTreePoints_Point *ptr, ptrdiff_t i)
 
MRC_API MR_AABBTreePoints_PointMR_AABBTreePoints_Point_ConstructFromAnother (const MR_AABBTreePoints_Point *_other)
 
MRC_API void MR_AABBTreePoints_Point_Destroy (const MR_AABBTreePoints_Point *_this)
 Destroys a heap-allocated instance of MR_AABBTreePoints_Point. Does nothing if the pointer is null.
 
MRC_API void MR_AABBTreePoints_Point_DestroyArray (const MR_AABBTreePoints_Point *_this)
 Destroys a heap-allocated array of MR_AABBTreePoints_Point. Does nothing if the pointer is null.
 
MRC_API MR_AABBTreePoints_PointMR_AABBTreePoints_Point_AssignFromAnother (MR_AABBTreePoints_Point *_this, const MR_AABBTreePoints_Point *_other)
 
MRC_API int MR_getNumNodesPoints (int numPoints)
 Generated from function MR::getNumNodesPoints.
 

Typedef Documentation

◆ MR_AABBTreePoints

bounding volume hierarchy for point cloud structure Generated from class MR::AABBTreePoints. Supported MR_PassBy modes: MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).

◆ MR_AABBTreePoints_Node

Generated from class MR::AABBTreePoints::Node. Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).

◆ MR_AABBTreePoints_Point

Generated from class MR::AABBTreePoints::Point. Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).

◆ MR_Mesh

typedef struct MR_Mesh MR_Mesh

◆ MR_PointCloud

typedef struct MR_PointCloud MR_PointCloud

◆ MR_std_pair_int_int

◆ MR_std_vector_MR_AABBTreePoints_Point

◆ MR_Vector_MR_AABBTreePoints_Node_MR_NodeId

◆ MR_VertBitSet

typedef struct MR_VertBitSet MR_VertBitSet

◆ MR_VertBMap

typedef struct MR_VertBMap MR_VertBMap

◆ MR_VertCoords

typedef struct MR_VertCoords MR_VertCoords

Function Documentation

◆ MR_AABBTreePoints_AssignFromAnother()

MRC_API MR_AABBTreePoints * MR_AABBTreePoints_AssignFromAnother ( MR_AABBTreePoints * _this,
MR_PassBy _other_pass_by,
MR_AABBTreePoints * _other )

Generated from method MR::AABBTreePoints::operator=. Parameter _this can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.

◆ MR_AABBTreePoints_Construct_1_MR_Mesh()

MRC_API MR_AABBTreePoints * MR_AABBTreePoints_Construct_1_MR_Mesh ( const MR_Mesh * mesh)

creates tree for vertices of given mesh Generated from constructor MR::AABBTreePoints::AABBTreePoints. Parameter mesh can not be null. It is a single object. The reference to the parameter mesh might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_AABBTreePoints_Destroy() to free it when you're done using it.

◆ MR_AABBTreePoints_Construct_1_MR_PointCloud()

MRC_API MR_AABBTreePoints * MR_AABBTreePoints_Construct_1_MR_PointCloud ( const MR_PointCloud * pointCloud)

creates tree for given point cloud Generated from constructor MR::AABBTreePoints::AABBTreePoints. Parameter pointCloud can not be null. It is a single object. The reference to the parameter pointCloud might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_AABBTreePoints_Destroy() to free it when you're done using it.

◆ MR_AABBTreePoints_Construct_2()

MRC_API MR_AABBTreePoints * MR_AABBTreePoints_Construct_2 ( const MR_VertCoords * points,
const MR_VertBitSet * validPoints )

creates tree from given valid points Generated from constructor MR::AABBTreePoints::AABBTreePoints. Parameter points can not be null. It is a single object. The reference to the parameter points might be preserved in the constructed object. Parameter validPoints defaults to a null pointer in C++. The reference to the parameter validPoints might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_AABBTreePoints_Destroy() to free it when you're done using it.

◆ MR_AABBTreePoints_ConstructFromAnother()

MRC_API MR_AABBTreePoints * MR_AABBTreePoints_ConstructFromAnother ( MR_PassBy _other_pass_by,
MR_AABBTreePoints * _other )

Generated from constructor MR::AABBTreePoints::AABBTreePoints. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_AABBTreePoints_Destroy() to free it when you're done using it.

◆ MR_AABBTreePoints_Destroy()

MRC_API void MR_AABBTreePoints_Destroy ( const MR_AABBTreePoints * _this)

Destroys a heap-allocated instance of MR_AABBTreePoints. Does nothing if the pointer is null.

◆ MR_AABBTreePoints_DestroyArray()

MRC_API void MR_AABBTreePoints_DestroyArray ( const MR_AABBTreePoints * _this)

Destroys a heap-allocated array of MR_AABBTreePoints. Does nothing if the pointer is null.

◆ MR_AABBTreePoints_Get_MaxNumPointsInLeaf()

MRC_API const int * MR_AABBTreePoints_Get_MaxNumPointsInLeaf ( void )

maximum number of points in leaf node of tree (all of leafs should have this number of points except last one) Returns a pointer to a member variable of class MR::AABBTreePoints named MaxNumPointsInLeaf. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_AABBTreePoints_getBoundingBox()

MRC_API MR_Box3f MR_AABBTreePoints_getBoundingBox ( const MR_AABBTreePoints * _this)

returns the root node bounding box Generated from method MR::AABBTreePoints::getBoundingBox. Parameter _this can not be null. It is a single object.

◆ MR_AABBTreePoints_getLeafOrder()

MRC_API void MR_AABBTreePoints_getLeafOrder ( const MR_AABBTreePoints * _this,
MR_VertBMap * vertMap )

returns the mapping original VertId to new id following the points order in the tree; buffer in vertMap must be resized before the call, and caller is responsible for filling missing vertex elements Generated from method MR::AABBTreePoints::getLeafOrder. Parameter _this can not be null. It is a single object. Parameter vertMap can not be null. It is a single object.

◆ MR_AABBTreePoints_getLeafOrderAndReset()

MRC_API void MR_AABBTreePoints_getLeafOrderAndReset ( MR_AABBTreePoints * _this,
MR_VertBMap * vertMap )

returns the mapping original VertId to new id following the points order in the tree; then resets leaf order as if the points were renumberd following the mapping; buffer in vertMap must be resized before the call, and caller is responsible for filling missing vertex elements Generated from method MR::AABBTreePoints::getLeafOrderAndReset. Parameter _this can not be null. It is a single object. Parameter vertMap can not be null. It is a single object.

◆ MR_AABBTreePoints_heapBytes()

MRC_API MR_uint64_t MR_AABBTreePoints_heapBytes ( const MR_AABBTreePoints * _this)

returns the amount of memory this object occupies on heap Generated from method MR::AABBTreePoints::heapBytes. Parameter _this can not be null. It is a single object.

◆ MR_AABBTreePoints_index()

MRC_API const MR_AABBTreePoints_Node * MR_AABBTreePoints_index ( const MR_AABBTreePoints * _this,
MR_NodeId nid )

Generated from method MR::AABBTreePoints::operator[]. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_AABBTreePoints_Node_AssignFromAnother()

MRC_API MR_AABBTreePoints_Node * MR_AABBTreePoints_Node_AssignFromAnother ( MR_AABBTreePoints_Node * _this,
const MR_AABBTreePoints_Node * _other )

Generated from method MR::AABBTreePoints::Node::operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.

◆ MR_AABBTreePoints_Node_ConstructFrom()

MRC_API MR_AABBTreePoints_Node * MR_AABBTreePoints_Node_ConstructFrom ( MR_Box3f box,
MR_NodeId l,
MR_NodeId r )

Constructs MR::AABBTreePoints::Node elementwise. The reference to the parameter box might be preserved in the constructed object. The reference to the parameter l might be preserved in the constructed object. The reference to the parameter r might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_AABBTreePoints_Node_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it had previously.

◆ MR_AABBTreePoints_Node_ConstructFromAnother()

MRC_API MR_AABBTreePoints_Node * MR_AABBTreePoints_Node_ConstructFromAnother ( const MR_AABBTreePoints_Node * _other)

Generated from constructor MR::AABBTreePoints::Node::Node. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_AABBTreePoints_Node_Destroy() to free it when you're done using it.

◆ MR_AABBTreePoints_Node_DefaultConstruct()

MRC_API MR_AABBTreePoints_Node * MR_AABBTreePoints_Node_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_AABBTreePoints_Node_Destroy() to free it when you're done using it.

◆ MR_AABBTreePoints_Node_DefaultConstructArray()

MRC_API MR_AABBTreePoints_Node * MR_AABBTreePoints_Node_DefaultConstructArray ( size_t num_elems)

Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_AABBTreePoints_Node_DestroyArray(). Use MR_AABBTreePoints_Node_OffsetMutablePtr() and MR_AABBTreePoints_Node_OffsetPtr() to access the array elements.

◆ MR_AABBTreePoints_Node_Destroy()

MRC_API void MR_AABBTreePoints_Node_Destroy ( const MR_AABBTreePoints_Node * _this)

Destroys a heap-allocated instance of MR_AABBTreePoints_Node. Does nothing if the pointer is null.

◆ MR_AABBTreePoints_Node_DestroyArray()

MRC_API void MR_AABBTreePoints_Node_DestroyArray ( const MR_AABBTreePoints_Node * _this)

Destroys a heap-allocated array of MR_AABBTreePoints_Node. Does nothing if the pointer is null.

◆ MR_AABBTreePoints_Node_Get_box()

MRC_API const MR_Box3f * MR_AABBTreePoints_Node_Get_box ( const MR_AABBTreePoints_Node * _this)

bounding box of whole subtree Modifies a member variable of class MR::AABBTreePoints::Node named box. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element box. When this function is called, this object will drop object references it had previously in box.

◆ MR_AABBTreePoints_Node_Get_l()

MRC_API const MR_NodeId * MR_AABBTreePoints_Node_Get_l ( const MR_AABBTreePoints_Node * _this)

left child node for an inner node, or -(l+1) is the index of the first point in a leaf node Modifies a member variable of class MR::AABBTreePoints::Node named l. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element l. When this function is called, this object will drop object references it had previously in l.

◆ MR_AABBTreePoints_Node_Get_r()

MRC_API const MR_NodeId * MR_AABBTreePoints_Node_Get_r ( const MR_AABBTreePoints_Node * _this)

right child node for an inner node, or -(r+1) is the index of the last point in a leaf node Modifies a member variable of class MR::AABBTreePoints::Node named r. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element r. When this function is called, this object will drop object references it had previously in r.

◆ MR_AABBTreePoints_Node_getLeafPointRange()

MRC_API MR_std_pair_int_int * MR_AABBTreePoints_Node_getLeafPointRange ( const MR_AABBTreePoints_Node * _this)

returns [first,last) indices of leaf points Generated from method MR::AABBTreePoints::Node::getLeafPointRange. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_pair_int_int_Destroy() to free it when you're done using it.

◆ MR_AABBTreePoints_Node_GetMutable_box()

MRC_API MR_Box3f * MR_AABBTreePoints_Node_GetMutable_box ( MR_AABBTreePoints_Node * _this)

left child node for an inner node, or -(l+1) is the index of the first point in a leaf node Returns a pointer to a member variable of class MR::AABBTreePoints::Node named l. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_AABBTreePoints_Node_GetMutable_l()

MRC_API MR_NodeId * MR_AABBTreePoints_Node_GetMutable_l ( MR_AABBTreePoints_Node * _this)

right child node for an inner node, or -(r+1) is the index of the last point in a leaf node Returns a pointer to a member variable of class MR::AABBTreePoints::Node named r. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_AABBTreePoints_Node_GetMutable_r()

MRC_API MR_NodeId * MR_AABBTreePoints_Node_GetMutable_r ( MR_AABBTreePoints_Node * _this)

◆ MR_AABBTreePoints_Node_leaf()

MRC_API bool MR_AABBTreePoints_Node_leaf ( const MR_AABBTreePoints_Node * _this)

returns true if node represent real points, false if it has child nodes Generated from method MR::AABBTreePoints::Node::leaf. Parameter _this can not be null. It is a single object.

◆ MR_AABBTreePoints_Node_OffsetMutablePtr()

MRC_API MR_AABBTreePoints_Node * MR_AABBTreePoints_Node_OffsetMutablePtr ( MR_AABBTreePoints_Node * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_AABBTreePoints_Node_OffsetPtr()

MRC_API const MR_AABBTreePoints_Node * MR_AABBTreePoints_Node_OffsetPtr ( const MR_AABBTreePoints_Node * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_AABBTreePoints_Node_Set_box()

MRC_API void MR_AABBTreePoints_Node_Set_box ( MR_AABBTreePoints_Node * _this,
MR_Box3f value )

bounding box of whole subtree Returns a mutable pointer to a member variable of class MR::AABBTreePoints::Node named box. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_AABBTreePoints_Node_Set_l()

MRC_API void MR_AABBTreePoints_Node_Set_l ( MR_AABBTreePoints_Node * _this,
MR_NodeId value )

left child node for an inner node, or -(l+1) is the index of the first point in a leaf node Returns a mutable pointer to a member variable of class MR::AABBTreePoints::Node named l. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_AABBTreePoints_Node_Set_r()

MRC_API void MR_AABBTreePoints_Node_Set_r ( MR_AABBTreePoints_Node * _this,
MR_NodeId value )

right child node for an inner node, or -(r+1) is the index of the last point in a leaf node Returns a mutable pointer to a member variable of class MR::AABBTreePoints::Node named r. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_AABBTreePoints_Node_setLeafPointRange()

MRC_API void MR_AABBTreePoints_Node_setLeafPointRange ( MR_AABBTreePoints_Node * _this,
int first,
int last )

sets [first,last) to this node (leaf) Generated from method MR::AABBTreePoints::Node::setLeafPointRange. Parameter _this can not be null. It is a single object.

◆ MR_AABBTreePoints_nodes()

MRC_API const MR_Vector_MR_AABBTreePoints_Node_MR_NodeId * MR_AABBTreePoints_nodes ( const MR_AABBTreePoints * _this)

Generated from method MR::AABBTreePoints::nodes. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_AABBTreePoints_OffsetMutablePtr()

MRC_API MR_AABBTreePoints * MR_AABBTreePoints_OffsetMutablePtr ( MR_AABBTreePoints * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_AABBTreePoints_OffsetPtr()

MRC_API const MR_AABBTreePoints * MR_AABBTreePoints_OffsetPtr ( const MR_AABBTreePoints * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_AABBTreePoints_orderedPoints()

MRC_API const MR_std_vector_MR_AABBTreePoints_Point * MR_AABBTreePoints_orderedPoints ( const MR_AABBTreePoints * _this)

Generated from method MR::AABBTreePoints::orderedPoints. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_AABBTreePoints_Point_AssignFromAnother()

MRC_API MR_AABBTreePoints_Point * MR_AABBTreePoints_Point_AssignFromAnother ( MR_AABBTreePoints_Point * _this,
const MR_AABBTreePoints_Point * _other )

Generated from method MR::AABBTreePoints::Point::operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.

◆ MR_AABBTreePoints_Point_ConstructFrom()

MRC_API MR_AABBTreePoints_Point * MR_AABBTreePoints_Point_ConstructFrom ( MR_Vector3f coord,
MR_VertId id )

Constructs MR::AABBTreePoints::Point elementwise. The reference to the parameter coord might be preserved in the constructed object. The reference to the parameter id might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_AABBTreePoints_Point_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it had previously.

◆ MR_AABBTreePoints_Point_ConstructFromAnother()

MRC_API MR_AABBTreePoints_Point * MR_AABBTreePoints_Point_ConstructFromAnother ( const MR_AABBTreePoints_Point * _other)

Generated from constructor MR::AABBTreePoints::Point::Point. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_AABBTreePoints_Point_Destroy() to free it when you're done using it.

◆ MR_AABBTreePoints_Point_DefaultConstruct()

MRC_API MR_AABBTreePoints_Point * MR_AABBTreePoints_Point_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_AABBTreePoints_Point_Destroy() to free it when you're done using it.

◆ MR_AABBTreePoints_Point_DefaultConstructArray()

MRC_API MR_AABBTreePoints_Point * MR_AABBTreePoints_Point_DefaultConstructArray ( size_t num_elems)

Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_AABBTreePoints_Point_DestroyArray(). Use MR_AABBTreePoints_Point_OffsetMutablePtr() and MR_AABBTreePoints_Point_OffsetPtr() to access the array elements.

◆ MR_AABBTreePoints_Point_Destroy()

MRC_API void MR_AABBTreePoints_Point_Destroy ( const MR_AABBTreePoints_Point * _this)

Destroys a heap-allocated instance of MR_AABBTreePoints_Point. Does nothing if the pointer is null.

◆ MR_AABBTreePoints_Point_DestroyArray()

MRC_API void MR_AABBTreePoints_Point_DestroyArray ( const MR_AABBTreePoints_Point * _this)

Destroys a heap-allocated array of MR_AABBTreePoints_Point. Does nothing if the pointer is null.

◆ MR_AABBTreePoints_Point_Get_coord()

MRC_API const MR_Vector3f * MR_AABBTreePoints_Point_Get_coord ( const MR_AABBTreePoints_Point * _this)

Returns a pointer to a member variable of class MR::AABBTreePoints::Point named coord. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_AABBTreePoints_Point_Get_id()

MRC_API const MR_VertId * MR_AABBTreePoints_Point_Get_id ( const MR_AABBTreePoints_Point * _this)

Returns a pointer to a member variable of class MR::AABBTreePoints::Point named id. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_AABBTreePoints_Point_GetMutable_coord()

MRC_API MR_Vector3f * MR_AABBTreePoints_Point_GetMutable_coord ( MR_AABBTreePoints_Point * _this)

Returns a mutable pointer to a member variable of class MR::AABBTreePoints::Point named coord. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_AABBTreePoints_Point_GetMutable_id()

MRC_API MR_VertId * MR_AABBTreePoints_Point_GetMutable_id ( MR_AABBTreePoints_Point * _this)

Returns a mutable pointer to a member variable of class MR::AABBTreePoints::Point named id. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_AABBTreePoints_Point_OffsetMutablePtr()

MRC_API MR_AABBTreePoints_Point * MR_AABBTreePoints_Point_OffsetMutablePtr ( MR_AABBTreePoints_Point * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_AABBTreePoints_Point_OffsetPtr()

MRC_API const MR_AABBTreePoints_Point * MR_AABBTreePoints_Point_OffsetPtr ( const MR_AABBTreePoints_Point * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_AABBTreePoints_Point_Set_coord()

MRC_API void MR_AABBTreePoints_Point_Set_coord ( MR_AABBTreePoints_Point * _this,
MR_Vector3f value )

Modifies a member variable of class MR::AABBTreePoints::Point named coord. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element coord. When this function is called, this object will drop object references it had previously in coord.

◆ MR_AABBTreePoints_Point_Set_id()

MRC_API void MR_AABBTreePoints_Point_Set_id ( MR_AABBTreePoints_Point * _this,
MR_VertId value )

Modifies a member variable of class MR::AABBTreePoints::Point named id. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element id. When this function is called, this object will drop object references it had previously in id.

◆ MR_AABBTreePoints_refit()

MRC_API void MR_AABBTreePoints_refit ( MR_AABBTreePoints * _this,
const MR_VertCoords * newCoords,
const MR_VertBitSet * changedVerts )

updates bounding boxes of the nodes containing changed vertices; this is a faster alternative to full tree rebuild (but the tree after refit might be less efficient)

Parameters
newCoordscoordinates of all vertices including changed ones;
changedVertsvertex ids with modified coordinates (since tree construction or last refit) Generated from method MR::AABBTreePoints::refit. Parameter _this can not be null. It is a single object. Parameter newCoords can not be null. It is a single object. Parameter changedVerts can not be null. It is a single object. bounding box of whole subtree Returns a pointer to a member variable of class MR::AABBTreePoints::Node named box. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_AABBTreePoints_rootNodeId()

MRC_API MR_NodeId MR_AABBTreePoints_rootNodeId ( void )

Generated from method MR::AABBTreePoints::rootNodeId.

◆ MR_getNumNodesPoints()

MRC_API int MR_getNumNodesPoints ( int numPoints)

Generated from function MR::getNumNodesPoints.