MeshLib C Docs
Loading...
Searching...
No Matches
MRObjectMesh.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMisc/common.h>
4#include <MRCMisc/exports.h>
5
6#include <stdbool.h>
7#include <stddef.h>
8#include <stdint.h>
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
14typedef struct MR_FaceBitSet MR_FaceBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
15typedef struct MR_Line3f MR_Line3f; // Defined in `#include <MRCMesh/MRLine.h>`.
16typedef struct MR_MeshIntersectionResult MR_MeshIntersectionResult; // Defined in `#include <MRCMesh/MRMeshIntersect.h>`.
17typedef struct MR_Object MR_Object; // Defined in `#include <MRCMesh/MRObject.h>`.
18typedef struct MR_ObjectChildrenHolder MR_ObjectChildrenHolder; // Defined in `#include <MRCMesh/MRObject.h>`.
19typedef struct MR_ObjectMeshHolder MR_ObjectMeshHolder; // Defined in `#include <MRCMesh/MRObjectMeshHolder.h>`.
20typedef struct MR_VisualObject MR_VisualObject; // Defined in `#include <MRCMesh/MRVisualObject.h>`.
21typedef struct MR_std_shared_ptr_MR_Mesh MR_std_shared_ptr_MR_Mesh; // Defined in `#include <MRCMisc/std_shared_ptr_MR_Mesh.h>`.
22typedef struct MR_std_shared_ptr_MR_Object MR_std_shared_ptr_MR_Object; // Defined in `#include <MRCMisc/std_shared_ptr_MR_Object.h>`.
23typedef struct MR_std_shared_ptr_MR_ObjectMesh MR_std_shared_ptr_MR_ObjectMesh; // Defined in `#include <MRCMisc/std_shared_ptr_MR_ObjectMesh.h>`.
24typedef struct MR_std_string MR_std_string; // Defined in `#include <MRCMisc/std_string.h>`.
25typedef struct MR_std_vector_std_shared_ptr_MR_ObjectMesh MR_std_vector_std_shared_ptr_MR_ObjectMesh; // Defined in `#include <MRCMisc/std_vector_std_shared_ptr_MR_ObjectMesh.h>`.
26typedef struct MR_std_vector_std_string MR_std_vector_std_string; // Defined in `#include <MRCMisc/std_vector_std_string.h>`.
27
28
39
43
48
51
54
58
61
65
68
72
75
79
82
86
89
92
97
100
104
110
115
122
127
132
137
142
147
151MRC_API void MR_ObjectMesh_setDirtyFlags(MR_ObjectMesh *_this, uint32_t mask, const bool *invalidateCaches);
152
162
168
177
178#ifdef __cplusplus
179} // extern "C"
180#endif
struct MR_FaceBitSet MR_FaceBitSet
Definition MRAABBTreeBase.h:25
struct MR_VisualObject MR_VisualObject
Definition MRAddVisualPropertiesMixin.h:21
struct MR_ObjectChildrenHolder MR_ObjectChildrenHolder
Definition MRAddVisualPropertiesMixin.h:18
struct MR_std_shared_ptr_MR_Object MR_std_shared_ptr_MR_Object
Definition MRAngleMeasurementObject.h:18
struct MR_std_vector_std_string MR_std_vector_std_string
Definition MRAngleMeasurementObject.h:20
struct MR_Line3f MR_Line3f
Definition MRBestFit.h:18
struct MR_std_shared_ptr_MR_Mesh MR_std_shared_ptr_MR_Mesh
Definition MRChangeMeshAction.h:19
struct MR_std_shared_ptr_MR_ObjectMesh MR_std_shared_ptr_MR_ObjectMesh
Definition MRChangeMeshAction.h:20
struct MR_std_string MR_std_string
Definition MRE57.h:22
struct MR_Object MR_Object
Definition MRGltf.h:10
struct MR_ObjectMesh MR_ObjectMesh
Definition MRMeshBooleanFacade.h:14
struct MR_MeshIntersectionResult MR_MeshIntersectionResult
Definition MRMeshIntersect.h:41
MRC_API MR_std_shared_ptr_MR_Mesh * MR_ObjectMesh_updateMesh(MR_ObjectMesh *_this, MR_PassBy mesh_pass_by, MR_std_shared_ptr_MR_Mesh *mesh)
MRC_API void MR_ObjectMesh_setMesh(MR_ObjectMesh *_this, MR_PassBy mesh_pass_by, MR_std_shared_ptr_MR_Mesh *mesh)
MRC_API MR_ObjectMesh * MR_ObjectMesh_ConstructFromAnother(MR_PassBy _other_pass_by, MR_ObjectMesh *_other)
MRC_API void MR_ObjectMesh_Destroy(const MR_ObjectMesh *_this)
Destroys a heap-allocated instance of MR_ObjectMesh. Does nothing if the pointer is null.
MRC_API MR_Object * MR_ObjectMesh_MutableUpcastTo_MR_Object(MR_ObjectMesh *object)
Upcasts an instance of MR::ObjectMesh to its base class MR::Object.
MRC_API const MR_ObjectChildrenHolder * MR_ObjectMesh_UpcastTo_MR_ObjectChildrenHolder(const MR_ObjectMesh *object)
struct MR_std_vector_std_shared_ptr_MR_ObjectMesh MR_std_vector_std_shared_ptr_MR_ObjectMesh
Definition MRObjectMesh.h:25
MRC_API MR_std_shared_ptr_MR_Object * MR_ObjectMesh_clone(const MR_ObjectMesh *_this)
MRC_API MR_ObjectMesh * MR_ObjectMesh_DefaultConstruct(void)
MRC_API MR_std_shared_ptr_MR_Object * MR_ObjectMesh_shallowClone(const MR_ObjectMesh *_this)
MRC_API MR_std_string * MR_ObjectMesh_getClassName(const MR_ObjectMesh *_this)
MRC_API MR_ObjectMeshHolder * MR_ObjectMesh_MutableUpcastTo_MR_ObjectMeshHolder(MR_ObjectMesh *object)
Upcasts an instance of MR::ObjectMesh to its base class MR::ObjectMeshHolder.
MRC_API const char * MR_ObjectMesh_TypeName(void)
Generated from a method of class MR::ObjectMesh named TypeName.
MRC_API MR_MeshIntersectionResult * MR_ObjectMesh_worldRayIntersection(const MR_ObjectMesh *_this, const MR_Line3f *worldRay, const MR_FaceBitSet *region)
MRC_API const char * MR_ObjectMesh_typeName(const MR_ObjectMesh *_this)
MRC_API MR_ObjectMesh * MR_ObjectMesh_AssignFromAnother(MR_ObjectMesh *_this, MR_PassBy _other_pass_by, MR_ObjectMesh *_other)
MRC_API MR_std_shared_ptr_MR_ObjectMesh * MR_cloneRegion_3(const MR_std_shared_ptr_MR_ObjectMesh *objMesh, const MR_FaceBitSet *region, const bool *copyTexture)
MRC_API MR_VisualObject * MR_ObjectMesh_MutableUpcastTo_MR_VisualObject(MR_ObjectMesh *object)
Upcasts an instance of MR::ObjectMesh to its base class MR::VisualObject.
MRC_API void MR_ObjectMesh_setDirtyFlags(MR_ObjectMesh *_this, uint32_t mask, const bool *invalidateCaches)
MRC_API MR_std_shared_ptr_MR_ObjectMesh * MR_merge_std_vector_std_shared_ptr_MR_ObjectMesh(const MR_std_vector_std_shared_ptr_MR_ObjectMesh *objsMesh)
MRC_API MR_ObjectChildrenHolder * MR_ObjectMesh_MutableUpcastTo_MR_ObjectChildrenHolder(MR_ObjectMesh *object)
Upcasts an instance of MR::ObjectMesh to its base class MR::ObjectChildrenHolder.
MRC_API MR_ObjectMesh * MR_ObjectMesh_DefaultConstructArray(size_t num_elems)
MRC_API void MR_ObjectMesh_DestroyArray(const MR_ObjectMesh *_this)
Destroys a heap-allocated array of MR_ObjectMesh. Does nothing if the pointer is null.
MRC_API const MR_ObjectMesh * MR_ObjectMesh_OffsetPtr(const MR_ObjectMesh *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API const MR_ObjectMeshHolder * MR_ObjectMesh_UpcastTo_MR_ObjectMeshHolder(const MR_ObjectMesh *object)
MRC_API const MR_Object * MR_ObjectMesh_UpcastTo_MR_Object(const MR_ObjectMesh *object)
MRC_API MR_ObjectMesh * MR_ObjectMesh_OffsetMutablePtr(MR_ObjectMesh *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API const MR_VisualObject * MR_ObjectMesh_UpcastTo_MR_VisualObject(const MR_ObjectMesh *object)
MRC_API const MR_std_shared_ptr_MR_Mesh * MR_ObjectMesh_varMesh(MR_ObjectMesh *_this)
MRC_API MR_std_vector_std_string * MR_ObjectMesh_getInfoLines(const MR_ObjectMesh *_this)
MRC_API MR_std_string * MR_ObjectMesh_getClassNameInPlural(const MR_ObjectMesh *_this)
struct MR_ObjectMeshHolder MR_ObjectMeshHolder
Definition MRObject.h:33
MR_PassBy
Definition common.h:19
#define MRC_API
Definition exports.h:11