MeshLib C Docs
Loading...
Searching...
No Matches
MRRigidXf3.h File Reference
#include <MRCMesh/MRAffineXf.h>
#include <MRCMesh/MRVector3.h>
#include <MRCMisc/exports.h>
#include <stddef.h>

Go to the source code of this file.

Typedefs

typedef struct MR_RigidXf3f MR_RigidXf3f
 
typedef struct MR_RigidXf3d MR_RigidXf3d
 

Functions

MRC_API const MR_Vector3fMR_RigidXf3f_Get_a (const MR_RigidXf3f *_this)
 
MRC_API void MR_RigidXf3f_Set_a (MR_RigidXf3f *_this, MR_Vector3f value)
 
MRC_API MR_Vector3fMR_RigidXf3f_GetMutable_a (MR_RigidXf3f *_this)
 
MRC_API const MR_Vector3fMR_RigidXf3f_Get_b (const MR_RigidXf3f *_this)
 
MRC_API void MR_RigidXf3f_Set_b (MR_RigidXf3f *_this, MR_Vector3f value)
 
MRC_API MR_Vector3fMR_RigidXf3f_GetMutable_b (MR_RigidXf3f *_this)
 
MRC_API MR_RigidXf3fMR_RigidXf3f_DefaultConstruct (void)
 
MRC_API MR_RigidXf3fMR_RigidXf3f_DefaultConstructArray (size_t num_elems)
 
MRC_API const MR_RigidXf3fMR_RigidXf3f_OffsetPtr (const MR_RigidXf3f *ptr, ptrdiff_t i)
 
MRC_API MR_RigidXf3fMR_RigidXf3f_OffsetMutablePtr (MR_RigidXf3f *ptr, ptrdiff_t i)
 
MRC_API MR_RigidXf3fMR_RigidXf3f_ConstructFromAnother (const MR_RigidXf3f *_other)
 
MRC_API MR_RigidXf3fMR_RigidXf3f_Construct (const MR_Vector3f *a, const MR_Vector3f *b)
 
MRC_API void MR_RigidXf3f_Destroy (const MR_RigidXf3f *_this)
 Destroys a heap-allocated instance of MR_RigidXf3f. Does nothing if the pointer is null.
 
MRC_API void MR_RigidXf3f_DestroyArray (const MR_RigidXf3f *_this)
 Destroys a heap-allocated array of MR_RigidXf3f. Does nothing if the pointer is null.
 
MRC_API MR_RigidXf3fMR_RigidXf3f_AssignFromAnother (MR_RigidXf3f *_this, const MR_RigidXf3f *_other)
 
MRC_API MR_AffineXf3f MR_RigidXf3f_rigidXf (const MR_RigidXf3f *_this)
 
MRC_API MR_AffineXf3f MR_RigidXf3f_linearXf (const MR_RigidXf3f *_this)
 
MRC_API const MR_Vector3dMR_RigidXf3d_Get_a (const MR_RigidXf3d *_this)
 
MRC_API void MR_RigidXf3d_Set_a (MR_RigidXf3d *_this, MR_Vector3d value)
 
MRC_API MR_Vector3dMR_RigidXf3d_GetMutable_a (MR_RigidXf3d *_this)
 
MRC_API const MR_Vector3dMR_RigidXf3d_Get_b (const MR_RigidXf3d *_this)
 
MRC_API void MR_RigidXf3d_Set_b (MR_RigidXf3d *_this, MR_Vector3d value)
 
MRC_API MR_Vector3dMR_RigidXf3d_GetMutable_b (MR_RigidXf3d *_this)
 
MRC_API MR_RigidXf3dMR_RigidXf3d_DefaultConstruct (void)
 
MRC_API MR_RigidXf3dMR_RigidXf3d_DefaultConstructArray (size_t num_elems)
 
MRC_API const MR_RigidXf3dMR_RigidXf3d_OffsetPtr (const MR_RigidXf3d *ptr, ptrdiff_t i)
 
MRC_API MR_RigidXf3dMR_RigidXf3d_OffsetMutablePtr (MR_RigidXf3d *ptr, ptrdiff_t i)
 
MRC_API MR_RigidXf3dMR_RigidXf3d_ConstructFromAnother (const MR_RigidXf3d *_other)
 
MRC_API MR_RigidXf3dMR_RigidXf3d_Construct (const MR_Vector3d *a, const MR_Vector3d *b)
 
MRC_API void MR_RigidXf3d_Destroy (const MR_RigidXf3d *_this)
 Destroys a heap-allocated instance of MR_RigidXf3d. Does nothing if the pointer is null.
 
MRC_API void MR_RigidXf3d_DestroyArray (const MR_RigidXf3d *_this)
 Destroys a heap-allocated array of MR_RigidXf3d. Does nothing if the pointer is null.
 
MRC_API MR_RigidXf3dMR_RigidXf3d_AssignFromAnother (MR_RigidXf3d *_this, const MR_RigidXf3d *_other)
 
