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)
 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.
 
MRC_API MR_RigidXf3fMR_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.
 
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)
 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.
 
MRC_API MR_RigidXf3dMR_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.
 
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. 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.

Function Documentation

◆ MR_RigidXf3d_AssignFromAnother()

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

Generated from a method of class MR::RigidXf3d named operator=. Parameter _this can not be null. It is a single object. Parameter _other 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_Construct()

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

Generated from a constructor of class MR::RigidXf3d. Parameter a can not be null. It is a single object. Parameter b can not be null. It is a single 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 a constructor of class MR::RigidXf3d. Parameter _other can not be null. It is a single 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.

◆ 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.

◆ 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 a method of class MR::RigidXf3d named 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.

◆ 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.

◆ 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 a method of class MR::RigidXf3d named 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 a method of class MR::RigidXf3f named operator=. Parameter _this can not be null. It is a single object. Parameter _other 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_Construct()

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

Generated from a constructor of class MR::RigidXf3f. Parameter a can not be null. It is a single object. Parameter b can not be null. It is a single 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 a constructor of class MR::RigidXf3f. Parameter _other can not be null. It is a single 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.

◆ 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.

◆ 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 a method of class MR::RigidXf3f named 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.

◆ 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.

◆ 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 a method of class MR::RigidXf3f named 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.