MeshLib C Docs
Loading...
Searching...
No Matches
MRCameraPointsTriangulation.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMesh/MREnums.h>
4#include <MRCMesh/MRMatrix3.h>
5#include <MRCMisc/exports.h>
6
7#include <stddef.h>
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13typedef struct MR_Mesh MR_Mesh; // Defined in `#include <MRCMesh/MRMesh.h>`.
14typedef struct MR_MeshTopology MR_MeshTopology; // Defined in `#include <MRCMesh/MRMeshTopology.h>`.
15typedef struct MR_PointCloud MR_PointCloud; // Defined in `#include <MRCMesh/MRPointCloud.h>`.
16typedef struct MR_VertBitSet MR_VertBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
17typedef struct MR_VertCoords MR_VertCoords; // Defined in `#include <MRCMesh/MRVector.h>`.
18typedef struct MR_VertMap MR_VertMap; // Defined in `#include <MRCMesh/MRVector.h>`.
19typedef struct MR_expected_MR_Mesh_std_string MR_expected_MR_Mesh_std_string; // Defined in `#include <MRCMisc/expected_MR_Mesh_std_string.h>`.
20typedef struct MR_std_function_bool_from_float MR_std_function_bool_from_float; // Defined in `#include <MRCMisc/std_function_bool_from_float.h>`.
21
22
26
37
41
48
55
62
70
77
85
93
101
109
117
125
133
137
142
150
154
158
164
167
170
178
193
202
213
220
227
234
241
248
255
262
268
275
282
288
295
302
309
316
320
325
332MRC_API MR_SmoothCameraMeshDepthSettings *MR_SmoothCameraMeshDepthSettings_ConstructFrom(const MR_VertBitSet *region, MR_EdgeWeights edgeWeights, float bdStabilizer, float innerStabilizer, MR_AreaStabilizer innerStabilizerType);
333
337
341
347
350
353
361
371
378
379#ifdef __cplusplus
380} // extern "C"
381#endif
struct MR_std_function_bool_from_float MR_std_function_bool_from_float
Definition MR3mf.h:10
struct MR_VertCoords MR_VertCoords
std::vector<T>-like container that requires specific indexing type,
Definition MRAABBTreePoints.h:21
struct MR_VertBitSet MR_VertBitSet
Definition MRAABBTree.h:22
struct MR_VertMap MR_VertMap
std::vector<T>-like container that requires specific indexing type,
Definition MRBitSet.h:40
MRC_API MR_SmoothCameraMeshDepthSettings * MR_SmoothCameraMeshDepthSettings_DefaultConstructArray(size_t num_elems)
MRC_API MR_expected_MR_Mesh_std_string * MR_triangulateCameraPoints_const_MR_PointCloud_ref(const MR_PointCloud *cloud, const MR_CameraPointsTriangulationSettings *settings, const MR_std_function_bool_from_float *cb)
MRC_API void MR_CameraPointsTriangulationSettings_Destroy(const MR_CameraPointsTriangulationSettings *_this)
Destroys a heap-allocated instance of MR_CameraPointsTriangulationSettings. Does nothing if the point...
MRC_API MR_expected_MR_Mesh_std_string * MR_triangulateCameraPoints_MR_PointCloud_rvalue_ref(MR_PointCloud *cloud, const MR_CameraPointsTriangulationSettings *settings, const MR_std_function_bool_from_float *cb)
MRC_API void MR_SmoothCameraMeshDepthSettings_Set_innerStabilizer(MR_SmoothCameraMeshDepthSettings *_this, float value)
MR_AreaStabilizer
how the stabilizer of an inner vertex depends on the area of its neighborhood in the image plane
Definition MRCameraPointsTriangulation.h:29
@ MR_AreaStabilizer_AreaSq
Definition MRCameraPointsTriangulation.h:35
@ MR_AreaStabilizer_Uniform
all inner vertices have the same stabilizer
Definition MRCameraPointsTriangulation.h:31
@ MR_AreaStabilizer_Area
proportional to the squared neighborhood area (dense regions are smoothed more than sparse ones)
Definition MRCameraPointsTriangulation.h:33
MRC_API float * MR_SmoothCameraMeshDepthSettings_GetMutable_innerStabilizer(MR_SmoothCameraMeshDepthSettings *_this)
MRC_API const MR_CameraPointsTriangulationSettings * MR_CameraPointsTriangulationSettings_OffsetPtr(const MR_CameraPointsTriangulationSettings *ptr, ptrdiff_t i)
MRC_API const float * MR_SmoothCameraMeshDepthSettings_Get_bdStabilizer(const MR_SmoothCameraMeshDepthSettings *_this)
MRC_API void MR_SmoothCameraMeshDepthSettings_Destroy(const MR_SmoothCameraMeshDepthSettings *_this)
Destroys a heap-allocated instance of MR_SmoothCameraMeshDepthSettings. Does nothing if the pointer i...
MRC_API void MR_SmoothCameraMeshDepthSettings_Set_region(MR_SmoothCameraMeshDepthSettings *_this, const MR_VertBitSet *value)
MRC_API MR_VertMap ** MR_CameraPointsTriangulationSettings_GetMutable_outSmallestMap(MR_CameraPointsTriangulationSettings *_this)
MRC_API MR_CameraPointsTriangulationSettings * MR_CameraPointsTriangulationSettings_AssignFromAnother(MR_CameraPointsTriangulationSettings *_this, const MR_CameraPointsTriangulationSettings *_other)
MRC_API void MR_CameraPointsTriangulationSettings_DestroyArray(const MR_CameraPointsTriangulationSettings *_this)
Destroys a heap-allocated array of MR_CameraPointsTriangulationSettings. Does nothing if the pointer ...
MRC_API void MR_CameraPointsTriangulationSettings_Set_outProjectedPoints(MR_CameraPointsTriangulationSettings *_this, MR_VertCoords *value)
struct MR_SmoothCameraMeshDepthSettings MR_SmoothCameraMeshDepthSettings
Definition MRCameraPointsTriangulation.h:40
MRC_API const MR_EdgeWeights * MR_SmoothCameraMeshDepthSettings_Get_edgeWeights(const MR_SmoothCameraMeshDepthSettings *_this)
MRC_API void MR_CameraPointsTriangulationSettings_Set_outSmallestMap(MR_CameraPointsTriangulationSettings *_this, MR_VertMap *value)
MRC_API void MR_SmoothCameraMeshDepthSettings_Set_innerStabilizerType(MR_SmoothCameraMeshDepthSettings *_this, MR_AreaStabilizer value)
MRC_API MR_Matrix3f * MR_CameraPointsTriangulationSettings_GetMutable_intrinsics(MR_CameraPointsTriangulationSettings *_this)
MRC_API MR_CameraPointsTriangulationSettings * MR_CameraPointsTriangulationSettings_DefaultConstructArray(size_t num_elems)
MRC_API void MR_SmoothCameraMeshDepthSettings_Set_bdStabilizer(MR_SmoothCameraMeshDepthSettings *_this, float value)
MRC_API MR_CameraPointsTriangulationSettings * MR_CameraPointsTriangulationSettings_OffsetMutablePtr(MR_CameraPointsTriangulationSettings *ptr, ptrdiff_t i)
MRC_API const MR_AreaStabilizer * MR_SmoothCameraMeshDepthSettings_Get_innerStabilizerType(const MR_SmoothCameraMeshDepthSettings *_this)
MRC_API MR_EdgeWeights * MR_SmoothCameraMeshDepthSettings_GetMutable_edgeWeights(MR_SmoothCameraMeshDepthSettings *_this)
MRC_API const MR_VertBitSet ** MR_SmoothCameraMeshDepthSettings_GetMutable_region(MR_SmoothCameraMeshDepthSettings *_this)
MRC_API MR_expected_MR_Mesh_std_string * MR_triangulateCameraPoints_const_MR_VertCoords_ref(const MR_VertCoords *points, const MR_CameraPointsTriangulationSettings *settings, const MR_std_function_bool_from_float *cb)
MRC_API void MR_CameraPointsTriangulationSettings_Set_weldPixels(MR_CameraPointsTriangulationSettings *_this, float value)
MRC_API float * MR_CameraPointsTriangulationSettings_GetMutable_weldPixels(MR_CameraPointsTriangulationSettings *_this)
MRC_API float * MR_SmoothCameraMeshDepthSettings_GetMutable_bdStabilizer(MR_SmoothCameraMeshDepthSettings *_this)
MRC_API const MR_SmoothCameraMeshDepthSettings * MR_SmoothCameraMeshDepthSettings_OffsetPtr(const MR_SmoothCameraMeshDepthSettings *ptr, ptrdiff_t i)
MRC_API MR_CameraPointsTriangulationSettings * MR_CameraPointsTriangulationSettings_ConstructFromAnother(const MR_CameraPointsTriangulationSettings *_other)
MRC_API MR_CameraPointsTriangulationSettings * MR_CameraPointsTriangulationSettings_ConstructFrom(MR_Matrix3f intrinsics, float weldPixels, MR_VertMap *outSmallestMap, MR_VertCoords *outProjectedPoints)
MRC_API void MR_CameraPointsTriangulationSettings_Set_intrinsics(MR_CameraPointsTriangulationSettings *_this, MR_Matrix3f value)
MRC_API void MR_SmoothCameraMeshDepthSettings_Set_edgeWeights(MR_SmoothCameraMeshDepthSettings *_this, MR_EdgeWeights value)
MRC_API void MR_SmoothCameraMeshDepthSettings_DestroyArray(const MR_SmoothCameraMeshDepthSettings *_this)
Destroys a heap-allocated array of MR_SmoothCameraMeshDepthSettings. Does nothing if the pointer is n...
MRC_API const float * MR_SmoothCameraMeshDepthSettings_Get_innerStabilizer(const MR_SmoothCameraMeshDepthSettings *_this)
MRC_API const MR_VertBitSet *const * MR_SmoothCameraMeshDepthSettings_Get_region(const MR_SmoothCameraMeshDepthSettings *_this)
MRC_API MR_SmoothCameraMeshDepthSettings * MR_SmoothCameraMeshDepthSettings_OffsetMutablePtr(MR_SmoothCameraMeshDepthSettings *ptr, ptrdiff_t i)
struct MR_MeshTopology MR_MeshTopology
Definition MRCameraPointsTriangulation.h:14
MRC_API MR_SmoothCameraMeshDepthSettings * MR_SmoothCameraMeshDepthSettings_DefaultConstruct(void)
MRC_API MR_SmoothCameraMeshDepthSettings * MR_SmoothCameraMeshDepthSettings_ConstructFrom(const MR_VertBitSet *region, MR_EdgeWeights edgeWeights, float bdStabilizer, float innerStabilizer, MR_AreaStabilizer innerStabilizerType)
MRC_API MR_VertCoords ** MR_CameraPointsTriangulationSettings_GetMutable_outProjectedPoints(MR_CameraPointsTriangulationSettings *_this)
MRC_API const float * MR_CameraPointsTriangulationSettings_Get_weldPixels(const MR_CameraPointsTriangulationSettings *_this)
MRC_API MR_AreaStabilizer * MR_SmoothCameraMeshDepthSettings_GetMutable_innerStabilizerType(MR_SmoothCameraMeshDepthSettings *_this)
MRC_API MR_SmoothCameraMeshDepthSettings * MR_SmoothCameraMeshDepthSettings_AssignFromAnother(MR_SmoothCameraMeshDepthSettings *_this, const MR_SmoothCameraMeshDepthSettings *_other)
MRC_API void MR_smoothCameraMeshDepth_3(const MR_MeshTopology *topology, MR_VertCoords *points, const MR_SmoothCameraMeshDepthSettings *settings)
MRC_API void MR_smoothCameraMeshDepth_2(MR_Mesh *mesh, const MR_SmoothCameraMeshDepthSettings *settings)
MRC_API MR_SmoothCameraMeshDepthSettings * MR_SmoothCameraMeshDepthSettings_ConstructFromAnother(const MR_SmoothCameraMeshDepthSettings *_other)
MRC_API const MR_Matrix3f * MR_CameraPointsTriangulationSettings_Get_intrinsics(const MR_CameraPointsTriangulationSettings *_this)
struct MR_CameraPointsTriangulationSettings MR_CameraPointsTriangulationSettings
Definition MRCameraPointsTriangulation.h:25
MRC_API MR_VertCoords *const * MR_CameraPointsTriangulationSettings_Get_outProjectedPoints(const MR_CameraPointsTriangulationSettings *_this)
MRC_API MR_VertMap *const * MR_CameraPointsTriangulationSettings_Get_outSmallestMap(const MR_CameraPointsTriangulationSettings *_this)
MRC_API MR_CameraPointsTriangulationSettings * MR_CameraPointsTriangulationSettings_DefaultConstruct(void)
struct MR_expected_MR_Mesh_std_string MR_expected_MR_Mesh_std_string
Definition MRCtm.h:24
struct MR_Mesh MR_Mesh
Definition MRCtm.h:16
struct MR_PointCloud MR_PointCloud
Definition MRCtm.h:19
MR_EdgeWeights
determines the weight of each edge in applications like Laplacian
Definition MREnums.h:50
#define MRC_API
Definition include/MRCMisc/exports.h:11
Definition MRMatrix3.h:68