MRC_API MR_AffineXf3d MR_RigidXf3d_rigidXf (const MR_RigidXf3d *_this)
 
MRC_API MR_AffineXf3d MR_RigidXf3d_linearXf (const MR_RigidXf3d *_this)
 

Typedef Documentation

◆ MR_RigidXf3d

typedef struct MR_RigidXf3d MR_RigidXf3d

rigid transformation preserving all distances: y = A*x + b, where A is rotation matrix 3x3 stored as 3 angles, and b is shift vector Generated from class MR::RigidXf3d. 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). rotation angles relative to x,y,z axes Returns a pointer to a member variable of class MR::RigidXf3f named a. 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_RigidXf3f

typedef struct MR_RigidXf3f MR_RigidXf3f

rigid transformation preserving all distances: y = A*x + b, where A is rotation matrix 3x3 stored as 3 angles, and b is shift vector Generated from class MR::RigidXf3f. 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).

Function Documentation

◆ MR_RigidXf3d_AssignFromAnother()

MRC_API MR_RigidXf3d * MR_RigidXf3d_AssignFromAnother ( MR_RigidXf3d * _this,
const MR_RigidXf3d * _other )

Generated from method MR::RigidXf3d::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_RigidXf3d_Construct()

MRC_API MR_RigidXf3d * MR_RigidXf3d_Construct ( const MR_Vector3d * a,
const MR_Vector3d * b )

Generated from constructor MR::RigidXf3d::RigidXf3d. Parameter a can not be null. It is a single object. The reference to the parameter a might be preserved in the constructed object. Parameter b can not be null. It is a single object. The reference to the parameter b might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_RigidXf3d_Destroy() to free it when you're done using it.

◆ MR_RigidXf3d_ConstructFromAnother()

MRC_API MR_RigidXf3d * MR_RigidXf3d_ConstructFromAnother ( const MR_RigidXf3d * _other)

Generated from constructor MR::RigidXf3d::RigidXf3d. 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_RigidXf3d_Destroy() to free it when you're done using it.

◆ MR_RigidXf3d_DefaultConstruct()

MRC_API MR_RigidXf3d * MR_RigidXf3d_DefaultConstruct ( void )

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

◆ MR_RigidXf3d_DefaultConstructArray()

MRC_API MR_RigidXf3d * MR_RigidXf3d_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_RigidXf3d_DestroyArray(). Use MR_RigidXf3d_OffsetMutablePtr() and MR_RigidXf3d_OffsetPtr() to access the array elements.

◆ MR_RigidXf3d_Destroy()

MRC_API void MR_RigidXf3d_Destroy ( const MR_RigidXf3d * _this)

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

◆ MR_RigidXf3d_DestroyArray()

MRC_API void MR_RigidXf3d_DestroyArray ( const MR_RigidXf3d * _this)

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

◆ MR_RigidXf3d_Get_a()

MRC_API const MR_Vector3d * MR_RigidXf3d_Get_a ( const MR_RigidXf3d * _this)

rotation angles relative to x,y,z axes Modifies a member variable of class MR::RigidXf3d named a. 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 a. When this function is called, this object will drop object references it had previously in a.

◆ MR_RigidXf3d_Get_b()

MRC_API const MR_Vector3d * MR_RigidXf3d_Get_b ( const MR_RigidXf3d * _this)

shift Modifies a member variable of class MR::RigidXf3d named b. 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 b. When this function is called, this object will drop object references it had previously in b.

◆ MR_RigidXf3d_GetMutable_a()

MRC_API MR_Vector3d * MR_RigidXf3d_GetMutable_a ( MR_RigidXf3d * _this)

shift Returns a pointer to a member variable of class MR::RigidXf3d named b. 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_RigidXf3d_GetMutable_b()

MRC_API MR_Vector3d * MR_RigidXf3d_GetMutable_b ( MR_RigidXf3d * _this)

◆ MR_RigidXf3d_linearXf()

MRC_API MR_AffineXf3d MR_RigidXf3d_linearXf ( const MR_RigidXf3d * _this)

converts this into not-rigid transformation but with matrix, which linearly depends on angles Generated from method MR::RigidXf3d::linearXf. Parameter _this can not be null. It is a single object.

◆ MR_RigidXf3d_OffsetMutablePtr()

