MeshLib C Docs
Loading...
Searching...
No Matches
MRDistanceMap.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMesh/MRId.h>
4#include <MRCMisc/common.h>
5#include <MRCMisc/exports.h>
6
7#include <stdbool.h>
8#include <stddef.h>
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
14typedef struct MR_AffineXf3f MR_AffineXf3f; // Defined in `#include <MRCMesh/MRAffineXf.h>`.
15typedef struct MR_ContourToDistanceMapParams MR_ContourToDistanceMapParams; // Defined in `#include <MRCMesh/MRDistanceMapParams.h>`.
16typedef struct MR_Image MR_Image; // Defined in `#include <MRCMesh/MRImage.h>`.
17typedef struct MR_Matrix_float MR_Matrix_float; // Defined in `#include <MRCMesh/MRMatrix.h>`.
18typedef struct MR_MeshPart MR_MeshPart; // Defined in `#include <MRCMesh/MRMeshPart.h>`.
19typedef struct MR_MeshToDistanceMapParams MR_MeshToDistanceMapParams; // Defined in `#include <MRCMesh/MRDistanceMapParams.h>`.
20typedef struct MR_PixelBitSet MR_PixelBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
21typedef struct MR_Polyline2 MR_Polyline2; // Defined in `#include <MRCMesh/MRPolyline.h>`.
22typedef struct MR_RectIndexer MR_RectIndexer; // Defined in `#include <MRCMesh/MRRectIndexer.h>`.
23typedef struct MR_UndirectedEdgeScalars MR_UndirectedEdgeScalars; // Defined in `#include <MRCMesh/MRVector.h>`.
24typedef struct MR_Vector2i MR_Vector2i; // Defined in `#include <MRCMesh/MRVector2.h>`.
25typedef struct MR_expected_MR_DistanceMap_std_string MR_expected_MR_DistanceMap_std_string; // Defined in `#include <MRCMisc/expected_MR_DistanceMap_std_string.h>`.
26typedef struct MR_expected_MR_Mesh_std_string MR_expected_MR_Mesh_std_string; // Defined in `#include <MRCMisc/expected_MR_Mesh_std_string.h>`.
27typedef struct MR_std_function_bool_from_float MR_std_function_bool_from_float; // Defined in `#include <MRCMisc/std_function_bool_from_float.h>`.
28typedef struct MR_std_optional_MR_Vector3f MR_std_optional_MR_Vector3f; // Defined in `#include <MRCMisc/std_optional_MR_Vector3f.h>`.
29typedef struct MR_std_optional_float MR_std_optional_float; // Defined in `#include <MRCMisc/std_optional_float.h>`.
30typedef struct MR_std_pair_MR_DistanceMap_MR_DistanceMap MR_std_pair_MR_DistanceMap_MR_DistanceMap; // Defined in `#include <MRCMisc/std_pair_MR_DistanceMap_MR_DistanceMap.h>`.
31typedef struct MR_std_pair_MR_Polyline2_MR_AffineXf3f MR_std_pair_MR_Polyline2_MR_AffineXf3f; // Defined in `#include <MRCMisc/std_pair_MR_Polyline2_MR_AffineXf3f.h>`.
32typedef struct MR_std_pair_float_float MR_std_pair_float_float; // Defined in `#include <MRCMisc/std_pair_float_float.h>`.
33typedef struct MR_std_pair_uint64_t_uint64_t MR_std_pair_uint64_t_uint64_t; // Defined in `#include <MRCMisc/std_pair_uint64_t_uint64_t.h>`.
34typedef struct MR_std_vector_MR_MeshTriPoint MR_std_vector_MR_MeshTriPoint; // Defined in `#include <MRCMisc/std_vector_MR_MeshTriPoint.h>`.
35typedef struct MR_std_vector_MR_UndirectedEdgeId MR_std_vector_MR_UndirectedEdgeId; // Defined in `#include <MRCMisc/std_vector_MR_UndirectedEdgeId.h>`.
36typedef struct MR_std_vector_MR_Vector3f MR_std_vector_MR_Vector3f; // Defined in `#include <MRCMisc/std_vector_MR_Vector3f.h>`.
37typedef struct MR_std_vector_float MR_std_vector_float; // Defined in `#include <MRCMisc/std_vector_float.h>`.
38typedef struct MR_std_vector_std_pair_uint64_t_uint64_t MR_std_vector_std_pair_uint64_t_uint64_t; // Defined in `#include <MRCMisc/std_vector_std_pair_uint64_t_uint64_t.h>`.
39
40
48typedef struct MR_DistanceMap MR_DistanceMap;
49
57
62
74
78
83
87
92
96
100
105
109
115
120
125
133
140
143
146
153
158
163
168
173
179
185
192
196
201
205
209
212MRC_API const float *MR_DistanceMap_data(const MR_DistanceMap *_this);
213
227
236
250
255
263
270
277
284
291
298
303
308
313
318
323
328
333
339
345
351
356
361
366
373
380
387
392
397
402
406
411
416
421
431
441
448
454
460
466
472
480
484
488
491
494
500
506
512
519
526
533
540
547
554
561
568
575
582
588
595
602
608
615
619
624
633
637
641
647
650
653
661
673
686
693MRC_API MR_std_vector_MR_Vector3f *MR_edgePointsFromContours(const MR_Polyline2 *polyline, float pixelSize, float threshold);
694
701
708
718
722MRC_API MR_Polyline2 *MR_distanceMapTo2DIsoPolyline_3_float(const MR_DistanceMap *distMap, float pixelSize, float isoValue);
723
728MRC_API MR_Polyline2 *MR_polylineOffset(const MR_Polyline2 *polyline, float pixelSize, float offset);
729
743MRC_API MR_Polyline2 *MR_contourUnion(const MR_Polyline2 *contoursA, const MR_Polyline2 *contoursB, const MR_ContourToDistanceMapParams *params, const float *offsetInside);
744
758MRC_API MR_Polyline2 *MR_contourIntersection(const MR_Polyline2 *contoursA, const MR_Polyline2 *contoursB, const MR_ContourToDistanceMapParams *params, const float *offsetInside);
759
773MRC_API MR_Polyline2 *MR_contourSubtract(const MR_Polyline2 *contoursA, const MR_Polyline2 *contoursB, const MR_ContourToDistanceMapParams *params, const float *offsetInside);
774
782
789MRC_API MR_Image *MR_convertDistanceMapToImage(const MR_DistanceMap *distMap, const float *threshold);
790
799MRC_API MR_expected_MR_DistanceMap_std_string *MR_convertImageToDistanceMap(const MR_Image *image, const float *threshold, const bool *invert);
800
801#ifdef __cplusplus
802} // extern "C"
803#endif
struct MR_std_function_bool_from_float MR_std_function_bool_from_float
Definition MR3mf.h:10
struct MR_Polyline2 MR_Polyline2
Definition MRAABBTreePolyline.h:20
struct MR_MeshPart MR_MeshPart
Definition MRAABBTree.h:19
struct MR_std_optional_MR_Vector3f MR_std_optional_MR_Vector3f
Definition MRAddVisualPropertiesMixin.h:33
struct MR_std_vector_MR_MeshTriPoint MR_std_vector_MR_MeshTriPoint
Definition MRAggregateFlow.h:23
struct MR_UndirectedEdgeScalars MR_UndirectedEdgeScalars
std::vector<T>-like container that requires specific indexing type,
Definition MRAggregateFlow.h:16
struct MR_std_optional_float MR_std_optional_float
Definition MRBestFitPolynomial.h:14
struct MR_std_vector_MR_Vector3f MR_std_vector_MR_Vector3f
Definition MRBestFit.h:25
struct MR_PixelBitSet MR_PixelBitSet
Definition MRBitSet.h:102
struct MR_expected_MR_Mesh_std_string MR_expected_MR_Mesh_std_string
Definition MRCtm.h:24
MRC_API MR_Polyline2 * MR_polylineOffset(const MR_Polyline2 *polyline, float pixelSize, float offset)
MRC_API MR_expected_MR_DistanceMap_std_string * MR_convertImageToDistanceMap(const MR_Image *image, const float *threshold, const bool *invert)
struct MR_std_pair_uint64_t_uint64_t MR_std_pair_uint64_t_uint64_t
Definition MRDistanceMap.h:33
MRC_API MR_uint64_t MR_DistanceMap_heapBytes(const MR_DistanceMap *_this)
MRC_API float * MR_ContoursDistanceMapOptions_GetMutable_minDist(MR_ContoursDistanceMapOptions *_this)
MRC_API const float * MR_DistanceMap_Get_NOT_VALID_VALUE(void)
MRC_API float * MR_ContoursDistanceMapOptions_GetMutable_maxDist(MR_ContoursDistanceMapOptions *_this)
MRC_API void MR_DistanceMap_set_2(MR_DistanceMap *_this, MR_uint64_t i, float val)
MRC_API MR_ContoursDistanceMapOptions_SignedDetectionMethod * MR_ContoursDistanceMapOptions_GetMutable_signMethod(MR_ContoursDistanceMapOptions *_this)
MRC_API void MR_DistanceMap_unset_2(MR_DistanceMap *_this, MR_uint64_t x, MR_uint64_t y)
MRC_API MR_DistanceMap * MR_combineXYderivativeMaps(MR_PassBy XYderivativeMaps_pass_by, MR_std_pair_MR_DistanceMap_MR_DistanceMap *XYderivativeMaps)
MRC_API MR_std_vector_MR_UndirectedEdgeId ** MR_ContoursDistanceMapOptions_GetMutable_outClosestEdges(MR_ContoursDistanceMapOptions *_this)
MRC_API void MR_ContoursDistanceMapOptions_Set_offsetParameters(MR_ContoursDistanceMapOptions *_this, const MR_ContoursDistanceMapOffset *value)
struct MR_RectIndexer MR_RectIndexer
Definition MRDistanceMap.h:22
MRC_API MR_Image * MR_convertDistanceMapToImage(const MR_DistanceMap *distMap, const float *threshold)
MRC_API float MR_DistanceMap_getValue_1(const MR_DistanceMap *_this, MR_uint64_t i)
MRC_API bool MR_DistanceMap_isInBounds_2(const MR_DistanceMap *_this, MR_uint64_t x, MR_uint64_t y)
struct MR_MeshToDistanceMapParams MR_MeshToDistanceMapParams
Definition MRDistanceMap.h:19
MRC_API const float * MR_ContoursDistanceMapOptions_Get_maxDist(const MR_ContoursDistanceMapOptions *_this)
MRC_API void MR_ContoursDistanceMapOptions_Set_minDist(MR_ContoursDistanceMapOptions *_this, float value)
MRC_API const MR_RectIndexer * MR_DistanceMap_UpcastTo_MR_RectIndexer(const MR_DistanceMap *object)
struct MR_std_pair_MR_Polyline2_MR_AffineXf3f MR_std_pair_MR_Polyline2_MR_AffineXf3f
Definition MRDistanceMap.h:31
MRC_API float MR_DistanceMap_getValue_2(const MR_DistanceMap *_this, MR_uint64_t x, MR_uint64_t y)
MRC_API void MR_DistanceMap_resize(MR_DistanceMap *_this, const MR_Vector2i *dims)
MRC_API const MR_DistanceMap * MR_DistanceMap_sub_assign(MR_DistanceMap *_this, const MR_DistanceMap *rhs)
struct MR_std_pair_MR_DistanceMap_MR_DistanceMap MR_std_pair_MR_DistanceMap_MR_DistanceMap
Definition MRDistanceMap.h:30
MRC_API const MR_UndirectedEdgeScalars * MR_ContoursDistanceMapOffset_Get_perEdgeOffset(const MR_ContoursDistanceMapOffset *_this)
struct MR_std_vector_MR_UndirectedEdgeId MR_std_vector_MR_UndirectedEdgeId
Definition MRDistanceMap.h:35
MRC_API void MR_DistanceMap_invalidateAll(MR_DistanceMap *_this)
MRC_API MR_std_pair_uint64_t_uint64_t * MR_DistanceMap_getMinIndex(const MR_DistanceMap *_this)
MRC_API MR_std_optional_float * MR_DistanceMap_get_2(const MR_DistanceMap *_this, MR_uint64_t x, MR_uint64_t y)
MRC_API float * MR_DistanceMap_getValue_mut_2(MR_DistanceMap *_this, MR_uint64_t x, MR_uint64_t y)
MRC_API const MR_DistanceMap * MR_DistanceMap_mergeMax(MR_DistanceMap *_this, const MR_DistanceMap *rhs)
MRC_API MR_DistanceMap * MR_DistanceMap_ConstructFromAnother(MR_PassBy _other_pass_by, MR_DistanceMap *_other)
MRC_API MR_uint64_t MR_DistanceMap_size(const MR_DistanceMap *_this)
MRC_API MR_DistanceMap * MR_DistanceMap_DefaultConstructArray(size_t num_elems)
MRC_API void MR_DistanceMap_DestroyArray(const MR_DistanceMap *_this)
Destroys a heap-allocated array of MR_DistanceMap. Does nothing if the pointer is null.
MRC_API MR_Polyline2 * MR_contourIntersection(const MR_Polyline2 *contoursA, const MR_Polyline2 *contoursB, const MR_ContourToDistanceMapParams *params, const float *offsetInside)
computes the intersection of the shapes bounded by input 2d contours
struct MR_std_vector_std_pair_uint64_t_uint64_t MR_std_vector_std_pair_uint64_t_uint64_t
Definition MRDistanceMap.h:38
MRC_API void MR_DistanceMap_set_3(MR_DistanceMap *_this, MR_uint64_t x, MR_uint64_t y, float val)
MRC_API MR_DistanceMap * MR_DistanceMap_DefaultConstruct(void)
MRC_API MR_DistanceMap * MR_computeDistanceMap(const MR_MeshPart *mp, const MR_MeshToDistanceMapParams *params, MR_PassBy cb_pass_by, MR_std_function_bool_from_float *cb, MR_std_vector_MR_MeshTriPoint *outSamples)
struct MR_expected_MR_DistanceMap_std_string MR_expected_MR_DistanceMap_std_string
Definition MRDistanceMap.h:25
MRC_API MR_uint64_t MR_DistanceMap_resX(const MR_DistanceMap *_this)
MRC_API MR_ContoursDistanceMapOptions * MR_ContoursDistanceMapOptions_OffsetMutablePtr(MR_ContoursDistanceMapOptions *ptr, ptrdiff_t i)
MRC_API const MR_ContoursDistanceMapOptions * MR_ContoursDistanceMapOptions_OffsetPtr(const MR_ContoursDistanceMapOptions *ptr, ptrdiff_t i)
MRC_API void MR_DistanceMap_Destroy(const MR_DistanceMap *_this)
Destroys a heap-allocated instance of MR_DistanceMap. Does nothing if the pointer is null.
MRC_API MR_uint64_t MR_DistanceMap_resY(const MR_DistanceMap *_this)
MRC_API void MR_ContoursDistanceMapOptions_Set_region(MR_ContoursDistanceMapOptions *_this, const MR_PixelBitSet *value)
MRC_API MR_DistanceMap * MR_DistanceMap_Construct_1(const MR_Matrix_float *m)
MRC_API MR_uint64_t MR_DistanceMap_toIndex(const MR_DistanceMap *_this, const MR_Vector2i *pos)
MRC_API MR_std_pair_MR_Polyline2_MR_AffineXf3f * MR_distanceMapTo2DIsoPolyline_4(const MR_DistanceMap *distMap, const MR_AffineXf3f *xf, float isoValue, const bool *useDepth)
MRC_API const MR_PixelBitSet ** MR_ContoursDistanceMapOptions_GetMutable_region(MR_ContoursDistanceMapOptions *_this)
MRC_API void MR_ContoursDistanceMapOptions_Set_maxDist(MR_ContoursDistanceMapOptions *_this, float value)
MRC_API void MR_ContoursDistanceMapOptions_DestroyArray(const MR_ContoursDistanceMapOptions *_this)
Destroys a heap-allocated array of MR_ContoursDistanceMapOptions. Does nothing if the pointer is null...
MRC_API const MR_PixelBitSet *const * MR_ContoursDistanceMapOptions_Get_region(const MR_ContoursDistanceMapOptions *_this)
MRC_API MR_Polyline2 * MR_contourSubtract(const MR_Polyline2 *contoursA, const MR_Polyline2 *contoursB, const MR_ContourToDistanceMapParams *params, const float *offsetInside)
computes the difference between the shapes bounded by contoursA and the shapes bounded by contoursB
MRC_API void MR_DistanceMap_clear(MR_DistanceMap *_this)
MRC_API MR_std_optional_float * MR_DistanceMap_get_1(const MR_DistanceMap *_this, MR_uint64_t i)
MRC_API MR_uint64_t MR_DistanceMap_numPoints(const MR_DistanceMap *_this)
MRC_API bool MR_DistanceMap_isValid_1(const MR_DistanceMap *_this, MR_uint64_t i)
MRC_API MR_DistanceMap * MR_DistanceMap_min(const MR_DistanceMap *_this, const MR_DistanceMap *rhs)
MRC_API MR_expected_MR_Mesh_std_string * MR_distanceMapToMesh(const MR_DistanceMap *distMap, const MR_AffineXf3f *toWorld, MR_PassBy cb_pass_by, MR_std_function_bool_from_float *cb)
MRC_API const MR_Vector2i * MR_DistanceMap_dims(const MR_DistanceMap *_this)
struct MR_Matrix_float MR_Matrix_float
Definition MRDistanceMap.h:17
MR_ContoursDistanceMapOffset_OffsetType
Definition MRDistanceMap.h:51
@ MR_ContoursDistanceMapOffset_OffsetType_Shell
Definition MRDistanceMap.h:55
@ MR_ContoursDistanceMapOffset_OffsetType_Normal
distance map from given polyline with values offset
Definition MRDistanceMap.h:53
MRC_API MR_Polyline2 * MR_distanceMapTo2DIsoPolyline_2(const MR_DistanceMap *distMap, float isoValue)
MRC_API MR_DistanceMap * MR_DistanceMap_MutableStaticDowncastFrom_MR_RectIndexer(MR_RectIndexer *object)
MRC_API void MR_ContoursDistanceMapOffset_Set_type(MR_ContoursDistanceMapOffset *_this, MR_ContoursDistanceMapOffset_OffsetType value)
MRC_API MR_DistanceMap * MR_DistanceMap_OffsetMutablePtr(MR_DistanceMap *ptr, ptrdiff_t i)
MRC_API const float * MR_DistanceMap_data(const MR_DistanceMap *_this)
MRC_API MR_std_vector_MR_UndirectedEdgeId *const * MR_ContoursDistanceMapOptions_Get_outClosestEdges(const MR_ContoursDistanceMapOptions *_this)
MRC_API const MR_DistanceMap * MR_DistanceMap_mergeMin(MR_DistanceMap *_this, const MR_DistanceMap *rhs)
MRC_API MR_Polyline2 * MR_distanceMapTo2DIsoPolyline_3_float(const MR_DistanceMap *distMap, float pixelSize, float isoValue)
MRC_API MR_ContoursDistanceMapOffset * MR_ContoursDistanceMapOffset_OffsetMutablePtr(MR_ContoursDistanceMapOffset *ptr, ptrdiff_t i)
MRC_API MR_RectIndexer * MR_DistanceMap_MutableUpcastTo_MR_RectIndexer(MR_DistanceMap *object)
MRC_API const MR_DistanceMap * MR_DistanceMap_OffsetPtr(const MR_DistanceMap *ptr, ptrdiff_t i)
MRC_API MR_std_optional_MR_Vector3f * MR_DistanceMap_unproject(const MR_DistanceMap *_this, MR_uint64_t x, MR_uint64_t y, const MR_AffineXf3f *toWorld)
MRC_API bool MR_DistanceMap_isInBounds_1(const MR_DistanceMap *_this, MR_uint64_t i)
MRC_API void MR_ContoursDistanceMapOptions_Destroy(const MR_ContoursDistanceMapOptions *_this)
Destroys a heap-allocated instance of MR_ContoursDistanceMapOptions. Does nothing if the pointer is n...
MRC_API MR_ContoursDistanceMapOffset_OffsetType * MR_ContoursDistanceMapOffset_GetMutable_type(MR_ContoursDistanceMapOffset *_this)
MRC_API MR_std_optional_MR_Vector3f * MR_DistanceMap_unprojectInterpolated(const MR_DistanceMap *_this, float x, float y, const MR_AffineXf3f *toWorld)
finds 3d coordinates of the Point on the model surface for the (x,y) interpolated value
MRC_API MR_std_vector_MR_Vector3f * MR_edgePointsFromContours(const MR_Polyline2 *polyline, float pixelSize, float threshold)
MRC_API MR_std_vector_std_pair_uint64_t_uint64_t * MR_DistanceMap_getLocalMaximums(const MR_DistanceMap *_this)
struct MR_std_pair_float_float MR_std_pair_float_float
Definition MRDistanceMap.h:32
MRC_API MR_ContoursDistanceMapOptions * MR_ContoursDistanceMapOptions_ConstructFrom(MR_ContoursDistanceMapOptions_SignedDetectionMethod signMethod, const MR_ContoursDistanceMapOffset *offsetParameters, const MR_PixelBitSet *region, MR_std_vector_MR_UndirectedEdgeId *outClosestEdges, float minDist, float maxDist)
MRC_API const MR_ContoursDistanceMapOffset ** MR_ContoursDistanceMapOptions_GetMutable_offsetParameters(MR_ContoursDistanceMapOptions *_this)
MRC_API const MR_DistanceMap * MR_DistanceMap_StaticDowncastFrom_MR_RectIndexer(const MR_RectIndexer *object)
MRC_API MR_ContoursDistanceMapOptions * MR_ContoursDistanceMapOptions_DefaultConstruct(void)
MRC_API void MR_distanceMapFromContours_4(MR_DistanceMap *distMap, const MR_Polyline2 *polyline, const MR_ContourToDistanceMapParams *params, const MR_ContoursDistanceMapOptions *options)
Computes distance of 2d contours according ContourToDistanceMapParams.
MRC_API MR_std_optional_float * MR_DistanceMap_getInterpolated(const MR_DistanceMap *_this, float x, float y)
finds interpolated value.
MRC_API float * MR_DistanceMap_data_mut(MR_DistanceMap *_this)
MRC_API const float * MR_ContoursDistanceMapOptions_Get_minDist(const MR_ContoursDistanceMapOptions *_this)
MRC_API MR_std_pair_MR_DistanceMap_MR_DistanceMap * MR_DistanceMap_getXYDerivativeMaps(const MR_DistanceMap *_this)
MRC_API MR_ContoursDistanceMapOptions * MR_ContoursDistanceMapOptions_ConstructFromAnother(const MR_ContoursDistanceMapOptions *_other)
MRC_API void MR_DistanceMap_unset_1(MR_DistanceMap *_this, MR_uint64_t i)
MRC_API MR_ContoursDistanceMapOffset * MR_ContoursDistanceMapOffset_ConstructFrom(const MR_UndirectedEdgeScalars *perEdgeOffset, MR_ContoursDistanceMapOffset_OffsetType type)
MR_ContoursDistanceMapOptions_SignedDetectionMethod
method to calculate sign
Definition MRDistanceMap.h:65
@ MR_ContoursDistanceMapOptions_SignedDetectionMethod_WindingRule
Definition MRDistanceMap.h:72
@ MR_ContoursDistanceMapOptions_SignedDetectionMethod_ContourOrientation
Definition MRDistanceMap.h:69
MRC_API MR_ContoursDistanceMapOptions * MR_ContoursDistanceMapOptions_AssignFromAnother(MR_ContoursDistanceMapOptions *_this, const MR_ContoursDistanceMapOptions *_other)
MRC_API void MR_ContoursDistanceMapOptions_Set_signMethod(MR_ContoursDistanceMapOptions *_this, MR_ContoursDistanceMapOptions_SignedDetectionMethod value)
MRC_API MR_ContoursDistanceMapOffset * MR_ContoursDistanceMapOffset_ConstructFromAnother(const MR_ContoursDistanceMapOffset *_other)
MRC_API void MR_DistanceMap_negate(MR_DistanceMap *_this)
MRC_API float * MR_DistanceMap_getValue_mut_1(MR_DistanceMap *_this, MR_uint64_t i)
MRC_API MR_DistanceMap * MR_DistanceMap_AssignFromAnother(MR_DistanceMap *_this, MR_PassBy _other_pass_by, MR_DistanceMap *_other)
MRC_API MR_std_pair_float_float * MR_DistanceMap_getMinMaxValues(const MR_DistanceMap *_this)
struct MR_ContourToDistanceMapParams MR_ContourToDistanceMapParams
Definition MRDistanceMap.h:15
MRC_API MR_DistanceMap * MR_distanceMapFromContours_3(const MR_Polyline2 *contours, const MR_ContourToDistanceMapParams *params, const MR_ContoursDistanceMapOptions *options)
Computes distance of 2d contours according ContourToDistanceMapParams.
MRC_API const MR_ContoursDistanceMapOffset * MR_ContoursDistanceMapOffset_OffsetPtr(const MR_ContoursDistanceMapOffset *ptr, ptrdiff_t i)
MRC_API MR_PixelId MR_DistanceMap_toPixelId(const MR_DistanceMap *_this, const MR_Vector2i *pos)
MRC_API void MR_ContoursDistanceMapOffset_Destroy(const MR_ContoursDistanceMapOffset *_this)
Destroys a heap-allocated instance of MR_ContoursDistanceMapOffset. Does nothing if the pointer is nu...
struct MR_ContoursDistanceMapOffset MR_ContoursDistanceMapOffset
Definition MRDistanceMap.h:61
MRC_API const MR_ContoursDistanceMapOffset *const * MR_ContoursDistanceMapOptions_Get_offsetParameters(const MR_ContoursDistanceMapOptions *_this)
MRC_API const MR_ContoursDistanceMapOffset_OffsetType * MR_ContoursDistanceMapOffset_Get_type(const MR_ContoursDistanceMapOffset *_this)
MRC_API MR_Polyline2 * MR_contourUnion(const MR_Polyline2 *contoursA, const MR_Polyline2 *contoursB, const MR_ContourToDistanceMapParams *params, const float *offsetInside)
computes the union of the shapes bounded by input 2d contours
MRC_API MR_DistanceMap * MR_DistanceMap_max(const MR_DistanceMap *_this, const MR_DistanceMap *rhs)
MRC_API MR_std_pair_uint64_t_uint64_t * MR_DistanceMap_getMaxIndex(const MR_DistanceMap *_this)
MRC_API MR_DistanceMap * MR_sub_MR_DistanceMap(const MR_DistanceMap *_this, const MR_DistanceMap *rhs)
MRC_API MR_DistanceMap * MR_DistanceMap_Construct_2(MR_uint64_t resX, MR_uint64_t resY)
MRC_API MR_ContoursDistanceMapOptions * MR_ContoursDistanceMapOptions_DefaultConstructArray(size_t num_elems)
MRC_API MR_Polyline2 * MR_distanceMapTo2DIsoPolyline_3_MR_ContourToDistanceMapParams(const MR_DistanceMap *distMap, const MR_ContourToDistanceMapParams *params, float isoValue)
MRC_API MR_DistanceMap * MR_DistanceMap_getDerivativeMap(const MR_DistanceMap *_this)
MRC_API void MR_DistanceMap_set_1(MR_DistanceMap *_this, MR_PassBy data_pass_by, MR_std_vector_float *data)
MRC_API void MR_ContoursDistanceMapOffset_DestroyArray(const MR_ContoursDistanceMapOffset *_this)
Destroys a heap-allocated array of MR_ContoursDistanceMapOffset. Does nothing if the pointer is null.
MRC_API void MR_ContoursDistanceMapOptions_Set_outClosestEdges(MR_ContoursDistanceMapOptions *_this, MR_std_vector_MR_UndirectedEdgeId *value)
struct MR_ContoursDistanceMapOptions MR_ContoursDistanceMapOptions
Definition MRDistanceMap.h:77
MRC_API const MR_ContoursDistanceMapOptions_SignedDetectionMethod * MR_ContoursDistanceMapOptions_Get_signMethod(const MR_ContoursDistanceMapOptions *_this)
MRC_API bool MR_DistanceMap_isValid_2(const MR_DistanceMap *_this, MR_uint64_t x, MR_uint64_t y)
MRC_API MR_DistanceMap * MR_computeDistanceMapD(const MR_MeshPart *mp, const MR_MeshToDistanceMapParams *params, MR_PassBy cb_pass_by, MR_std_function_bool_from_float *cb, MR_std_vector_MR_MeshTriPoint *outSamples)
struct MR_Image MR_Image
Definition MRJpeg.h:12
struct MR_std_vector_float MR_std_vector_float
Definition MRPdf.h:27
struct MR_DistanceMap MR_DistanceMap
Definition MRTiff.h:9
MR_PassBy
Definition common.h:23
uint64_t MR_uint64_t
Definition common.h:18
#define MRC_API
Definition include/MRCMisc/exports.h:11
Definition MRAffineXf.h:39
Definition MRId.h:52
Generated from class MR::Vector2i.
Definition MRVector2.h:50