MeshLib C Docs
Loading...
Searching...
No Matches
MRVoxelsApplyTransform.h File Reference
#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_AffineXf3f MR_AffineXf3f
 
typedef struct MR_Box3f MR_Box3f
 
typedef struct MR_ObjectVoxels MR_ObjectVoxels
 
typedef struct MR_VdbVolume MR_VdbVolume
 
typedef struct MR_TransformVdbVolumeResult MR_TransformVdbVolumeResult
 Generated from class MR::TransformVdbVolumeResult.
 

Functions

MRC_API const MR_VdbVolumeMR_TransformVdbVolumeResult_Get_volume (const MR_TransformVdbVolumeResult *_this)
 
MRC_API void MR_TransformVdbVolumeResult_Set_volume (MR_TransformVdbVolumeResult *_this, MR_PassBy value_pass_by, MR_VdbVolume *value)
 
MRC_API MR_VdbVolumeMR_TransformVdbVolumeResult_GetMutable_volume (MR_TransformVdbVolumeResult *_this)
 
MRC_API const bool * MR_TransformVdbVolumeResult_Get_boxFixed (const MR_TransformVdbVolumeResult *_this)
 
MRC_API void MR_TransformVdbVolumeResult_Set_boxFixed (MR_TransformVdbVolumeResult *_this, bool value)
 
MRC_API bool * MR_TransformVdbVolumeResult_GetMutable_boxFixed (MR_TransformVdbVolumeResult *_this)
 
MRC_API MR_TransformVdbVolumeResultMR_TransformVdbVolumeResult_DefaultConstruct (void)
 
MRC_API MR_TransformVdbVolumeResultMR_TransformVdbVolumeResult_DefaultConstructArray (size_t num_elems)
 
MRC_API MR_TransformVdbVolumeResultMR_TransformVdbVolumeResult_ConstructFrom (MR_PassBy volume_pass_by, MR_VdbVolume *volume, bool boxFixed)
 
