MeshLib C Docs
Loading...
Searching...
No Matches
MRBox.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMesh/MRVector2.h>
4#include <MRCMesh/MRVector3.h>
5#include <MRCMisc/common.h>
6#include <MRCMisc/exports.h>
7
8#include <stdbool.h>
9#include <stddef.h>
10
11#ifdef __cplusplus
12extern "C" {
13#endif
14
15typedef struct MR_NoInit MR_NoInit; // Defined in `#include <MRCMesh/MRMeshFwd.h>`.
16typedef struct MR_SimpleVolumeMinMax MR_SimpleVolumeMinMax; // Defined in `#include <MRCVoxels/MRVoxelsVolume.h>`.
17typedef struct MR_SimpleVolumeMinMaxU16 MR_SimpleVolumeMinMaxU16; // Defined in `#include <MRCVoxels/MRVoxelsVolume.h>`.
18typedef struct MR_VdbVolume MR_VdbVolume; // Defined in `#include <MRCVoxels/MRVoxelsVolume.h>`.
19typedef struct MR_std_istream MR_std_istream; // Defined in `#include <MRCMisc/iostream.h>`.
20typedef struct MR_std_ostream MR_std_ostream; // Defined in `#include <MRCMisc/iostream.h>`.
21
22
25typedef struct MR_Box1i
26{
27 int min;
28 int max;
30
38
45typedef struct MR_Box1f
46{
47 float min;
48 float max;
50
53typedef struct MR_Box1d
54{
55 double min;
56 double max;
58
66
74
82
90
98
106
114
122
130
134
137
142
148MRC_API MR_Box1i MR_Box1i_Construct_2(const int *min, const int *max);
149
154
159MRC_API const int *MR_Box1i_index_const(const MR_Box1i *_this, int e);
160
164MRC_API int *MR_Box1i_index(MR_Box1i *_this, int e);
165
169MRC_API MR_Box1i MR_Box1i_fromMinAndSize(const int *min, const int *size);
170
174MRC_API bool MR_Box1i_valid(const MR_Box1i *_this);
175
180
187MRC_API int MR_Box1i_corner(const MR_Box1i *_this, const bool *c);
188
194
200
205
210
215
220MRC_API void MR_Box1i_include_int(MR_Box1i *_this, const int *pt);
221
227
232MRC_API bool MR_Box1i_contains_int(const MR_Box1i *_this, const int *pt);
233
238MRC_API bool MR_Box1i_contains_MR_Box1i(const MR_Box1i *_this, const MR_Box1i *otherbox);
239
244MRC_API int MR_Box1i_getBoxClosestPointTo(const MR_Box1i *_this, const int *pt);
245
250MRC_API bool MR_Box1i_intersects(const MR_Box1i *_this, const MR_Box1i *b);
251
257
263
270
276MRC_API int MR_Box1i_getDistanceSq_int(const MR_Box1i *_this, const int *pt);
277
283MRC_API int MR_Box1i_getProjection(const MR_Box1i *_this, const int *pt);
284
289MRC_API MR_Box1i MR_Box1i_expanded(const MR_Box1i *_this, const int *expansion);
290
295
299MRC_API bool MR_equal_MR_Box1i(const MR_Box1i *_this, const MR_Box1i *a);
300
304MRC_API bool MR_not_equal_MR_Box1i(const MR_Box1i *_this, const MR_Box1i *a);
305
311
317
321
324
329
336
341
347
352
357
362
367
374MRC_API MR_int64_t MR_Box1i64_corner(const MR_Box1i64 *_this, const bool *c);
375
381
387
392
397
402
408
414
420
426
432
438
444
450
457
464
471
477
482
487
492
498
504
508
511
516
521
525
530
534
540MRC_API MR_Box1f MR_Box1f_Construct_2(const float *min, const float *max);
541
546
551MRC_API const float *MR_Box1f_index_const(const MR_Box1f *_this, int e);
552
556MRC_API float *MR_Box1f_index(MR_Box1f *_this, int e);
557
561MRC_API MR_Box1f MR_Box1f_fromMinAndSize(const float *min, const float *size);
562
566MRC_API bool MR_Box1f_valid(const MR_Box1f *_this);
567
571MRC_API float MR_Box1f_center(const MR_Box1f *_this);
572
579MRC_API float MR_Box1f_corner(const MR_Box1f *_this, const bool *c);
580
586
592
596MRC_API float MR_Box1f_size(const MR_Box1f *_this);
597
602
606MRC_API float MR_Box1f_volume(const MR_Box1f *_this);
607
612MRC_API void MR_Box1f_include_float(MR_Box1f *_this, const float *pt);
613
619
624MRC_API bool MR_Box1f_contains_float(const MR_Box1f *_this, const float *pt);
625
630MRC_API bool MR_Box1f_contains_MR_Box1f(const MR_Box1f *_this, const MR_Box1f *otherbox);
631
636MRC_API float MR_Box1f_getBoxClosestPointTo(const MR_Box1f *_this, const float *pt);
637
642MRC_API bool MR_Box1f_intersects(const MR_Box1f *_this, const MR_Box1f *b);
643
649
655
662
668MRC_API float MR_Box1f_getDistanceSq_float(const MR_Box1f *_this, const float *pt);
669
675MRC_API float MR_Box1f_getProjection(const MR_Box1f *_this, const float *pt);
676
681MRC_API MR_Box1f MR_Box1f_expanded(const MR_Box1f *_this, const float *expansion);
682
687
691MRC_API bool MR_equal_MR_Box1f(const MR_Box1f *_this, const MR_Box1f *a);
692
696MRC_API bool MR_not_equal_MR_Box1f(const MR_Box1f *_this, const MR_Box1f *a);
697
703
709
713
716
721
727MRC_API MR_Box1d MR_Box1d_Construct_2(const double *min, const double *max);
728
733
738MRC_API const double *MR_Box1d_index_const(const MR_Box1d *_this, int e);
739
743MRC_API double *MR_Box1d_index(MR_Box1d *_this, int e);
744
748MRC_API MR_Box1d MR_Box1d_fromMinAndSize(const double *min, const double *size);
749
753MRC_API bool MR_Box1d_valid(const MR_Box1d *_this);
754
758MRC_API double MR_Box1d_center(const MR_Box1d *_this);
759
766MRC_API double MR_Box1d_corner(const MR_Box1d *_this, const bool *c);
767
772MRC_API bool MR_Box1d_getMinBoxCorner(const double *n);
773
778MRC_API bool MR_Box1d_getMaxBoxCorner(const double *n);
779
783MRC_API double MR_Box1d_size(const MR_Box1d *_this);
784
788MRC_API double MR_Box1d_diagonal(const MR_Box1d *_this);
789
793MRC_API double MR_Box1d_volume(const MR_Box1d *_this);
794
799MRC_API void MR_Box1d_include_double(MR_Box1d *_this, const double *pt);
800
806
811MRC_API bool MR_Box1d_contains_double(const MR_Box1d *_this, const double *pt);
812
817MRC_API bool MR_Box1d_contains_MR_Box1d(const MR_Box1d *_this, const MR_Box1d *otherbox);
818
823MRC_API double MR_Box1d_getBoxClosestPointTo(const MR_Box1d *_this, const double *pt);
824
829MRC_API bool MR_Box1d_intersects(const MR_Box1d *_this, const MR_Box1d *b);
830
836
842
849
855MRC_API double MR_Box1d_getDistanceSq_double(const MR_Box1d *_this, const double *pt);
856
862MRC_API double MR_Box1d_getProjection(const MR_Box1d *_this, const double *pt);
863
868MRC_API MR_Box1d MR_Box1d_expanded(const MR_Box1d *_this, const double *expansion);
869
874
878MRC_API bool MR_equal_MR_Box1d(const MR_Box1d *_this, const MR_Box1d *a);
879
883MRC_API bool MR_not_equal_MR_Box1d(const MR_Box1d *_this, const MR_Box1d *a);
884
890
896
900
903
908
915
916// If the compiler supports `requires`, use that instead of `std::enable_if` here.
917// Not (only) because it looks cooler, but because of a bug in our binding generator that makes it choke on it: https://github.com/MeshInspector/mrbind/issues/19
922
928
933
938
942MRC_API bool MR_Box2i_valid(const MR_Box2i *_this);
943
948
956
962
968
973
978
983
989
995
1001
1006MRC_API bool MR_Box2i_contains_MR_Box2i(const MR_Box2i *_this, const MR_Box2i *otherbox);
1007
1013
1018MRC_API bool MR_Box2i_intersects(const MR_Box2i *_this, const MR_Box2i *b);
1019
1025
1031
1038
1045
1052
1058
1063
1067MRC_API bool MR_equal_MR_Box2i(const MR_Box2i *_this, const MR_Box2i *a);
1068
1072MRC_API bool MR_not_equal_MR_Box2i(const MR_Box2i *_this, const MR_Box2i *a);
1073
1079
1085
1089
1092
1097
1104
1105// If the compiler supports `requires`, use that instead of `std::enable_if` here.
1106// Not (only) because it looks cooler, but because of a bug in our binding generator that makes it choke on it: https://github.com/MeshInspector/mrbind/issues/19
1111
1117
1122
1127
1132
1137
1145
1151
1157
1162
1167
1172
1178
1184
1190
1196
1202
1208
1214
1220
1227
1234
1241
1247
1252
1257
1262
1268
1274
1278
1281
1286
1293
1294// If the compiler supports `requires`, use that instead of `std::enable_if` here.
1295// Not (only) because it looks cooler, but because of a bug in our binding generator that makes it choke on it: https://github.com/MeshInspector/mrbind/issues/19
1300
1306
1311
1316
1321
1326
1334
1340
1346
1351
1356
1361
1367
1373
1379
1384MRC_API bool MR_Box2f_contains_MR_Box2f(const MR_Box2f *_this, const MR_Box2f *otherbox);
1385
1391
1396MRC_API bool MR_Box2f_intersects(const MR_Box2f *_this, const MR_Box2f *b);
1397
1403
1409
1416
1423
1430
1436
1441
1445MRC_API bool MR_equal_MR_Box2f(const MR_Box2f *_this, const MR_Box2f *a);
1446
1450MRC_API bool MR_not_equal_MR_Box2f(const MR_Box2f *_this, const MR_Box2f *a);
1451
1457
1463
1467
1470
1475
1482
1483// If the compiler supports `requires`, use that instead of `std::enable_if` here.
1484// Not (only) because it looks cooler, but because of a bug in our binding generator that makes it choke on it: https://github.com/MeshInspector/mrbind/issues/19
1489
1495
1500
1505
1510
1515
1523
1529
1535
1540
1545
1549MRC_API double MR_Box2d_volume(const MR_Box2d *_this);
1550
1556
1562
1568
1573MRC_API bool MR_Box2d_contains_MR_Box2d(const MR_Box2d *_this, const MR_Box2d *otherbox);
1574
1580
1585MRC_API bool MR_Box2d_intersects(const MR_Box2d *_this, const MR_Box2d *b);
1586
1592
1598
1605
1612
1619
1625
1630
1634MRC_API bool MR_equal_MR_Box2d(const MR_Box2d *_this, const MR_Box2d *a);
1635
1639MRC_API bool MR_not_equal_MR_Box2d(const MR_Box2d *_this, const MR_Box2d *a);
1640
1646
1652
1656
1659
1664
1671
1672// If the compiler supports `requires`, use that instead of `std::enable_if` here.
1673// Not (only) because it looks cooler, but because of a bug in our binding generator that makes it choke on it: https://github.com/MeshInspector/mrbind/issues/19
1678
1684
1689
1694
1699
1704
1712
1718
1724
1729
1734
1739
1745
1751
1757
1762MRC_API bool MR_Box3i_contains_MR_Box3i(const MR_Box3i *_this, const MR_Box3i *otherbox);
1763
1769
1774MRC_API bool MR_Box3i_intersects(const MR_Box3i *_this, const MR_Box3i *b);
1775
1781
1787
1794
1801
1808
1814
1819
1823MRC_API bool MR_equal_MR_Box3i(const MR_Box3i *_this, const MR_Box3i *a);
1824
1828MRC_API bool MR_not_equal_MR_Box3i(const MR_Box3i *_this, const MR_Box3i *a);
1829
1835
1841
1845
1848
1853
1860
1861// If the compiler supports `requires`, use that instead of `std::enable_if` here.
1862// Not (only) because it looks cooler, but because of a bug in our binding generator that makes it choke on it: https://github.com/MeshInspector/mrbind/issues/19
1867
1873
1878
1883
1888
1893
1901
1907
1913
1918
1923
1928
1934
1940
1946
1952
1958
1964
1970
1976
1983
1990
1997
2003
2008
2013
2018
2024
2030
2034
2037
2042
2049
2050// If the compiler supports `requires`, use that instead of `std::enable_if` here.
2051// Not (only) because it looks cooler, but because of a bug in our binding generator that makes it choke on it: https://github.com/MeshInspector/mrbind/issues/19
2056
2062
2067
2072
2077
2082
2090
2096
2102
2107
2112
2117
2123
2129
2135
2140MRC_API bool MR_Box3f_contains_MR_Box3f(const MR_Box3f *_this, const MR_Box3f *otherbox);
2141
2147
2152MRC_API bool MR_Box3f_intersects(const MR_Box3f *_this, const MR_Box3f *b);
2153
2159
2165
2172
2179
2186
2192
2197
2201MRC_API bool MR_equal_MR_Box3f(const MR_Box3f *_this, const MR_Box3f *a);
2202
2206MRC_API bool MR_not_equal_MR_Box3f(const MR_Box3f *_this, const MR_Box3f *a);
2207
2213
2219
2223
2226
2231
2238
2239// If the compiler supports `requires`, use that instead of `std::enable_if` here.
2240// Not (only) because it looks cooler, but because of a bug in our binding generator that makes it choke on it: https://github.com/MeshInspector/mrbind/issues/19
2245
2251
2256
2261
2266
2271
2279
2285
2291
2296
2301
2305MRC_API double MR_Box3d_volume(const MR_Box3d *_this);
2306
2312
2318
2324
2329MRC_API bool MR_Box3d_contains_MR_Box3d(const MR_Box3d *_this, const MR_Box3d *otherbox);
2330
2336
2341MRC_API bool MR_Box3d_intersects(const MR_Box3d *_this, const MR_Box3d *b);
2342
2348
2354
2361
2368
2375
2381
2386
2390MRC_API bool MR_equal_MR_Box3d(const MR_Box3d *_this, const MR_Box3d *a);
2391
2395MRC_API bool MR_not_equal_MR_Box3d(const MR_Box3d *_this, const MR_Box3d *a);
2396
2402
2408
2412
2417
2423
2428
2433
2439
2444
2448
2453
2457
2461
2466
2470
2476
2483MRC_API MR_Box_unsigned_short *MR_Box_unsigned_short_Construct_2(const unsigned short *min, const unsigned short *max);
2484
2490
2493
2496
2504
2509MRC_API const unsigned short *MR_Box_unsigned_short_index_const(const MR_Box_unsigned_short *_this, int e);
2510
2515
2520MRC_API MR_Box_unsigned_short *MR_Box_unsigned_short_fromMinAndSize(const unsigned short *min, const unsigned short *size);
2521
2526
2531
2538MRC_API unsigned short MR_Box_unsigned_short_corner(const MR_Box_unsigned_short *_this, const bool *c);
2539
2545
2551
2556
2561
2566
2572
2578
2584
2590
2595MRC_API unsigned short MR_Box_unsigned_short_getBoxClosestPointTo(const MR_Box_unsigned_short *_this, const unsigned short *pt);
2596
2602
2609
2615
2622
2628MRC_API unsigned short MR_Box_unsigned_short_getDistanceSq_unsigned_short(const MR_Box_unsigned_short *_this, const unsigned short *pt);
2629
2635MRC_API unsigned short MR_Box_unsigned_short_getProjection(const MR_Box_unsigned_short *_this, const unsigned short *pt);
2636
2643
2649
2654
2659
2665
2671
2672#ifdef __cplusplus
2673} // extern "C"
2674#endif
MRC_API bool MR_Box3d_contains_MR_Vector3d(const MR_Box3d *_this, const MR_Vector3d *pt)
MRC_API bool MR_Box2i64_contains_MR_Box2i64(const MR_Box2i64 *_this, const MR_Box2i64 *otherbox)
MRC_API MR_Box1f MR_Box1f_Construct_1(const MR_NoInit *_1)
MRC_API MR_Box_unsigned_short * MR_Box_unsigned_short_expanded(const MR_Box_unsigned_short *_this, const unsigned short *expansion)
MRC_API MR_Vector3f MR_Box3f_size(const MR_Box3f *_this)
MRC_API const int * MR_Box3d_Get_elements(void)
MRC_API bool MR_not_equal_MR_Box2i(const MR_Box2i *_this, const MR_Box2i *a)
MRC_API MR_Vector2i64 MR_Box2i64_getBoxClosestPointTo(const MR_Box2i64 *_this, const MR_Vector2i64 *pt)
MRC_API float MR_Box1f_getDistanceSq_float(const MR_Box1f *_this, const float *pt)
MRC_API void MR_Box_unsigned_short_DestroyArray(const MR_Box_unsigned_short *_this)
Destroys a heap-allocated array of MR_Box_unsigned_short. Does nothing if the pointer is null.
MRC_API unsigned short MR_Box_unsigned_short_getProjection(const MR_Box_unsigned_short *_this, const unsigned short *pt)
MRC_API void MR_Box1f_include_float(MR_Box1f *_this, const float *pt)
struct MR_Box2f MR_Box2f
MRC_API MR_int64_t MR_Box2i64_getDistanceSq_MR_Box2i64(const MR_Box2i64 *_this, const MR_Box2i64 *b)
MRC_API float MR_Box2f_getDistanceSq_MR_Vector2f(const MR_Box2f *_this, const MR_Vector2f *pt)
MRC_API bool MR_equal_MR_Box1d(const MR_Box1d *_this, const MR_Box1d *a)
MRC_API int MR_Box3i_volume(const MR_Box3i *_this)
MRC_API const int * MR_Box_unsigned_short_Get_elements(void)
MRC_API float MR_Box3f_diagonal(const MR_Box3f *_this)
MRC_API MR_std_istream * MR_input_MR_Box_unsigned_short(MR_std_istream *s, MR_Box_unsigned_short *box)
MRC_API MR_Box3i64 MR_Box3i64_intersection(const MR_Box3i64 *_this, const MR_Box3i64 *b)
MRC_API bool MR_not_equal_MR_Box2f(const MR_Box2f *_this, const MR_Box2f *a)
MRC_API int MR_Box1i_volume(const MR_Box1i *_this)
MRC_API MR_int64_t MR_Box1i64_getProjection(const MR_Box1i64 *_this, const MR_int64_t *pt)
MRC_API void MR_Box3i_include_MR_Vector3i(MR_Box3i *_this, const MR_Vector3i *pt)
MRC_API MR_Box3i MR_Box3i_intersection(const MR_Box3i *_this, const MR_Box3i *b)
MRC_API MR_Vector2f MR_Box2f_getBoxClosestPointTo(const MR_Box2f *_this, const MR_Vector2f *pt)
MRC_API MR_Box3i * MR_Box3i_DefaultConstructArray(size_t num_elems)
MRC_API MR_SimpleVolumeMinMaxU16 * MR_Box_unsigned_short_MutableStaticDowncastTo_MR_SimpleVolumeMinMaxU16(MR_Box_unsigned_short *object)
MRC_API bool MR_equal_MR_Box2f(const MR_Box2f *_this, const MR_Box2f *a)
MRC_API float MR_Box2f_diagonal(const MR_Box2f *_this)
MRC_API MR_Box1i MR_Box1i_intersection(const MR_Box1i *_this, const MR_Box1i *b)
MRC_API MR_std_ostream * MR_print_MR_Box2d(MR_std_ostream *s, const MR_Box2d *box)
MRC_API MR_std_ostream * MR_print_MR_Box3f(MR_std_ostream *s, const MR_Box3f *box)
MRC_API const MR_Vector3i64 * MR_Box3i64_index_const(const MR_Box3i64 *_this, int e)
MRC_API MR_Box3d MR_Box3d_insignificantlyExpanded(const MR_Box3d *_this)
MRC_API void MR_Box3f_include_MR_Box3f(MR_Box3f *_this, const MR_Box3f *b)
MRC_API float * MR_Box1f_index(MR_Box1f *_this, int e)
MRC_API bool MR_Box1f_contains_float(const MR_Box1f *_this, const float *pt)
MRC_API const int * MR_Box3i64_Get_elements(void)
MRC_API MR_Box1d * MR_Box1d_intersect(MR_Box1d *_this, const MR_Box1d *b)
MRC_API MR_Box2i MR_Box2i_fromMinAndSize(const MR_Vector2i *min, const MR_Vector2i *size)
struct MR_NoInit MR_NoInit
Definition MRBox.h:15
MRC_API bool MR_Box1i_contains_int(const MR_Box1i *_this, const int *pt)
MRC_API unsigned short MR_Box_unsigned_short_corner(const MR_Box_unsigned_short *_this, const bool *c)
MRC_API MR_Box3f MR_Box3f_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Vector3d MR_Box3d_size(const MR_Box3d *_this)
MRC_API bool MR_Box2i_contains_MR_Box2i(const MR_Box2i *_this, const MR_Box2i *otherbox)
MRC_API MR_Box3f * MR_Box3f_DefaultConstructArray(size_t num_elems)
MRC_API int MR_Box1i_getDistanceSq_int(const MR_Box1i *_this, const int *pt)
MRC_API const float * MR_Box1f_index_const(const MR_Box1f *_this, int e)
MRC_API MR_std_ostream * MR_print_MR_Box1i64(MR_std_ostream *s, const MR_Box1i64 *box)
MRC_API MR_std_istream * MR_input_MR_Box1i64(MR_std_istream *s, MR_Box1i64 *box)
MRC_API const MR_int64_t * MR_Box1i64_index_const(const MR_Box1i64 *_this, int e)
MRC_API double MR_Box1d_getDistanceSq_MR_Box1d(const MR_Box1d *_this, const MR_Box1d *b)
MRC_API bool MR_Box1i_getMinBoxCorner(const int *n)
MRC_API MR_Vector3i MR_Box3i_size(const MR_Box3i *_this)
MRC_API bool MR_Box3f_valid(const MR_Box3f *_this)
MRC_API bool MR_Box1i64_getMinBoxCorner(const MR_int64_t *n)
MRC_API MR_Box1f * MR_Box1f_intersect(MR_Box1f *_this, const MR_Box1f *b)
MRC_API double MR_Box1d_getProjection(const MR_Box1d *_this, const double *pt)
MRC_API MR_std_ostream * MR_print_MR_Box3i(MR_std_ostream *s, const MR_Box3i *box)
struct MR_Box1i64 MR_Box1i64
MRC_API bool MR_equal_MR_Box2i(const MR_Box2i *_this, const MR_Box2i *a)
MRC_API const double * MR_Box1d_index_const(const MR_Box1d *_this, int e)
MRC_API MR_int64_t MR_Box2i64_volume(const MR_Box2i64 *_this)
MRC_API bool MR_Box3i64_valid(const MR_Box3i64 *_this)
MRC_API bool MR_not_equal_MR_Box2d(const MR_Box2d *_this, const MR_Box2d *a)
MRC_API MR_Vector2b MR_Box2i_getMinBoxCorner(const MR_Vector2i *n)
MRC_API MR_int64_t MR_Box2i64_diagonal(const MR_Box2i64 *_this)
MRC_API MR_Vector3d * MR_Box3d_index(MR_Box3d *_this, int e)
MRC_API MR_std_ostream * MR_print_MR_Box2f(MR_std_ostream *s, const MR_Box2f *box)
MRC_API bool MR_equal_MR_Box1i64(const MR_Box1i64 *_this, const MR_Box1i64 *a)
MRC_API int MR_Box3i_getDistanceSq_MR_Box3i(const MR_Box3i *_this, const MR_Box3i *b)
MRC_API MR_std_istream * MR_input_MR_Box3i(MR_std_istream *s, MR_Box3i *box)
MRC_API bool MR_Box3i64_contains_MR_Vector3i64(const MR_Box3i64 *_this, const MR_Vector3i64 *pt)
MRC_API float MR_Box1f_getDistanceSq_MR_Box1f(const MR_Box1f *_this, const MR_Box1f *b)
MRC_API bool MR_Box2d_contains_MR_Box2d(const MR_Box2d *_this, const MR_Box2d *otherbox)
MRC_API MR_Box3d MR_Box3d_intersection(const MR_Box3d *_this, const MR_Box3d *b)
MRC_API MR_std_ostream * MR_print_MR_Box1d(MR_std_ostream *s, const MR_Box1d *box)
MRC_API MR_Box2d * MR_Box2d_DefaultConstructArray(size_t num_elems)
MRC_API void MR_Box_unsigned_short_include_unsigned_short(MR_Box_unsigned_short *_this, const unsigned short *pt)
MRC_API bool MR_Box1d_intersects(const MR_Box1d *_this, const MR_Box1d *b)
MRC_API void MR_Box2d_include_MR_Box2d(MR_Box2d *_this, const MR_Box2d *b)
MRC_API bool MR_Box2f_valid(const MR_Box2f *_this)
MRC_API bool MR_Box3i64_intersects(const MR_Box3i64 *_this, const MR_Box3i64 *b)
MRC_API MR_Box2f MR_Box2f_expanded(const MR_Box2f *_this, const MR_Vector2f *expansion)
MRC_API MR_Box3i * MR_Box3i_intersect(MR_Box3i *_this, const MR_Box3i *b)
MRC_API void MR_Box3i64_include_MR_Vector3i64(MR_Box3i64 *_this, const MR_Vector3i64 *pt)
MRC_API MR_Box2i64 MR_Box2i64_insignificantlyExpanded(const MR_Box2i64 *_this)
MRC_API MR_Box2d MR_Box2d_insignificantlyExpanded(const MR_Box2d *_this)
MRC_API bool MR_Box3f_contains_MR_Box3f(const MR_Box3f *_this, const MR_Box3f *otherbox)
MRC_API const MR_SimpleVolumeMinMaxU16 * MR_Box_unsigned_short_StaticDowncastTo_MR_SimpleVolumeMinMaxU16(const MR_Box_unsigned_short *object)
MRC_API float MR_Box1f_getBoxClosestPointTo(const MR_Box1f *_this, const float *pt)
MRC_API MR_std_istream * MR_input_MR_Box1f(MR_std_istream *s, MR_Box1f *box)
MRC_API const int * MR_Box3i_Get_elements(void)
MRC_API MR_Vector2b MR_Box2i64_getMinBoxCorner(const MR_Vector2i64 *n)
MRC_API MR_Box3i64 MR_Box3i64_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_std_ostream * MR_print_MR_Box2i(MR_std_ostream *s, const MR_Box2i *box)
MRC_API bool MR_Box3i_contains_MR_Vector3i(const MR_Box3i *_this, const MR_Vector3i *pt)
MRC_API MR_Box2i64 MR_Box2i64_intersection(const MR_Box2i64 *_this, const MR_Box2i64 *b)
MRC_API MR_Vector3i64 MR_Box3i64_getBoxClosestPointTo(const MR_Box3i64 *_this, const MR_Vector3i64 *pt)
MRC_API bool MR_equal_MR_Box1f(const MR_Box1f *_this, const MR_Box1f *a)
MRC_API bool MR_Box3i64_contains_MR_Box3i64(const MR_Box3i64 *_this, const MR_Box3i64 *otherbox)
MRC_API MR_int64_t MR_Box1i64_volume(const MR_Box1i64 *_this)
MRC_API const unsigned short * MR_Box_unsigned_short_index_const(const MR_Box_unsigned_short *_this, int e)
MRC_API MR_Vector2i64 MR_Box2i64_size(const MR_Box2i64 *_this)
MRC_API float MR_Box1f_volume(const MR_Box1f *_this)
MRC_API MR_Box1d MR_Box1d_Construct_2(const double *min, const double *max)
struct MR_Box2i64 MR_Box2i64
MRC_API bool MR_Box1f_valid(const MR_Box1f *_this)
MRC_API bool MR_Box3i_contains_MR_Box3i(const MR_Box3i *_this, const MR_Box3i *otherbox)
MRC_API MR_Vector2i64 MR_Box2i64_center(const MR_Box2i64 *_this)
MRC_API MR_Box3i64 * MR_Box3i64_DefaultConstructArray(size_t num_elems)
MRC_API bool MR_Box1i_contains_MR_Box1i(const MR_Box1i *_this, const MR_Box1i *otherbox)
MRC_API MR_int64_t MR_Box3i64_getDistanceSq_MR_Box3i64(const MR_Box3i64 *_this, const MR_Box3i64 *b)
MRC_API void MR_Box1d_include_MR_Box1d(MR_Box1d *_this, const MR_Box1d *b)
MRC_API MR_Box1i64 MR_Box1i64_expanded(const MR_Box1i64 *_this, const MR_int64_t *expansion)
MRC_API MR_Vector2b MR_Box2f_getMinBoxCorner(const MR_Vector2f *n)
MRC_API const MR_VdbVolume * MR_Box1f_StaticDowncastTo_MR_VdbVolume(const MR_Box1f *object)
MRC_API float MR_Box1f_center(const MR_Box1f *_this)
MRC_API MR_Vector3i MR_Box3i_corner(const MR_Box3i *_this, const MR_Vector3b *c)
struct MR_Box3f MR_Box3f
MRC_API bool MR_equal_MR_Box3f(const MR_Box3f *_this, const MR_Box3f *a)
MRC_API MR_Vector2i64 * MR_Box2i64_index(MR_Box2i64 *_this, int e)
MRC_API MR_Box3i64 * MR_Box3i64_intersect(MR_Box3i64 *_this, const MR_Box3i64 *b)
MRC_API MR_Box3i64 MR_Box3i64_Construct_2(const MR_Vector3i64 *min, const MR_Vector3i64 *max)
MRC_API MR_Box1f MR_Box1f_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API bool MR_Box2d_intersects(const MR_Box2d *_this, const MR_Box2d *b)
MRC_API MR_Box3i MR_Box3i_expanded(const MR_Box3i *_this, const MR_Vector3i *expansion)
MRC_API bool MR_Box2f_contains_MR_Box2f(const MR_Box2f *_this, const MR_Box2f *otherbox)
MRC_API bool MR_not_equal_MR_Box3f(const MR_Box3f *_this, const MR_Box3f *a)
MRC_API unsigned short * MR_Box_unsigned_short_index(MR_Box_unsigned_short *_this, int e)
MRC_API MR_Box2i MR_Box2i_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API unsigned short MR_Box_unsigned_short_getDistanceSq_MR_Box_unsigned_short(const MR_Box_unsigned_short *_this, const MR_Box_unsigned_short *b)
MRC_API MR_Vector2b MR_Box2d_getMinBoxCorner(const MR_Vector2d *n)
MRC_API void MR_Box3d_include_MR_Box3d(MR_Box3d *_this, const MR_Box3d *b)
struct MR_VdbVolume MR_VdbVolume
Definition MRBox.h:18
MRC_API const int * MR_Box2i_Get_elements(void)
MRC_API MR_Vector3b MR_Box3i_getMaxBoxCorner(const MR_Vector3i *n)
MRC_API MR_Box1f MR_Box1f_Construct_2(const float *min, const float *max)
MRC_API bool MR_Box1i64_intersects(const MR_Box1i64 *_this, const MR_Box1i64 *b)
MRC_API void MR_Box2f_include_MR_Vector2f(MR_Box2f *_this, const MR_Vector2f *pt)
MRC_API unsigned short MR_Box_unsigned_short_getDistanceSq_unsigned_short(const MR_Box_unsigned_short *_this, const unsigned short *pt)
MRC_API MR_Vector3b MR_Box3f_getMaxBoxCorner(const MR_Vector3f *n)
MRC_API MR_Box_unsigned_short * MR_Box_unsigned_short_DefaultConstructArray(size_t num_elems)
MRC_API MR_Box1d MR_Box1d_insignificantlyExpanded(const MR_Box1d *_this)
MRC_API double MR_Box1d_getBoxClosestPointTo(const MR_Box1d *_this, const double *pt)
MRC_API MR_Box1f MR_Box1f_expanded(const MR_Box1f *_this, const float *expansion)
MRC_API MR_std_ostream * MR_print_MR_Box_unsigned_short(MR_std_ostream *s, const MR_Box_unsigned_short *box)
struct MR_Box1d MR_Box1d
MRC_API bool MR_Box3i_valid(const MR_Box3i *_this)
MRC_API MR_Box2d MR_Box2d_Construct_2(const MR_Vector2d *min, const MR_Vector2d *max)
MRC_API MR_Vector2b MR_Box2i64_getMaxBoxCorner(const MR_Vector2i64 *n)
MRC_API MR_Box1i64 MR_Box1i64_intersection(const MR_Box1i64 *_this, const MR_Box1i64 *b)
MRC_API bool MR_Box1d_contains_MR_Box1d(const MR_Box1d *_this, const MR_Box1d *otherbox)
MRC_API void MR_Box3i_include_MR_Box3i(MR_Box3i *_this, const MR_Box3i *b)
MRC_API MR_Box1i64 MR_Box1i64_insignificantlyExpanded(const MR_Box1i64 *_this)
MRC_API bool MR_not_equal_MR_Box1i64(const MR_Box1i64 *_this, const MR_Box1i64 *a)
MRC_API bool MR_not_equal_MR_Box1i(const MR_Box1i *_this, const MR_Box1i *a)
MRC_API MR_Box2f MR_Box2f_intersection(const MR_Box2f *_this, const MR_Box2f *b)
MRC_API MR_Box_unsigned_short * MR_Box_unsigned_short_intersection(const MR_Box_unsigned_short *_this, const MR_Box_unsigned_short *b)
MRC_API MR_Vector2d MR_Box2d_getProjection(const MR_Box2d *_this, const MR_Vector2d *pt)
MRC_API MR_Vector2b MR_Box2f_getMaxBoxCorner(const MR_Vector2f *n)
MRC_API int MR_Box2i_diagonal(const MR_Box2i *_this)
MRC_API MR_Vector3f MR_Box3f_getBoxClosestPointTo(const MR_Box3f *_this, const MR_Vector3f *pt)
MRC_API bool MR_Box1d_contains_double(const MR_Box1d *_this, const double *pt)
MRC_API MR_Box1d MR_Box1d_fromMinAndSize(const double *min, const double *size)
MRC_API MR_Box3d * MR_Box3d_DefaultConstructArray(size_t num_elems)
MRC_API MR_std_ostream * MR_print_MR_Box2i64(MR_std_ostream *s, const MR_Box2i64 *box)
MRC_API const MR_Vector2f * MR_Box2f_index_const(const MR_Box2f *_this, int e)
MRC_API MR_Vector3f * MR_Box3f_index(MR_Box3f *_this, int e)
MRC_API bool MR_Box1i_intersects(const MR_Box1i *_this, const MR_Box1i *b)
MRC_API MR_Box1f * MR_Box1f_DefaultConstructArray(size_t num_elems)
MRC_API const int * MR_Box1i_index_const(const MR_Box1i *_this, int e)
MRC_API const int * MR_Box1i64_Get_elements(void)
MRC_API MR_Box2i MR_Box2i_Construct_1(const MR_NoInit *_1)
MRC_API int MR_Box1i_getBoxClosestPointTo(const MR_Box1i *_this, const int *pt)
MRC_API MR_Vector2i64 MR_Box2i64_getProjection(const MR_Box2i64 *_this, const MR_Vector2i64 *pt)
MRC_API float MR_Box1f_corner(const MR_Box1f *_this, const bool *c)
MRC_API MR_int64_t MR_Box1i64_center(const MR_Box1i64 *_this)
MRC_API MR_std_ostream * MR_print_MR_Box1f(MR_std_ostream *s, const MR_Box1f *box)
MRC_API double MR_Box3d_getDistanceSq_MR_Box3d(const MR_Box3d *_this, const MR_Box3d *b)
MRC_API bool MR_equal_MR_Box1i(const MR_Box1i *_this, const MR_Box1i *a)
MRC_API MR_Box_unsigned_short * MR_Box_unsigned_short_DefaultConstruct(void)
MRC_API int MR_Box1i_size(const MR_Box1i *_this)
MRC_API bool MR_Box3f_intersects(const MR_Box3f *_this, const MR_Box3f *b)
MRC_API bool MR_Box3f_contains_MR_Vector3f(const MR_Box3f *_this, const MR_Vector3f *pt)
MRC_API bool MR_Box2i_intersects(const MR_Box2i *_this, const MR_Box2i *b)
MRC_API MR_Box2f MR_Box2f_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Box1i64 MR_Box1i64_fromMinAndSize(const MR_int64_t *min, const MR_int64_t *size)
MRC_API MR_Box2d MR_Box2d_Construct_1(const MR_NoInit *_1)
MRC_API MR_Vector2d * MR_Box2d_index(MR_Box2d *_this, int e)
MRC_API void MR_Box2f_include_MR_Box2f(MR_Box2f *_this, const MR_Box2f *b)
MRC_API bool MR_equal_MR_Box2d(const MR_Box2d *_this, const MR_Box2d *a)
MRC_API MR_Box3i64 MR_Box3i64_insignificantlyExpanded(const MR_Box3i64 *_this)
MRC_API bool MR_Box_unsigned_short_contains_unsigned_short(const MR_Box_unsigned_short *_this, const unsigned short *pt)
MRC_API bool MR_equal_MR_Box3d(const MR_Box3d *_this, const MR_Box3d *a)
MRC_API bool MR_Box1f_getMinBoxCorner(const float *n)
MRC_API MR_Box2i MR_Box2i_expanded(const MR_Box2i *_this, const MR_Vector2i *expansion)
MRC_API MR_Vector2d MR_Box2d_corner(const MR_Box2d *_this, const MR_Vector2b *c)
MRC_API bool MR_Box_unsigned_short_getMaxBoxCorner(const unsigned short *n)
MRC_API MR_Vector3b MR_Box3f_getMinBoxCorner(const MR_Vector3f *n)
MRC_API int * MR_Box1i_index(MR_Box1i *_this, int e)
MRC_API MR_Vector3b MR_Box3d_getMaxBoxCorner(const MR_Vector3d *n)
MRC_API bool MR_Box1d_getMaxBoxCorner(const double *n)
MRC_API MR_Box2d * MR_Box2d_intersect(MR_Box2d *_this, const MR_Box2d *b)
MRC_API bool MR_Box1i64_contains_MR_Box1i64(const MR_Box1i64 *_this, const MR_Box1i64 *otherbox)
MRC_API void MR_Box2d_include_MR_Vector2d(MR_Box2d *_this, const MR_Vector2d *pt)
MRC_API MR_Vector2i * MR_Box2i_index(MR_Box2i *_this, int e)
MRC_API MR_Box_unsigned_short * MR_Box_unsigned_short_OffsetMutablePtr(MR_Box_unsigned_short *ptr, ptrdiff_t i)
MRC_API bool MR_not_equal_MR_Box2i64(const MR_Box2i64 *_this, const MR_Box2i64 *a)
MRC_API MR_Box1i64 * MR_Box1i64_intersect(MR_Box1i64 *_this, const MR_Box1i64 *b)
MRC_API int MR_Box3i_getDistanceSq_MR_Vector3i(const MR_Box3i *_this, const MR_Vector3i *pt)
MRC_API MR_Vector3i * MR_Box3i_index(MR_Box3i *_this, int e)
MRC_API void MR_Box3f_include_MR_Vector3f(MR_Box3f *_this, const MR_Vector3f *pt)
MRC_API bool MR_not_equal_MR_Box3i64(const MR_Box3i64 *_this, const MR_Box3i64 *a)
MRC_API MR_Box1f MR_Box1f_fromMinAndSize(const float *min, const float *size)
MRC_API MR_Vector2f MR_Box2f_center(const MR_Box2f *_this)
MRC_API MR_Box3i MR_Box3i_Construct_1(const MR_NoInit *_1)
MRC_API void MR_Box_unsigned_short_include_MR_Box_unsigned_short(MR_Box_unsigned_short *_this, const MR_Box_unsigned_short *b)
MRC_API MR_Vector2d MR_Box2d_getBoxClosestPointTo(const MR_Box2d *_this, const MR_Vector2d *pt)
MRC_API bool MR_Box3i_intersects(const MR_Box3i *_this, const MR_Box3i *b)
MRC_API MR_Vector3f MR_Box3f_center(const MR_Box3f *_this)
MRC_API double MR_Box2d_getDistanceSq_MR_Box2d(const MR_Box2d *_this, const MR_Box2d *b)
MRC_API MR_Vector3d MR_Box3d_corner(const MR_Box3d *_this, const MR_Vector3b *c)
struct MR_Box3d MR_Box3d
MRC_API int MR_Box3i_diagonal(const MR_Box3i *_this)
MRC_API const int * MR_Box1d_Get_elements(void)
MRC_API MR_std_istream * MR_input_MR_Box2f(MR_std_istream *s, MR_Box2f *box)
MRC_API MR_Vector2b MR_Box2d_getMaxBoxCorner(const MR_Vector2d *n)
MRC_API MR_Vector2b MR_Box2i_getMaxBoxCorner(const MR_Vector2i *n)
MRC_API float MR_Box1f_size(const MR_Box1f *_this)
MRC_API float MR_Box1f_diagonal(const MR_Box1f *_this)
MRC_API const MR_Vector3i * MR_Box3i_index_const(const MR_Box3i *_this, int e)
MRC_API bool MR_Box2i64_valid(const MR_Box2i64 *_this)
MRC_API float MR_Box3f_getDistanceSq_MR_Vector3f(const MR_Box3f *_this, const MR_Vector3f *pt)
MRC_API MR_Box2d MR_Box2d_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Vector2f MR_Box2f_getProjection(const MR_Box2f *_this, const MR_Vector2f *pt)
MRC_API unsigned short MR_Box_unsigned_short_center(const MR_Box_unsigned_short *_this)
MRC_API double MR_Box1d_size(const MR_Box1d *_this)
MRC_API MR_Box2d MR_Box2d_fromMinAndSize(const MR_Vector2d *min, const MR_Vector2d *size)
MRC_API MR_Box_unsigned_short * MR_Box_unsigned_short_insignificantlyExpanded(const MR_Box_unsigned_short *_this)
MRC_API void MR_Box1i64_include_int64_t(MR_Box1i64 *_this, const MR_int64_t *pt)
MRC_API MR_Box2i MR_Box2i_Construct_2(const MR_Vector2i *min, const MR_Vector2i *max)
MRC_API MR_Vector2d MR_Box2d_center(const MR_Box2d *_this)
MRC_API MR_int64_t MR_Box1i64_getBoxClosestPointTo(const MR_Box1i64 *_this, const MR_int64_t *pt)
MRC_API const MR_Vector2i * MR_Box2i_index_const(const MR_Box2i *_this, int e)
MRC_API bool MR_Box3d_contains_MR_Box3d(const MR_Box3d *_this, const MR_Box3d *otherbox)
MRC_API MR_Box3i MR_Box3i_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API bool MR_Box2d_valid(const MR_Box2d *_this)
MRC_API MR_std_ostream * MR_print_MR_Box1i(MR_std_ostream *s, const MR_Box1i *box)
MRC_API MR_Box3f MR_Box3f_expanded(const MR_Box3f *_this, const MR_Vector3f *expansion)
MRC_API unsigned short MR_Box_unsigned_short_size(const MR_Box_unsigned_short *_this)
MRC_API MR_Box2f MR_Box2f_insignificantlyExpanded(const MR_Box2f *_this)
MRC_API bool MR_Box1i_valid(const MR_Box1i *_this)
MRC_API MR_Box3f MR_Box3f_insignificantlyExpanded(const MR_Box3f *_this)
MRC_API MR_Box1i MR_Box1i_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Box1i64 MR_Box1i64_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API void MR_Box1i64_include_MR_Box1i64(MR_Box1i64 *_this, const MR_Box1i64 *b)
struct MR_SimpleVolumeMinMax MR_SimpleVolumeMinMax
Definition MRBox.h:16
MRC_API bool MR_Box2i_contains_MR_Vector2i(const MR_Box2i *_this, const MR_Vector2i *pt)
MRC_API MR_Box1i64 MR_Box1i64_Construct_1(const MR_NoInit *_1)
MRC_API MR_Vector3i MR_Box3i_getBoxClosestPointTo(const MR_Box3i *_this, const MR_Vector3i *pt)
MRC_API void MR_Box2i64_include_MR_Vector2i64(MR_Box2i64 *_this, const MR_Vector2i64 *pt)
MRC_API bool MR_equal_MR_Box3i64(const MR_Box3i64 *_this, const MR_Box3i64 *a)
MRC_API MR_Box1d MR_Box1d_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Box2i64 MR_Box2i64_expanded(const MR_Box2i64 *_this, const MR_Vector2i64 *expansion)
MRC_API MR_Vector2i MR_Box2i_size(const MR_Box2i *_this)
MRC_API MR_Box3i MR_Box3i_Construct_2(const MR_Vector3i *min, const MR_Vector3i *max)
MRC_API float MR_Box3f_volume(const MR_Box3f *_this)
MRC_API bool MR_Box1i64_valid(const MR_Box1i64 *_this)
MRC_API bool MR_Box2i64_intersects(const MR_Box2i64 *_this, const MR_Box2i64 *b)
MRC_API float MR_Box1f_getProjection(const MR_Box1f *_this, const float *pt)
MRC_API MR_Box3i64 MR_Box3i64_Construct_1(const MR_NoInit *_1)
MRC_API MR_std_istream * MR_input_MR_Box1i(MR_std_istream *s, MR_Box1i *box)
MRC_API MR_std_istream * MR_input_MR_Box1d(MR_std_istream *s, MR_Box1d *box)
MRC_API MR_Box3f MR_Box3f_fromMinAndSize(const MR_Vector3f *min, const MR_Vector3f *size)
MRC_API const MR_Vector3d * MR_Box3d_index_const(const MR_Box3d *_this, int e)
MRC_API MR_Box1i MR_Box1i_Construct_2(const int *min, const int *max)
MRC_API MR_Box2i64 MR_Box2i64_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Vector3i64 MR_Box3i64_center(const MR_Box3i64 *_this)
MRC_API const int * MR_Box3f_Get_elements(void)
MRC_API MR_Box1i MR_Box1i_insignificantlyExpanded(const MR_Box1i *_this)
MRC_API const MR_SimpleVolumeMinMax * MR_Box1f_StaticDowncastTo_MR_SimpleVolumeMinMax(const MR_Box1f *object)
MRC_API bool MR_Box_unsigned_short_contains_MR_Box_unsigned_short(const MR_Box_unsigned_short *_this, const MR_Box_unsigned_short *otherbox)
MRC_API const MR_Box_unsigned_short * MR_Box_unsigned_short_OffsetPtr(const MR_Box_unsigned_short *ptr, ptrdiff_t i)
MRC_API MR_Box3d MR_Box3d_Construct_1(const MR_NoInit *_1)
MRC_API MR_Box3d MR_Box3d_expanded(const MR_Box3d *_this, const MR_Vector3d *expansion)
MRC_API MR_Box3f MR_Box3f_Construct_1(const MR_NoInit *_1)
MRC_API MR_Box1i MR_Box1i_fromMinAndSize(const int *min, const int *size)
MRC_API const int * MR_Box2f_Get_elements(void)
MRC_API bool MR_Box2f_contains_MR_Vector2f(const MR_Box2f *_this, const MR_Vector2f *pt)
MRC_API MR_Vector3i64 MR_Box3i64_corner(const MR_Box3i64 *_this, const MR_Vector3b *c)
MRC_API MR_Box3d MR_Box3d_fromMinAndSize(const MR_Vector3d *min, const MR_Vector3d *size)
MRC_API const int * MR_Box2d_Get_elements(void)
MRC_API MR_std_ostream * MR_print_MR_Box3d(MR_std_ostream *s, const MR_Box3d *box)
MRC_API void MR_Box_unsigned_short_Set_max(MR_Box_unsigned_short *_this, unsigned short value)
MRC_API MR_Box2i64 MR_Box2i64_Construct_2(const MR_Vector2i64 *min, const MR_Vector2i64 *max)
MRC_API MR_int64_t MR_Box1i64_size(const MR_Box1i64 *_this)
MRC_API MR_Vector3f MR_Box3f_getProjection(const MR_Box3f *_this, const MR_Vector3f *pt)
MRC_API MR_Vector2i MR_Box2i_center(const MR_Box2i *_this)
MRC_API MR_Box1i MR_Box1i_Construct_1(const MR_NoInit *_1)
MRC_API bool MR_Box2f_intersects(const MR_Box2f *_this, const MR_Box2f *b)
MRC_API bool MR_Box1i_getMaxBoxCorner(const int *n)
MRC_API MR_Box_unsigned_short * MR_Box_unsigned_short_fromMinAndSize(const unsigned short *min, const unsigned short *size)
MRC_API MR_Vector3d MR_Box3d_getBoxClosestPointTo(const MR_Box3d *_this, const MR_Vector3d *pt)
MRC_API MR_Box_unsigned_short * MR_Box_unsigned_short_ConstructFromAnother(const MR_Box_unsigned_short *_other)
struct MR_Box1i MR_Box1i
MRC_API bool MR_Box_unsigned_short_valid(const MR_Box_unsigned_short *_this)
MRC_API float MR_Box2f_getDistanceSq_MR_Box2f(const MR_Box2f *_this, const MR_Box2f *b)
MRC_API bool MR_Box3d_intersects(const MR_Box3d *_this, const MR_Box3d *b)
MRC_API MR_Vector3b MR_Box3i64_getMinBoxCorner(const MR_Vector3i64 *n)
MRC_API MR_Box1i * MR_Box1i_intersect(MR_Box1i *_this, const MR_Box1i *b)
MRC_API MR_Box1i MR_Box1i_expanded(const MR_Box1i *_this, const int *expansion)
MRC_API double MR_Box3d_diagonal(const MR_Box3d *_this)
MRC_API unsigned short MR_Box_unsigned_short_volume(const MR_Box_unsigned_short *_this)
MRC_API const MR_Vector2d * MR_Box2d_index_const(const MR_Box2d *_this, int e)
MRC_API void MR_Box_unsigned_short_Destroy(const MR_Box_unsigned_short *_this)
Destroys a heap-allocated instance of MR_Box_unsigned_short. Does nothing if the pointer is null.
MRC_API MR_Box_unsigned_short * MR_Box_unsigned_short_AssignFromAnother(MR_Box_unsigned_short *_this, const MR_Box_unsigned_short *_other)
MRC_API MR_Box2f MR_Box2f_Construct_1(const MR_NoInit *_1)
MRC_API MR_Box2f * MR_Box2f_intersect(MR_Box2f *_this, const MR_Box2f *b)
MRC_API void MR_Box_unsigned_short_Set_min(MR_Box_unsigned_short *_this, unsigned short value)
MRC_API MR_Box2i * MR_Box2i_intersect(MR_Box2i *_this, const MR_Box2i *b)
MRC_API int MR_Box2i_getDistanceSq_MR_Box2i(const MR_Box2i *_this, const MR_Box2i *b)
MRC_API bool MR_Box_unsigned_short_intersects(const MR_Box_unsigned_short *_this, const MR_Box_unsigned_short *b)
struct MR_SimpleVolumeMinMaxU16 MR_SimpleVolumeMinMaxU16
Definition MRBox.h:17
MRC_API MR_Vector3i64 MR_Box3i64_size(const MR_Box3i64 *_this)
MRC_API MR_Box1f MR_Box1f_insignificantlyExpanded(const MR_Box1f *_this)
MRC_API bool MR_Box2i64_contains_MR_Vector2i64(const MR_Box2i64 *_this, const MR_Vector2i64 *pt)
MRC_API const int * MR_Box1f_Get_elements(void)
MRC_API double MR_Box1d_corner(const MR_Box1d *_this, const bool *c)
MRC_API MR_Box2i64 * MR_Box2i64_DefaultConstructArray(size_t num_elems)
MRC_API int MR_Box2i_getDistanceSq_MR_Vector2i(const MR_Box2i *_this, const MR_Vector2i *pt)
MRC_API MR_Box3i64 MR_Box3i64_fromMinAndSize(const MR_Vector3i64 *min, const MR_Vector3i64 *size)
struct MR_Box2d MR_Box2d
MRC_API MR_Box1i * MR_Box1i_DefaultConstructArray(size_t num_elems)
MRC_API MR_std_istream * MR_input_MR_Box3f(MR_std_istream *s, MR_Box3f *box)
MRC_API void MR_Box2i_include_MR_Vector2i(MR_Box2i *_this, const MR_Vector2i *pt)
MRC_API int MR_Box1i_corner(const MR_Box1i *_this, const bool *c)
MRC_API int MR_Box2i_volume(const MR_Box2i *_this)
MRC_API MR_int64_t MR_Box1i64_corner(const MR_Box1i64 *_this, const bool *c)
MRC_API void MR_Box1i_include_MR_Box1i(MR_Box1i *_this, const MR_Box1i *b)
MRC_API bool MR_equal_MR_Box2i64(const MR_Box2i64 *_this, const MR_Box2i64 *a)
MRC_API bool MR_not_equal_MR_Box3i(const MR_Box3i *_this, const MR_Box3i *a)
MRC_API const MR_Vector3f * MR_Box3f_index_const(const MR_Box3f *_this, int e)
MRC_API unsigned short MR_Box_unsigned_short_diagonal(const MR_Box_unsigned_short *_this)
struct MR_Box2i MR_Box2i
struct MR_Box_unsigned_short MR_Box_unsigned_short
Definition MRBox.h:129
MRC_API bool MR_not_equal_MR_Box_unsigned_short(const MR_Box_unsigned_short *_this, const MR_Box_unsigned_short *a)
MRC_API MR_Vector3d MR_Box3d_getProjection(const MR_Box3d *_this, const MR_Vector3d *pt)
MRC_API double MR_Box2d_getDistanceSq_MR_Vector2d(const MR_Box2d *_this, const MR_Vector2d *pt)
MRC_API MR_Box2d MR_Box2d_intersection(const MR_Box2d *_this, const MR_Box2d *b)
MRC_API MR_int64_t MR_Box1i64_getDistanceSq_MR_Box1i64(const MR_Box1i64 *_this, const MR_Box1i64 *b)
MRC_API int MR_Box1i_center(const MR_Box1i *_this)
MRC_API bool MR_Box1f_contains_MR_Box1f(const MR_Box1f *_this, const MR_Box1f *otherbox)
MRC_API bool MR_Box2d_contains_MR_Vector2d(const MR_Box2d *_this, const MR_Vector2d *pt)
MRC_API MR_Box3i MR_Box3i_fromMinAndSize(const MR_Vector3i *min, const MR_Vector3i *size)
MRC_API void MR_Box3d_include_MR_Vector3d(MR_Box3d *_this, const MR_Vector3d *pt)
MRC_API MR_Vector2f * MR_Box2f_index(MR_Box2f *_this, int e)
MRC_API unsigned short * MR_Box_unsigned_short_GetMutable_min(MR_Box_unsigned_short *_this)
MRC_API MR_int64_t MR_Box1i64_getDistanceSq_int64_t(const MR_Box1i64 *_this, const MR_int64_t *pt)
MRC_API MR_Vector3i MR_Box3i_getProjection(const MR_Box3i *_this, const MR_Vector3i *pt)
MRC_API bool MR_Box_unsigned_short_getMinBoxCorner(const unsigned short *n)
MRC_API MR_std_istream * MR_input_MR_Box3i64(MR_std_istream *s, MR_Box3i64 *box)
MRC_API void MR_Box2i64_include_MR_Box2i64(MR_Box2i64 *_this, const MR_Box2i64 *b)
MRC_API MR_Vector3f MR_Box3f_corner(const MR_Box3f *_this, const MR_Vector3b *c)
MRC_API void MR_Box2i_include_MR_Box2i(MR_Box2i *_this, const MR_Box2i *b)
MRC_API float MR_Box3f_getDistanceSq_MR_Box3f(const MR_Box3f *_this, const MR_Box3f *b)
MRC_API MR_Box1d MR_Box1d_expanded(const MR_Box1d *_this, const double *expansion)
struct MR_Box1f MR_Box1f
MRC_API MR_Vector3i64 * MR_Box3i64_index(MR_Box3i64 *_this, int e)
MRC_API double * MR_Box1d_index(MR_Box1d *_this, int e)
MRC_API MR_std_istream * MR_input_MR_Box3d(MR_std_istream *s, MR_Box3d *box)
MRC_API MR_int64_t MR_Box3i64_diagonal(const MR_Box3i64 *_this)
MRC_API MR_Box2i MR_Box2i_insignificantlyExpanded(const MR_Box2i *_this)
MRC_API MR_Vector3b MR_Box3i_getMinBoxCorner(const MR_Vector3i *n)
MRC_API MR_Box1i64 * MR_Box1i64_DefaultConstructArray(size_t num_elems)
MRC_API MR_Vector2i MR_Box2i_corner(const MR_Box2i *_this, const MR_Vector2b *c)
MRC_API MR_int64_t MR_Box3i64_getDistanceSq_MR_Vector3i64(const MR_Box3i64 *_this, const MR_Vector3i64 *pt)
MRC_API double MR_Box3d_volume(const MR_Box3d *_this)
MRC_API MR_Box2i * MR_Box2i_DefaultConstructArray(size_t num_elems)
MRC_API MR_Box3i MR_Box3i_insignificantlyExpanded(const MR_Box3i *_this)
MRC_API MR_Vector3d MR_Box3d_center(const MR_Box3d *_this)
MRC_API bool MR_Box2i_valid(const MR_Box2i *_this)
MRC_API MR_Vector2i MR_Box2i_getBoxClosestPointTo(const MR_Box2i *_this, const MR_Vector2i *pt)
MRC_API MR_Box2f MR_Box2f_Construct_2(const MR_Vector2f *min, const MR_Vector2f *max)
MRC_API MR_int64_t MR_Box3i64_volume(const MR_Box3i64 *_this)
MRC_API bool MR_Box3d_valid(const MR_Box3d *_this)
MRC_API double MR_Box1d_diagonal(const MR_Box1d *_this)
MRC_API MR_int64_t MR_Box1i64_diagonal(const MR_Box1i64 *_this)
MRC_API MR_Box2d MR_Box2d_expanded(const MR_Box2d *_this, const MR_Vector2d *expansion)
MRC_API MR_Box3f * MR_Box3f_intersect(MR_Box3f *_this, const MR_Box3f *b)
MRC_API double MR_Box1d_getDistanceSq_double(const MR_Box1d *_this, const double *pt)
MRC_API MR_std_istream * MR_input_MR_Box2i(MR_std_istream *s, MR_Box2i *box)
MRC_API void MR_Box1i_include_int(MR_Box1i *_this, const int *pt)
MRC_API bool MR_not_equal_MR_Box1f(const MR_Box1f *_this, const MR_Box1f *a)
MRC_API MR_Box2i MR_Box2i_intersection(const MR_Box2i *_this, const MR_Box2i *b)
MRC_API MR_VdbVolume * MR_Box1f_MutableStaticDowncastTo_MR_VdbVolume(MR_Box1f *object)
MRC_API bool MR_Box1i64_getMaxBoxCorner(const MR_int64_t *n)
MRC_API unsigned short * MR_Box_unsigned_short_GetMutable_max(MR_Box_unsigned_short *_this)
MRC_API MR_Box1i64 MR_Box1i64_Construct_2(const MR_int64_t *min, const MR_int64_t *max)
MRC_API MR_Vector2f MR_Box2f_corner(const MR_Box2f *_this, const MR_Vector2b *c)
MRC_API bool MR_equal_MR_Box3i(const MR_Box3i *_this, const MR_Box3i *a)
MRC_API MR_Box3i64 MR_Box3i64_expanded(const MR_Box3i64 *_this, const MR_Vector3i64 *expansion)
MRC_API double MR_Box1d_center(const MR_Box1d *_this)
MRC_API MR_Box3d MR_Box3d_Construct_2(const MR_Vector3d *min, const MR_Vector3d *max)
MRC_API void MR_Box3i64_include_MR_Box3i64(MR_Box3i64 *_this, const MR_Box3i64 *b)
MRC_API bool MR_not_equal_MR_Box1d(const MR_Box1d *_this, const MR_Box1d *a)
MRC_API MR_Box2i64 MR_Box2i64_Construct_1(const MR_NoInit *_1)
MRC_API MR_Box2i64 MR_Box2i64_fromMinAndSize(const MR_Vector2i64 *min, const MR_Vector2i64 *size)
MRC_API MR_Box2f MR_Box2f_fromMinAndSize(const MR_Vector2f *min, const MR_Vector2f *size)
MRC_API MR_Box_unsigned_short * MR_Box_unsigned_short_intersect(MR_Box_unsigned_short *_this, const MR_Box_unsigned_short *b)
struct MR_Box3i64 MR_Box3i64
MRC_API MR_int64_t MR_Box2i64_getDistanceSq_MR_Vector2i64(const MR_Box2i64 *_this, const MR_Vector2i64 *pt)
MRC_API const int * MR_Box1i_Get_elements(void)
MRC_API MR_Box1d MR_Box1d_intersection(const MR_Box1d *_this, const MR_Box1d *b)
MRC_API double MR_Box2d_diagonal(const MR_Box2d *_this)
MRC_API MR_Vector3i MR_Box3i_center(const MR_Box3i *_this)
MRC_API bool MR_equal_MR_Box_unsigned_short(const MR_Box_unsigned_short *_this, const MR_Box_unsigned_short *a)
MRC_API MR_Vector3b MR_Box3i64_getMaxBoxCorner(const MR_Vector3i64 *n)
MRC_API MR_Box2i64 * MR_Box2i64_intersect(MR_Box2i64 *_this, const MR_Box2i64 *b)
MRC_API double MR_Box3d_getDistanceSq_MR_Vector3d(const MR_Box3d *_this, const MR_Vector3d *pt)
MRC_API MR_std_istream * MR_input_MR_Box2d(MR_std_istream *s, MR_Box2d *box)
MRC_API int MR_Box1i_getProjection(const MR_Box1i *_this, const int *pt)
MRC_API MR_Box2f * MR_Box2f_DefaultConstructArray(size_t num_elems)
MRC_API void MR_Box1f_include_MR_Box1f(MR_Box1f *_this, const MR_Box1f *b)
MRC_API MR_Box1f MR_Box1f_intersection(const MR_Box1f *_this, const MR_Box1f *b)
MRC_API MR_SimpleVolumeMinMax * MR_Box1f_MutableStaticDowncastTo_MR_SimpleVolumeMinMax(MR_Box1f *object)
MRC_API MR_Box1d MR_Box1d_Construct_1(const MR_NoInit *_1)
MRC_API MR_Box1d * MR_Box1d_DefaultConstructArray(size_t num_elems)
MRC_API MR_Vector2d MR_Box2d_size(const MR_Box2d *_this)
MRC_API bool MR_Box1f_getMaxBoxCorner(const float *n)
struct MR_Box3i MR_Box3i
MRC_API bool MR_Box1f_intersects(const MR_Box1f *_this, const MR_Box1f *b)
MRC_API MR_std_ostream * MR_print_MR_Box3i64(MR_std_ostream *s, const MR_Box3i64 *box)
MRC_API MR_Box_unsigned_short * MR_Box_unsigned_short_Construct_2(const unsigned short *min, const unsigned short *max)
MRC_API MR_Box3f MR_Box3f_Construct_2(const MR_Vector3f *min, const MR_Vector3f *max)
MRC_API MR_Vector3i64 MR_Box3i64_getProjection(const MR_Box3i64 *_this, const MR_Vector3i64 *pt)
MRC_API int MR_Box1i_getDistanceSq_MR_Box1i(const MR_Box1i *_this, const MR_Box1i *b)
MRC_API const MR_Vector2i64 * MR_Box2i64_index_const(const MR_Box2i64 *_this, int e)
MRC_API bool MR_Box1i64_contains_int64_t(const MR_Box1i64 *_this, const MR_int64_t *pt)
MRC_API MR_int64_t * MR_Box1i64_index(MR_Box1i64 *_this, int e)
MRC_API const unsigned short * MR_Box_unsigned_short_Get_max(const MR_Box_unsigned_short *_this)
MRC_API bool MR_Box1d_valid(const MR_Box1d *_this)
MRC_API const unsigned short * MR_Box_unsigned_short_Get_min(const MR_Box_unsigned_short *_this)
MRC_API double MR_Box2d_volume(const MR_Box2d *_this)
MRC_API MR_Box3d * MR_Box3d_intersect(MR_Box3d *_this, const MR_Box3d *b)
MRC_API unsigned short MR_Box_unsigned_short_getBoxClosestPointTo(const MR_Box_unsigned_short *_this, const unsigned short *pt)
MRC_API MR_Box_unsigned_short * MR_Box_unsigned_short_Construct_1(const MR_NoInit *_1)
MRC_API bool MR_not_equal_MR_Box3d(const MR_Box3d *_this, const MR_Box3d *a)
MRC_API MR_Vector3b MR_Box3d_getMinBoxCorner(const MR_Vector3d *n)
MRC_API MR_Vector2f MR_Box2f_size(const MR_Box2f *_this)
MRC_API bool MR_Box1d_getMinBoxCorner(const double *n)
MRC_API double MR_Box1d_volume(const MR_Box1d *_this)
MRC_API MR_Vector2i MR_Box2i_getProjection(const MR_Box2i *_this, const MR_Vector2i *pt)
MRC_API void MR_Box1d_include_double(MR_Box1d *_this, const double *pt)
MRC_API MR_Vector2i64 MR_Box2i64_corner(const MR_Box2i64 *_this, const MR_Vector2b *c)
MRC_API MR_Box3f MR_Box3f_intersection(const MR_Box3f *_this, const MR_Box3f *b)
MRC_API const int * MR_Box2i64_Get_elements(void)
MRC_API MR_std_istream * MR_input_MR_Box2i64(MR_std_istream *s, MR_Box2i64 *box)
MRC_API float MR_Box2f_volume(const MR_Box2f *_this)
MRC_API MR_Box3d MR_Box3d_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API int MR_Box1i_diagonal(const MR_Box1i *_this)
struct MR_std_ostream MR_std_ostream
Definition MRCtm.h:31
struct MR_std_istream MR_std_istream
Definition MRCtm.h:28
int64_t MR_int64_t
Definition common.h:17
#define MRC_API
Definition exports.h:11
size_t size() const
Definition MRBox.h:54
double min
Definition MRBox.h:55
double max
Definition MRBox.h:56
Definition MRBox.h:46
float min
Definition MRBox.h:47
float max
Definition MRBox.h:48
Definition MRBox.h:34
MR_int64_t min
Definition MRBox.h:35
MR_int64_t max
Definition MRBox.h:36
Definition MRBox.h:26
int min
Definition MRBox.h:27
int max
Definition MRBox.h:28
Definition MRBox.h:86
MR_Vector2d min
Definition MRBox.h:87
MR_Vector2d max
Definition MRBox.h:88
Definition MRBox.h:78
MR_Vector2f max
Definition MRBox.h:80
MR_Vector2f min
Definition MRBox.h:79
Definition MRBox.h:70
MR_Vector2i64 min
Definition MRBox.h:71
MR_Vector2i64 max
Definition MRBox.h:72
Definition MRBox.h:62
MR_Vector2i min
Definition MRBox.h:63
MR_Vector2i max
Definition MRBox.h:64
Definition MRBox.h:118
MR_Vector3d min
Definition MRBox.h:119
MR_Vector3d max
Definition MRBox.h:120
Definition MRBox.h:110
MR_Vector3f min
Definition MRBox.h:111
MR_Vector3f max
Definition MRBox.h:112
Definition MRBox.h:102
MR_Vector3i64 max
Definition MRBox.h:104
MR_Vector3i64 min
Definition MRBox.h:103
Definition MRBox.h:94
MR_Vector3i min
Definition MRBox.h:95
MR_Vector3i max
Definition MRBox.h:96
Definition MRVector2.h:21
Definition MRVector2.h:53
Definition MRVector2.h:45
Definition MRVector2.h:37
Definition MRVector2.h:29
Definition MRVector3.h:25
Definition MRVector3.h:61
Definition MRVector3.h:52
Definition MRVector3.h:43
Definition MRVector3.h:34