MRC_API MR_RigidXf3d * MR_RigidXf3d_OffsetMutablePtr ( MR_RigidXf3d * 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_RigidXf3d_OffsetPtr()

MRC_API const MR_RigidXf3d * MR_RigidXf3d_OffsetPtr ( const MR_RigidXf3d * 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_RigidXf3d_rigidXf()

MRC_API MR_AffineXf3d MR_RigidXf3d_rigidXf ( const MR_RigidXf3d * _this)

converts this into rigid transformation, which non-linearly depends on angles Generated from method MR::RigidXf3d::rigidXf. Parameter _this can not be null. It is a single object.

◆ MR_RigidXf3d_Set_a()

MRC_API void MR_RigidXf3d_Set_a ( MR_RigidXf3d * _this,
MR_Vector3d value )

rotation angles relative to x,y,z axes Returns a mutable pointer to a member variable of class MR::RigidXf3d named a. 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_RigidXf3d_Set_b()

MRC_API void MR_RigidXf3d_Set_b ( MR_RigidXf3d * _this,
MR_Vector3d value )

shift Returns a mutable pointer to a member variable of class MR::RigidXf3d named b. 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_RigidXf3f_AssignFromAnother()

MRC_API MR_RigidXf3f * MR_RigidXf3f_AssignFromAnother ( MR_RigidXf3f * _this,
const MR_RigidXf3f * _other )

Generated from method MR::RigidXf3f::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_RigidXf3f_Construct()

MRC_API MR_RigidXf3f * MR_RigidXf3f_Construct ( const MR_Vector3f * a,
const MR_Vector3f * b )

Generated from constructor MR::RigidXf3f::RigidXf3f. Parameter a can not be null. It is a single object. The reference to the parameter a might be preserved in the constructed object. Parameter b can not be null. It is a single object. The reference to the parameter b might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_RigidXf3f_Destroy() to free it when you're done using it.

◆ MR_RigidXf3f_ConstructFromAnother()

MRC_API MR_RigidXf3f * MR_RigidXf3f_ConstructFromAnother ( const MR_RigidXf3f * _other)

Generated from constructor MR::RigidXf3f::RigidXf3f. 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_RigidXf3f_Destroy() to free it when you're done using it.

◆ MR_RigidXf3f_DefaultConstruct()

MRC_API MR_RigidXf3f * MR_RigidXf3f_DefaultConstruct ( void )

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

◆ MR_RigidXf3f_DefaultConstructArray()

MRC_API MR_RigidXf3f * MR_RigidXf3f_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_RigidXf3f_DestroyArray(). Use MR_RigidXf3f_OffsetMutablePtr() and MR_RigidXf3f_OffsetPtr() to access the array elements.

◆ MR_RigidXf3f_Destroy()

MRC_API void MR_RigidXf3f_Destroy ( const MR_RigidXf3f * _this)

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

◆ MR_RigidXf3f_DestroyArray()

MRC_API void MR_RigidXf3f_DestroyArray ( const MR_RigidXf3f * _this)

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

◆ MR_RigidXf3f_Get_a()

MRC_API const MR_Vector3f * MR_RigidXf3f_Get_a ( const MR_RigidXf3f * _this)

rotation angles relative to x,y,z axes Modifies a member variable of class MR::RigidXf3f named a. 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 a. When this function is called, this object will drop object references it had previously in a.

◆ MR_RigidXf3f_Get_b()

MRC_API const MR_Vector3f * MR_RigidXf3f_Get_b ( const MR_RigidXf3f * _this)

shift Modifies a member variable of class MR::RigidXf3f named b. 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 b. When this function is called, this object will drop object references it had previously in b.

◆ MR_RigidXf3f_GetMutable_a()

MRC_API MR_Vector3f * MR_RigidXf3f_GetMutable_a ( MR_RigidXf3f * _this)

shift Returns a pointer to a member variable of class MR::RigidXf3f named b. 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_RigidXf3f_GetMutable_b()

MRC_API MR_Vector3f * MR_RigidXf3f_GetMutable_b ( MR_RigidXf3f * _this)

◆ MR_RigidXf3f_linearXf()

MRC_API MR_AffineXf3f MR_RigidXf3f_linearXf ( const MR_RigidXf3f * _this)

converts this into not-rigid transformation but with matrix, which linearly depends on angles Generated from method MR::RigidXf3f::linearXf. Parameter _this can not be null. It is a single object. rotation angles relative to x,y,z axes Returns a pointer to a member variable of class MR::RigidXf3d named a. 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_RigidXf3f_OffsetMutablePtr()

MRC_API MR_RigidXf3f * MR_RigidXf3f_OffsetMutablePtr ( MR_RigidXf3f * 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_RigidXf3f_OffsetPtr()

MRC_API const MR_RigidXf3f * MR_RigidXf3f_OffsetPtr ( const MR_RigidXf3f * 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_RigidXf3f_rigidXf()

MRC_API MR_AffineXf3f MR_RigidXf3f_rigidXf ( const MR_RigidXf3f * _this)

converts this into rigid transformation, which non-linearly depends on angles Generated from method MR::RigidXf3f::rigidXf. Parameter _this can not be null. It is a single object.

◆ MR_RigidXf3f_Set_a()

MRC_API void MR_RigidXf3f_Set_a ( MR_RigidXf3f * _this,
MR_Vector3f value )

rotation angles relative to x,y,z axes Returns a mutable pointer to a member variable of class MR::RigidXf3f named a. 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_RigidXf3f_Set_b()

MRC_API void MR_RigidXf3f_Set_b ( MR_RigidXf3f * _this,
MR_Vector3f value )

shift Returns a mutable pointer to a member variable of class MR::RigidXf3f named b. 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.