Go to the source code of this file.
Typedefs | |
| typedef struct MR_ShrinkwrapParameters | MR_ShrinkwrapParameters |
| typedef struct MR_ShrinkwrapParameters MR_ShrinkwrapParameters |
Generated from class MR::ShrinkwrapParameters. Base classes: Direct: (non-virtual) MR::MeshProjectionParameters 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).
| MRC_API MR_std_optional_MR_VertCoords * MR_findShrinkwrapPositions | ( | const MR_Mesh * | mesh, |
| const MR_Mesh * | refMesh, | ||
| const MR_ShrinkwrapParameters * | params, | ||
| const MR_std_function_bool_from_float * | cb ) |
computes for every vertex of the mesh its closest point on the reference mesh, leaving the vertices having no projection within MeshProjectionParameters::upDistLimitSq in place; the result is expressed in the coordinates of the mesh being projected
| MRC_API bool MR_shrinkwrap | ( | MR_Mesh * | mesh, |
| const MR_Mesh * | refMesh, | ||
| const MR_ShrinkwrapParameters * | params, | ||
| const MR_std_function_bool_from_float * | cb ) |
moves every vertex of the mesh in the closest point on the reference mesh; the vertices having no projection within MeshProjectionParameters::upDistLimitSq remain in place; this function changes vertex coordinates only, keeping mesh topology intact, so the result can self-intersect where refMesh is concave, and a non-zero offset makes it much more likely; consider offsetMesh(...) if a self-intersection free result is required
| MRC_API MR_ShrinkwrapParameters * MR_ShrinkwrapParameters_AssignFromAnother | ( | MR_ShrinkwrapParameters * | _this, |
| const MR_ShrinkwrapParameters * | _other ) |
Generated from method MR::ShrinkwrapParameters::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 held previously.
| MRC_API MR_ShrinkwrapParameters * MR_ShrinkwrapParameters_ConstructFromAnother | ( | const MR_ShrinkwrapParameters * | _other | ) |
Generated from constructor MR::ShrinkwrapParameters::ShrinkwrapParameters. 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_ShrinkwrapParameters_Destroy() to free it when you're done using it.
| MRC_API MR_ShrinkwrapParameters * MR_ShrinkwrapParameters_DefaultConstruct | ( | void | ) |
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_ShrinkwrapParameters_Destroy() to free it when you're done using it.
| MRC_API MR_ShrinkwrapParameters * MR_ShrinkwrapParameters_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_ShrinkwrapParameters_DestroyArray(). Use MR_ShrinkwrapParameters_OffsetMutablePtr() and MR_ShrinkwrapParameters_OffsetPtr() to access the array elements.
| MRC_API void MR_ShrinkwrapParameters_Destroy | ( | const MR_ShrinkwrapParameters * | _this | ) |
Destroys a heap-allocated instance of MR_ShrinkwrapParameters. Does nothing if the pointer is null.
| MRC_API void MR_ShrinkwrapParameters_DestroyArray | ( | const MR_ShrinkwrapParameters * | _this | ) |
Destroys a heap-allocated array of MR_ShrinkwrapParameters. Does nothing if the pointer is null.
| MRC_API const float * MR_ShrinkwrapParameters_Get_loDistLimitSq | ( | const MR_ShrinkwrapParameters * | _this | ) |
minimum squared distance from a test point to mesh to be computed precisely, if a mesh point is found within this distance then it is immediately returned without searching for a closer one Returns a pointer to a member variable of class MR::ShrinkwrapParameters named loDistLimitSq. 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. The reference to this object might be preserved as the return value.
| MRC_API const float * MR_ShrinkwrapParameters_Get_offset | ( | const MR_ShrinkwrapParameters * | _this | ) |
each vertex is displaced by this distance from the closest point found, along the pseudonormal of refMesh there: positive - outside refMesh, negative - inside; measured in refMesh coordinates Returns a pointer to a member variable of class MR::ShrinkwrapParameters named offset. 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. The reference to this object might be preserved as the return value.
| MRC_API MR_IPointsToMeshProjector *const * MR_ShrinkwrapParameters_Get_projector | ( | const MR_ShrinkwrapParameters * | _this | ) |
if provided then the projections are computed by it, otherwise CPU's computations are used Returns a pointer to a member variable of class MR::ShrinkwrapParameters named projector. 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. The reference to this object might be preserved as the return value.
| MRC_API const MR_AffineXf3f *const * MR_ShrinkwrapParameters_Get_refXf | ( | const MR_ShrinkwrapParameters * | _this | ) |
optional reference mesh to world transformation Returns a pointer to a member variable of class MR::ShrinkwrapParameters named refXf. 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. The reference to this object might be preserved as the return value.
| MRC_API const MR_VertBitSet *const * MR_ShrinkwrapParameters_Get_region | ( | const MR_ShrinkwrapParameters * | _this | ) |
if provided then only the vertices from this region are moved, and the others remain in place Returns a pointer to a member variable of class MR::ShrinkwrapParameters named region. 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. The reference to this object might be preserved as the return value.
| MRC_API const float * MR_ShrinkwrapParameters_Get_upDistLimitSq | ( | const MR_ShrinkwrapParameters * | _this | ) |
maximum squared distance from a test point to mesh to be computed precisely, if actual distance is larger than upDistLimit will be returned with not-trusted sign Returns a pointer to a member variable of class MR::ShrinkwrapParameters named upDistLimitSq. 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. The reference to this object might be preserved as the return value.
| MRC_API const MR_AffineXf3f *const * MR_ShrinkwrapParameters_Get_xf | ( | const MR_ShrinkwrapParameters * | _this | ) |
optional test points to world transformation Returns a pointer to a member variable of class MR::ShrinkwrapParameters named xf. 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. The reference to this object might be preserved as the return value.
| MRC_API float * MR_ShrinkwrapParameters_GetMutable_loDistLimitSq | ( | MR_ShrinkwrapParameters * | _this | ) |
minimum squared distance from a test point to mesh to be computed precisely, if a mesh point is found within this distance then it is immediately returned without searching for a closer one Returns a mutable pointer to a member variable of class MR::ShrinkwrapParameters named loDistLimitSq. 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. The reference to this object might be preserved as the return value.
| MRC_API float * MR_ShrinkwrapParameters_GetMutable_offset | ( | MR_ShrinkwrapParameters * | _this | ) |
each vertex is displaced by this distance from the closest point found, along the pseudonormal of refMesh there: positive - outside refMesh, negative - inside; measured in refMesh coordinates Returns a mutable pointer to a member variable of class MR::ShrinkwrapParameters named offset. 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. The reference to this object might be preserved as the return value.
| MRC_API MR_IPointsToMeshProjector ** MR_ShrinkwrapParameters_GetMutable_projector | ( | MR_ShrinkwrapParameters * | _this | ) |
if provided then the projections are computed by it, otherwise CPU's computations are used Returns a mutable pointer to a member variable of class MR::ShrinkwrapParameters named projector. 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. The reference to this object might be preserved as the return value.
| MRC_API const MR_AffineXf3f ** MR_ShrinkwrapParameters_GetMutable_refXf | ( | MR_ShrinkwrapParameters * | _this | ) |
optional reference mesh to world transformation Returns a mutable pointer to a member variable of class MR::ShrinkwrapParameters named refXf. 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. The reference to this object might be preserved as the return value.
| MRC_API const MR_VertBitSet ** MR_ShrinkwrapParameters_GetMutable_region | ( | MR_ShrinkwrapParameters * | _this | ) |
if provided then only the vertices from this region are moved, and the others remain in place Returns a mutable pointer to a member variable of class MR::ShrinkwrapParameters named region. 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. The reference to this object might be preserved as the return value.
| MRC_API float * MR_ShrinkwrapParameters_GetMutable_upDistLimitSq | ( | MR_ShrinkwrapParameters * | _this | ) |
maximum squared distance from a test point to mesh to be computed precisely, if actual distance is larger than upDistLimit will be returned with not-trusted sign Returns a mutable pointer to a member variable of class MR::ShrinkwrapParameters named upDistLimitSq. 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. The reference to this object might be preserved as the return value.
| MRC_API const MR_AffineXf3f ** MR_ShrinkwrapParameters_GetMutable_xf | ( | MR_ShrinkwrapParameters * | _this | ) |
optional test points to world transformation Returns a mutable pointer to a member variable of class MR::ShrinkwrapParameters named xf. 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. The reference to this object might be preserved as the return value.
| MRC_API MR_ShrinkwrapParameters * MR_ShrinkwrapParameters_MutableStaticDowncastFrom_MR_MeshProjectionParameters | ( | MR_MeshProjectionParameters * | object | ) |
Downcasts an instance of MR::MeshProjectionParameters to a derived class MR::ShrinkwrapParameters. This is a static downcast, it trusts the programmer that the target type is correct. Results in UB and returns an invalid pointer otherwise. The reference to the parameter object might be preserved in the return value.
| MRC_API MR_MeshProjectionParameters * MR_ShrinkwrapParameters_MutableUpcastTo_MR_MeshProjectionParameters | ( | MR_ShrinkwrapParameters * | object | ) |
Upcasts an instance of MR::ShrinkwrapParameters to its base class MR::MeshProjectionParameters. The reference to the parameter object might be preserved in the return value.
| MRC_API MR_ShrinkwrapParameters * MR_ShrinkwrapParameters_OffsetMutablePtr | ( | MR_ShrinkwrapParameters * | 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.
| MRC_API const MR_ShrinkwrapParameters * MR_ShrinkwrapParameters_OffsetPtr | ( | const MR_ShrinkwrapParameters * | 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.
| MRC_API void MR_ShrinkwrapParameters_Set_loDistLimitSq | ( | MR_ShrinkwrapParameters * | _this, |
| float | value ) |
minimum squared distance from a test point to mesh to be computed precisely, if a mesh point is found within this distance then it is immediately returned without searching for a closer one Modifies a member variable of class MR::ShrinkwrapParameters named loDistLimitSq. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it held previously in loDistLimitSq.
| MRC_API void MR_ShrinkwrapParameters_Set_offset | ( | MR_ShrinkwrapParameters * | _this, |
| float | value ) |
each vertex is displaced by this distance from the closest point found, along the pseudonormal of refMesh there: positive - outside refMesh, negative - inside; measured in refMesh coordinates Modifies a member variable of class MR::ShrinkwrapParameters named offset. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it held previously in offset.
| MRC_API void MR_ShrinkwrapParameters_Set_projector | ( | MR_ShrinkwrapParameters * | _this, |
| MR_IPointsToMeshProjector * | value ) |
if provided then the projections are computed by it, otherwise CPU's computations are used Modifies a member variable of class MR::ShrinkwrapParameters named projector. 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 projector. When this function is called, this object will drop object references it held previously in projector.
| MRC_API void MR_ShrinkwrapParameters_Set_refXf | ( | MR_ShrinkwrapParameters * | _this, |
| const MR_AffineXf3f * | value ) |
optional reference mesh to world transformation Modifies a member variable of class MR::ShrinkwrapParameters named refXf. 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 refXf. When this function is called, this object will drop object references it held previously in refXf.
| MRC_API void MR_ShrinkwrapParameters_Set_region | ( | MR_ShrinkwrapParameters * | _this, |
| const MR_VertBitSet * | value ) |
if provided then only the vertices from this region are moved, and the others remain in place Modifies a member variable of class MR::ShrinkwrapParameters named region. 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 region. When this function is called, this object will drop object references it held previously in region.
| MRC_API void MR_ShrinkwrapParameters_Set_upDistLimitSq | ( | MR_ShrinkwrapParameters * | _this, |
| float | value ) |
maximum squared distance from a test point to mesh to be computed precisely, if actual distance is larger than upDistLimit will be returned with not-trusted sign Modifies a member variable of class MR::ShrinkwrapParameters named upDistLimitSq. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it held previously in upDistLimitSq.
| MRC_API void MR_ShrinkwrapParameters_Set_xf | ( | MR_ShrinkwrapParameters * | _this, |
| const MR_AffineXf3f * | value ) |
optional test points to world transformation Modifies a member variable of class MR::ShrinkwrapParameters named xf. 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 xf. When this function is called, this object will drop object references it held previously in xf.
| MRC_API const MR_ShrinkwrapParameters * MR_ShrinkwrapParameters_StaticDowncastFrom_MR_MeshProjectionParameters | ( | const MR_MeshProjectionParameters * | object | ) |
Downcasts an instance of MR::MeshProjectionParameters to a derived class MR::ShrinkwrapParameters. This is a static downcast, it trusts the programmer that the target type is correct. Results in UB and returns an invalid pointer otherwise. This version is acting on mutable pointers. The reference to the parameter object might be preserved in the return value.
| MRC_API const MR_MeshProjectionParameters * MR_ShrinkwrapParameters_UpcastTo_MR_MeshProjectionParameters | ( | const MR_ShrinkwrapParameters * | object | ) |
Upcasts an instance of MR::ShrinkwrapParameters to its base class MR::MeshProjectionParameters. This version is acting on mutable pointers. The reference to the parameter object might be preserved in the return value.