MRC_API const MR_TransformVdbVolumeResultMR_TransformVdbVolumeResult_OffsetPtr (const MR_TransformVdbVolumeResult *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_TransformVdbVolumeResultMR_TransformVdbVolumeResult_OffsetMutablePtr (MR_TransformVdbVolumeResult *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_TransformVdbVolumeResultMR_TransformVdbVolumeResult_ConstructFromAnother (MR_PassBy _other_pass_by, MR_TransformVdbVolumeResult *_other)
 
MRC_API void MR_TransformVdbVolumeResult_Destroy (const MR_TransformVdbVolumeResult *_this)
 Destroys a heap-allocated instance of MR_TransformVdbVolumeResult. Does nothing if the pointer is null.
 
MRC_API void MR_TransformVdbVolumeResult_DestroyArray (const MR_TransformVdbVolumeResult *_this)
 Destroys a heap-allocated array of MR_TransformVdbVolumeResult. Does nothing if the pointer is null.
 
MRC_API MR_TransformVdbVolumeResultMR_TransformVdbVolumeResult_AssignFromAnother (MR_TransformVdbVolumeResult *_this, MR_PassBy _other_pass_by, MR_TransformVdbVolumeResult *_other)
 
MRC_API MR_TransformVdbVolumeResultMR_transformVdbVolume (const MR_VdbVolume *volume, const MR_AffineXf3f *xf, const bool *fixBox, const MR_Box3f *box)
 
MRC_API bool MR_voxelsApplyTransform (MR_ObjectVoxels *obj, const MR_AffineXf3f *xf, bool fixBox)
 

Typedef Documentation

◆ MR_AffineXf3f

typedef struct MR_AffineXf3f MR_AffineXf3f

◆ MR_Box3f

typedef struct MR_Box3f MR_Box3f

◆ MR_ObjectVoxels

◆ MR_TransformVdbVolumeResult

◆ MR_VdbVolume

typedef struct MR_VdbVolume MR_VdbVolume

Function Documentation

◆ MR_transformVdbVolume()

MRC_API MR_TransformVdbVolumeResult * MR_transformVdbVolume ( const MR_VdbVolume * volume,
const MR_AffineXf3f * xf,
const bool * fixBox,
const MR_Box3f * box )

Transform volume

Parameters
volumeVolume to transform
xfThe transformation
fixBoxIf true, and if box is valid and represents the bounding box of the volume, then the result will be shifted so that no data has negative coordinate by any of dimensions Generated from function MR::transformVdbVolume. Parameter volume can not be null. It is a single object. Parameter xf can not be null. It is a single object. Parameter fixBox has a default argument: false, pass a null pointer to use it. Parameter box is a single object. Parameter box has a default argument: {}, pass a null pointer to use it. Never returns null. Returns an instance allocated on the heap! Must call MR_TransformVdbVolumeResult_Destroy() to free it when you're done using it.

◆ MR_TransformVdbVolumeResult_AssignFromAnother()

MRC_API MR_TransformVdbVolumeResult * MR_TransformVdbVolumeResult_AssignFromAnother ( MR_TransformVdbVolumeResult * _this,
MR_PassBy _other_pass_by,
MR_TransformVdbVolumeResult * _other )

Generated from a method of class MR::TransformVdbVolumeResult named 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_TransformVdbVolumeResult_ConstructFrom()

MRC_API MR_TransformVdbVolumeResult * MR_TransformVdbVolumeResult_ConstructFrom ( MR_PassBy volume_pass_by,
MR_VdbVolume * volume,
bool boxFixed )

Constructs MR::TransformVdbVolumeResult elementwise. Never returns null. Returns an instance allocated on the heap! Must call MR_TransformVdbVolumeResult_Destroy() to free it when you're done using it.

◆ MR_TransformVdbVolumeResult_ConstructFromAnother()

MRC_API MR_TransformVdbVolumeResult * MR_TransformVdbVolumeResult_ConstructFromAnother ( MR_PassBy _other_pass_by,
MR_TransformVdbVolumeResult * _other )

Generated from a constructor of class MR::TransformVdbVolumeResult. Never returns null. Returns an instance allocated on the heap! Must call MR_TransformVdbVolumeResult_Destroy() to free it when you're done using it.

◆ MR_TransformVdbVolumeResult_DefaultConstruct()

MRC_API MR_TransformVdbVolumeResult * MR_TransformVdbVolumeResult_DefaultConstruct ( void )

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

◆ MR_TransformVdbVolumeResult_DefaultConstructArray()

MRC_API MR_TransformVdbVolumeResult * MR_TransformVdbVolumeResult_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_TransformVdbVolumeResult_DestroyArray(). Use MR_TransformVdbVolumeResult_OffsetMutablePtr() and MR_TransformVdbVolumeResult_OffsetPtr() to access the array elements.

◆ MR_TransformVdbVolumeResult_Destroy()

MRC_API void MR_TransformVdbVolumeResult_Destroy ( const MR_TransformVdbVolumeResult * _this)

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

◆ MR_TransformVdbVolumeResult_DestroyArray()

MRC_API void MR_TransformVdbVolumeResult_DestroyArray ( const MR_TransformVdbVolumeResult * _this)

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

◆ MR_TransformVdbVolumeResult_Get_boxFixed()

MRC_API const bool * MR_TransformVdbVolumeResult_Get_boxFixed ( const MR_TransformVdbVolumeResult * _this)

Returns a pointer to a member variable of class MR::TransformVdbVolumeResult named boxFixed. 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_TransformVdbVolumeResult_Get_volume()

MRC_API const MR_VdbVolume * MR_TransformVdbVolumeResult_Get_volume ( const MR_TransformVdbVolumeResult * _this)

Returns a pointer to a member variable of class MR::TransformVdbVolumeResult named volume. 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_TransformVdbVolumeResult_GetMutable_boxFixed()

MRC_API bool * MR_TransformVdbVolumeResult_GetMutable_boxFixed ( MR_TransformVdbVolumeResult * _this)

Returns a mutable pointer to a member variable of class MR::TransformVdbVolumeResult named boxFixed. 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_TransformVdbVolumeResult_GetMutable_volume()

MRC_API MR_VdbVolume * MR_TransformVdbVolumeResult_GetMutable_volume ( MR_TransformVdbVolumeResult * _this)

Returns a mutable pointer to a member variable of class MR::TransformVdbVolumeResult named volume. 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_TransformVdbVolumeResult_OffsetMutablePtr()

MRC_API MR_TransformVdbVolumeResult * MR_TransformVdbVolumeResult_OffsetMutablePtr ( MR_TransformVdbVolumeResult * 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_TransformVdbVolumeResult_OffsetPtr()

MRC_API const MR_TransformVdbVolumeResult * MR_TransformVdbVolumeResult_OffsetPtr ( const MR_TransformVdbVolumeResult * 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_TransformVdbVolumeResult_Set_boxFixed()

MRC_API void MR_TransformVdbVolumeResult_Set_boxFixed ( MR_TransformVdbVolumeResult * _this,
bool value )

Modifies a member variable of class MR::TransformVdbVolumeResult named boxFixed. Parameter _this can not be null. It is a single object.

◆ MR_TransformVdbVolumeResult_Set_volume()

MRC_API void MR_TransformVdbVolumeResult_Set_volume ( MR_TransformVdbVolumeResult * _this,
MR_PassBy value_pass_by,
MR_VdbVolume * value )

Modifies a member variable of class MR::TransformVdbVolumeResult named volume. Parameter _this can not be null. It is a single object.

◆ MR_voxelsApplyTransform()

MRC_API bool MR_voxelsApplyTransform ( MR_ObjectVoxels * obj,
const MR_AffineXf3f * xf,
bool fixBox )

Same as above but for the SceneObject

Returns
true, if fixBox is true and the box was "fixed" (see parameter fixBox of transformVdbVolume) Generated from function MR::voxelsApplyTransform. Parameter obj can not be null. It is a single object. Parameter xf can not be null. It is a single object.