MeshLib C Docs
Loading...
Searching...
No Matches
MRVector3.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
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13typedef struct MR_AffineXf3d MR_AffineXf3d; // Defined in `#include <MRCMesh/MRAffineXf.h>`.
14typedef struct MR_AffineXf3f MR_AffineXf3f; // Defined in `#include <MRCMesh/MRAffineXf.h>`.
15typedef struct MR_NoInit MR_NoInit; // Defined in `#include <MRCMesh/MRMeshFwd.h>`.
16typedef struct MR_std_pair_MR_Vector3d_MR_Vector3d MR_std_pair_MR_Vector3d_MR_Vector3d; // Defined in `#include <MRCMisc/std_pair_MR_Vector3d_MR_Vector3d.h>`.
17typedef struct MR_std_pair_MR_Vector3f_MR_Vector3f MR_std_pair_MR_Vector3f_MR_Vector3f; // Defined in `#include <MRCMisc/std_pair_MR_Vector3f_MR_Vector3f.h>`.
18
19
22typedef struct MR_Vector3b
23{
24 bool x;
25 bool y;
26 bool z;
28
31typedef struct MR_Vector3i
32{
33 int x;
34 int y;
35 int z;
37
46
49typedef struct MR_Vector3f
50{
51 float x;
52 float y;
53 float z;
55
58typedef struct MR_Vector3d
59{
60 double x;
61 double y;
62 double z;
64
68
72
75
80
84
87
90
93
96
99
103MRC_API const bool *MR_Vector3b_index_const(const MR_Vector3b *_this, int e);
104
109
113
117
122
127
128// NOTE: We use `std::declval()` in the operators below because libclang 18 in our binding generator is bugged and chokes on decltyping `a.x` and such. TODO fix this when we update libclang.
133
137
142
147
151
155
158
164
170
175
180
184
187
192
196
199
200// Here `T == U` doesn't seem to cause any issues in the C++ code, but we're still disabling it because it somehow gets emitted
201// when generating the bindings, and looks out of place there.
205
208
211
214
217
220
223
226
230MRC_API const int *MR_Vector3i_index_const(const MR_Vector3i *_this, int e);
231
236
240
244
249
254
259
260// NOTE: We use `std::declval()` in the operators below because libclang 18 in our binding generator is bugged and chokes on decltyping `a.x` and such. TODO fix this when we update libclang.
265
269
274
279
283
287
290
296
302
307
312
316
319
324
328
331
334
337
340
343
346
349
352
357
362
366
370
375
380
385
386// NOTE: We use `std::declval()` in the operators below because libclang 18 in our binding generator is bugged and chokes on decltyping `a.x` and such. TODO fix this when we update libclang.
391
395
400
405
409
413
416
422
428
433
438
442
445
450
454
456MRC_API MR_Vector3f MR_Vector3f_Construct_3(float x, float y, float z);
457
458// Here `T == U` doesn't seem to cause any issues in the C++ code, but we're still disabling it because it somehow gets emitted
459// when generating the bindings, and looks out of place there.
463
464// Here `T == U` doesn't seem to cause any issues in the C++ code, but we're still disabling it because it somehow gets emitted
465// when generating the bindings, and looks out of place there.
469
472
475
478
481
484
487
490
494MRC_API const float *MR_Vector3f_index_const(const MR_Vector3f *_this, int e);
495
500
504
508
512
517
524
529
534
538
543
548
549// NOTE: We use `std::declval()` in the operators below because libclang 18 in our binding generator is bugged and chokes on decltyping `a.x` and such. TODO fix this when we update libclang.
554
558
563
568
572
576
579
585
591
596
601
605
608
613
617
619MRC_API MR_Vector3d MR_Vector3d_Construct_3(double x, double y, double z);
620
621// Here `T == U` doesn't seem to cause any issues in the C++ code, but we're still disabling it because it somehow gets emitted
622// when generating the bindings, and looks out of place there.
626
629
632
635
638
641
644
647
651MRC_API const double *MR_Vector3d_index_const(const MR_Vector3d *_this, int e);
652
656MRC_API double *MR_Vector3d_index(MR_Vector3d *_this, int e);
657
661
665
669
674
681
686
691
695
700
705
706// NOTE: We use `std::declval()` in the operators below because libclang 18 in our binding generator is bugged and chokes on decltyping `a.x` and such. TODO fix this when we update libclang.
711
715
720
725
729
733
736
742
748
753
758
762
767
771
776
781
785
790
795
799
804
808
813
816
819
824
829
832MRC_API MR_Vector3_unsigned_char *MR_Vector3_unsigned_char_Construct_3(unsigned char x, unsigned char y, unsigned char z);
833
836
839
845
849
853
857
861
866
871
875
879
885
890
895
896// NOTE: We use `std::declval()` in the operators below because libclang 18 in our binding generator is bugged and chokes on decltyping `a.x` and such. TODO fix this when we update libclang.
901
905
910
915
919
923
927
933
939
944
949
955
961
967
973
979
985
986#ifdef __cplusplus
987} // extern "C"
988#endif
struct MR_NoInit MR_NoInit
Definition MRBox.h:15
struct MR_Vector3_unsigned_char MR_Vector3_unsigned_char
Definition MRMatrix3.h:14
MRC_API MR_Vector3d MR_Vector3d_Construct_float(const MR_Vector3f *v)
MRC_API MR_Vector3b MR_Vector3b_plusX(void)
Generated from a method of class MR::Vector3b named plusX.
MRC_API unsigned char * MR_Vector3_unsigned_char_GetMutable_y(MR_Vector3_unsigned_char *_this)
MRC_API unsigned char * MR_Vector3_unsigned_char_index(MR_Vector3_unsigned_char *_this, int e)
MRC_API MR_Vector3d MR_mul_MR_Vector3d_double(const MR_Vector3d *b, double a)
MRC_API MR_Vector3i MR_sub_MR_Vector3_unsigned_char(const MR_Vector3_unsigned_char *a, const MR_Vector3_unsigned_char *b)
MRC_API bool MR_not_equal_MR_Vector3b(const MR_Vector3b *a, const MR_Vector3b *b)
MRC_API MR_Vector3f MR_Vector3f_normalized(const MR_Vector3f *_this)
MRC_API MR_Vector3i MR_mul_bool_MR_Vector3b(bool a, const MR_Vector3b *b)
MRC_API MR_Vector3f MR_Vector3f_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Vector3f MR_Vector3f_plusY(void)
Generated from a method of class MR::Vector3f named plusY.
MRC_API const unsigned char * MR_Vector3_unsigned_char_Get_x(const MR_Vector3_unsigned_char *_this)
MRC_API MR_Vector3d MR_add_MR_Vector3d(const MR_Vector3d *a, const MR_Vector3d *b)
MRC_API MR_Vector3d MR_Vector3d_transformed(const MR_Vector3d *_this, const MR_AffineXf3d *xf)
MRC_API MR_Vector3f * MR_div_assign_MR_Vector3f_float(MR_Vector3f *a, float b)
MRC_API MR_Vector3f MR_Vector3f_furthestBasisVector(const MR_Vector3f *_this)
MRC_API const bool * MR_Vector3b_index_const(const MR_Vector3b *_this, int e)
MRC_API double MR_dot_double_MR_Vector3d(const MR_Vector3d *a, const MR_Vector3d *b)
MRC_API MR_Vector3f MR_Vector3f_transformed(const MR_Vector3f *_this, const MR_AffineXf3f *xf)
MRC_API MR_Vector3i MR_sub_MR_Vector3i(const MR_Vector3i *a, const MR_Vector3i *b)
MRC_API const MR_Vector3b * MR_pos_MR_Vector3b(const MR_Vector3b *a)
MRC_API double MR_Vector3_unsigned_char_length(const MR_Vector3_unsigned_char *_this)
MRC_API MR_Vector3i * MR_mul_assign_MR_Vector3i_int(MR_Vector3i *a, int b)
MRC_API bool MR_not_equal_MR_Vector3d(const MR_Vector3d *a, const MR_Vector3d *b)
MRC_API MR_Vector3f MR_Vector3f_plusZ(void)
Generated from a method of class MR::Vector3f named plusZ.
MRC_API MR_Vector3i MR_div_MR_Vector3b_bool(MR_Vector3b b, bool a)
Generated from function MR::operator/.
MRC_API void MR_Vector3_unsigned_char_DestroyArray(const MR_Vector3_unsigned_char *_this)
Destroys a heap-allocated array of MR_Vector3_unsigned_char. Does nothing if the pointer is null.
MRC_API float * MR_Vector3f_index(MR_Vector3f *_this, int e)
MRC_API int MR_Vector3i_lengthSq(const MR_Vector3i *_this)
MRC_API MR_Vector3d * MR_mul_assign_MR_Vector3d_double(MR_Vector3d *a, double b)
MRC_API MR_Vector3d MR_sub_MR_Vector3d(const MR_Vector3d *a, const MR_Vector3d *b)
MRC_API bool MR_equal_MR_Vector3i64(const MR_Vector3i64 *a, const MR_Vector3i64 *b)
MRC_API MR_Vector3i MR_div_MR_Vector3_unsigned_char_unsigned_char(const MR_Vector3_unsigned_char *b, unsigned char a)
MRC_API MR_Vector3i MR_neg_MR_Vector3b(const MR_Vector3b *a)
MRC_API MR_Vector3i64 MR_Vector3i64_Construct_3(MR_int64_t x, MR_int64_t y, MR_int64_t z)
Generated from a constructor of class MR::Vector3i64.
MRC_API double * MR_Vector3d_index(MR_Vector3d *_this, int e)
MRC_API MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_Construct_1(const MR_NoInit *_1)
MRC_API MR_Vector3i MR_add_MR_Vector3_unsigned_char(const MR_Vector3_unsigned_char *a, const MR_Vector3_unsigned_char *b)
MRC_API const float * MR_Vector3f_index_const(const MR_Vector3f *_this, int e)
MRC_API MR_Vector3f MR_Vector3f_plusX(void)
Generated from a method of class MR::Vector3f named plusX.
MRC_API MR_Vector3b * MR_add_assign_MR_Vector3b(MR_Vector3b *a, const MR_Vector3b *b)
MRC_API MR_Vector3i MR_mul_int_MR_Vector3i(int a, const MR_Vector3i *b)
MRC_API float MR_Vector3f_length(const MR_Vector3f *_this)
MRC_API MR_Vector3i64 * MR_Vector3i64_DefaultConstructArray(size_t num_elems)
MRC_API unsigned char * MR_Vector3_unsigned_char_GetMutable_z(MR_Vector3_unsigned_char *_this)
MRC_API MR_Vector3b MR_Vector3b_Construct_1(const MR_NoInit *_1)
MRC_API MR_Vector3d MR_Vector3d_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Vector3d * MR_add_assign_MR_Vector3d(MR_Vector3d *a, const MR_Vector3d *b)
MRC_API MR_Vector3i MR_Vector3i_Construct_3(int x, int y, int z)
Generated from a constructor of class MR::Vector3i.
MRC_API const int * MR_Vector3i64_Get_elements(void)
MRC_API MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_plusZ(void)
MRC_API MR_Vector3f MR_Vector3f_minusZ(void)
Generated from a method of class MR::Vector3f named minusZ.
MRC_API const unsigned char * MR_Vector3_unsigned_char_Get_z(const MR_Vector3_unsigned_char *_this)
MRC_API MR_Vector3i64 * MR_mul_assign_MR_Vector3i64_int64_t(MR_Vector3i64 *a, MR_int64_t b)
struct MR_Vector3i64 MR_Vector3i64
MRC_API void MR_Vector3f_unsignZeroValues(MR_Vector3f *_this)
MRC_API MR_Vector3f * MR_Vector3f_DefaultConstructArray(size_t num_elems)
MRC_API MR_Vector3i MR_neg_MR_Vector3i(const MR_Vector3i *a)
MRC_API const unsigned char * MR_Vector3_unsigned_char_index_const(const MR_Vector3_unsigned_char *_this, int e)
MRC_API MR_Vector3i64 MR_sub_MR_Vector3i64(const MR_Vector3i64 *a, const MR_Vector3i64 *b)
MRC_API MR_Vector3b * MR_mul_assign_MR_Vector3b_bool(MR_Vector3b *a, bool b)
MRC_API MR_Vector3i MR_add_MR_Vector3i(const MR_Vector3i *a, const MR_Vector3i *b)
MRC_API MR_Vector3_unsigned_char * MR_add_assign_MR_Vector3_unsigned_char(MR_Vector3_unsigned_char *a, const MR_Vector3_unsigned_char *b)
MRC_API MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_plusY(void)
MRC_API MR_Vector3d MR_Vector3d_Construct_1(const MR_NoInit *_1)
MRC_API const int * MR_Vector3i_index_const(const MR_Vector3i *_this, int e)
MRC_API MR_Vector3i64 MR_Vector3i64_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Vector3i64 * MR_add_assign_MR_Vector3i64(MR_Vector3i64 *a, const MR_Vector3i64 *b)
MRC_API MR_Vector3_unsigned_char * MR_mul_assign_MR_Vector3_unsigned_char_unsigned_char(MR_Vector3_unsigned_char *a, unsigned char b)
MRC_API MR_Vector3i64 * MR_sub_assign_MR_Vector3i64(MR_Vector3i64 *a, const MR_Vector3i64 *b)
MRC_API void MR_Vector3_unsigned_char_Set_y(MR_Vector3_unsigned_char *_this, unsigned char value)
MRC_API MR_Vector3f MR_Vector3f_Construct_int(const MR_Vector3i *v)
MRC_API MR_Vector3i MR_Vector3i_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_DefaultConstructArray(size_t num_elems)
MRC_API void MR_Vector3_unsigned_char_Set_x(MR_Vector3_unsigned_char *_this, unsigned char value)
MRC_API int MR_dot_bool_MR_Vector3b(const MR_Vector3b *a, const MR_Vector3b *b)
MRC_API MR_Vector3d MR_mul_double_MR_Vector3d(double a, const MR_Vector3d *b)
MRC_API bool MR_not_equal_MR_Vector3i(const MR_Vector3i *a, const MR_Vector3i *b)
MRC_API const MR_int64_t * MR_Vector3i64_index_const(const MR_Vector3i64 *_this, int e)
MRC_API MR_Vector3i64 MR_add_MR_Vector3i64(const MR_Vector3i64 *a, const MR_Vector3i64 *b)
MRC_API MR_int64_t * MR_Vector3i64_index(MR_Vector3i64 *_this, int e)
MRC_API const MR_Vector3d * MR_pos_MR_Vector3d(const MR_Vector3d *a)
MRC_API const int * MR_Vector3_unsigned_char_Get_elements(void)
MRC_API const int * MR_Vector3i_Get_elements(void)
MRC_API MR_Vector3i64 MR_Vector3i64_plusY(void)
Generated from a method of class MR::Vector3i64 named plusY.
MRC_API int * MR_Vector3i_index(MR_Vector3i *_this, int e)
MRC_API const MR_Vector3i * MR_pos_MR_Vector3i(const MR_Vector3i *a)
struct MR_Vector3f MR_Vector3f
MRC_API MR_std_pair_MR_Vector3f_MR_Vector3f * MR_Vector3f_perpendicular(const MR_Vector3f *_this)
MRC_API MR_Vector3i64 MR_Vector3i64_Construct_1(const MR_NoInit *_1)
MRC_API MR_Vector3i MR_Vector3i_Construct_1(const MR_NoInit *_1)
MRC_API MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_OffsetMutablePtr(MR_Vector3_unsigned_char *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 MR_Vector3i MR_Vector3i_Construct_float(const MR_Vector3f *v)
MRC_API MR_Vector3i64 MR_div_MR_Vector3i64_int64_t(MR_Vector3i64 b, MR_int64_t a)
Generated from function MR::operator/.
MRC_API bool * MR_Vector3b_index(MR_Vector3b *_this, int e)
MRC_API MR_Vector3b * MR_sub_assign_MR_Vector3b(MR_Vector3b *a, const MR_Vector3b *b)
MRC_API MR_Vector3d MR_Vector3d_plusY(void)
Generated from a method of class MR::Vector3d named plusY.
MRC_API double MR_Vector3i_length(const MR_Vector3i *_this)
MRC_API MR_Vector3i64 MR_Vector3i64_minusZ(void)
Generated from a method of class MR::Vector3i64 named minusZ.
MRC_API MR_Vector3i MR_sub_MR_Vector3b(const MR_Vector3b *a, const MR_Vector3b *b)
MRC_API bool MR_not_equal_MR_Vector3_unsigned_char(const MR_Vector3_unsigned_char *a, const MR_Vector3_unsigned_char *b)
MRC_API MR_Vector3i * MR_add_assign_MR_Vector3i(MR_Vector3i *a, const MR_Vector3i *b)
MRC_API bool MR_not_equal_MR_Vector3f(const MR_Vector3f *a, const MR_Vector3f *b)
struct MR_std_pair_MR_Vector3f_MR_Vector3f MR_std_pair_MR_Vector3f_MR_Vector3f
Definition MRVector3.h:17
MRC_API MR_Vector3i MR_Vector3i_plusZ(void)
Generated from a method of class MR::Vector3i named plusZ.
MRC_API MR_Vector3f MR_mul_MR_Vector3f_float(const MR_Vector3f *b, float a)
MRC_API MR_Vector3i64 MR_mul_int64_t_MR_Vector3i64(MR_int64_t a, const MR_Vector3i64 *b)
MRC_API bool MR_equal_MR_Vector3b(const MR_Vector3b *a, const MR_Vector3b *b)
MRC_API double MR_Vector3i64_length(const MR_Vector3i64 *_this)
MRC_API MR_Vector3b MR_Vector3b_plusZ(void)
Generated from a method of class MR::Vector3b named plusZ.
MRC_API MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_DefaultConstruct(void)
MRC_API MR_Vector3f MR_Vector3f_Construct_1(const MR_NoInit *_1)
MRC_API MR_Vector3f * MR_sub_assign_MR_Vector3f(MR_Vector3f *a, const MR_Vector3f *b)
MRC_API MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_diagonal(unsigned char a)
MRC_API MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_ConstructFromAnother(const MR_Vector3_unsigned_char *_other)
MRC_API const MR_Vector3f * MR_pos_MR_Vector3f(const MR_Vector3f *a)
MRC_API MR_Vector3b MR_Vector3b_diagonal(bool a)
Generated from a method of class MR::Vector3b named diagonal.
MRC_API MR_Vector3i * MR_Vector3i_DefaultConstructArray(size_t num_elems)
MRC_API MR_Vector3i MR_mul_MR_Vector3i_int(const MR_Vector3i *b, int a)
MRC_API MR_Vector3f MR_Vector3f_minusX(void)
Generated from a method of class MR::Vector3f named minusX.
MRC_API MR_Vector3d MR_Vector3d_minusX(void)
Generated from a method of class MR::Vector3d named minusX.
MRC_API MR_Vector3i MR_add_MR_Vector3b(const MR_Vector3b *a, const MR_Vector3b *b)
MRC_API unsigned char * MR_Vector3_unsigned_char_GetMutable_x(MR_Vector3_unsigned_char *_this)
MRC_API bool MR_equal_MR_Vector3f(const MR_Vector3f *a, const MR_Vector3f *b)
MRC_API bool MR_Vector3d_isFinite(const MR_Vector3d *_this)
MRC_API const int * MR_Vector3d_Get_elements(void)
MRC_API MR_Vector3d MR_Vector3d_minusY(void)
Generated from a method of class MR::Vector3d named minusY.
MRC_API MR_Vector3f MR_sub_MR_Vector3f(const MR_Vector3f *a, const MR_Vector3f *b)
MRC_API MR_Vector3d MR_Vector3d_minusZ(void)
Generated from a method of class MR::Vector3d named minusZ.
MRC_API MR_Vector3_unsigned_char * MR_sub_assign_MR_Vector3_unsigned_char(MR_Vector3_unsigned_char *a, const MR_Vector3_unsigned_char *b)
MRC_API MR_Vector3b * MR_div_assign_MR_Vector3b_bool(MR_Vector3b *a, bool b)
MRC_API const double * MR_Vector3d_index_const(const MR_Vector3d *_this, int e)
MRC_API MR_Vector3i64 MR_Vector3i64_minusX(void)
Generated from a method of class MR::Vector3i64 named minusX.
MRC_API MR_Vector3i64 MR_neg_MR_Vector3i64(const MR_Vector3i64 *a)
MRC_API MR_Vector3b MR_Vector3b_Construct_3(bool x, bool y, bool z)
Generated from a constructor of class MR::Vector3b.
MRC_API MR_Vector3f MR_add_MR_Vector3f(const MR_Vector3f *a, const MR_Vector3f *b)
MRC_API MR_Vector3i MR_neg_MR_Vector3_unsigned_char(const MR_Vector3_unsigned_char *a)
MRC_API MR_Vector3d * MR_div_assign_MR_Vector3d_double(MR_Vector3d *a, double b)
MRC_API MR_Vector3i MR_Vector3i_plusX(void)
Generated from a method of class MR::Vector3i named plusX.
MRC_API MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_AssignFromAnother(MR_Vector3_unsigned_char *_this, const MR_Vector3_unsigned_char *_other)
MRC_API MR_Vector3b MR_Vector3b_plusY(void)
Generated from a method of class MR::Vector3b named plusY.
MRC_API const MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_OffsetPtr(const MR_Vector3_unsigned_char *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
struct MR_Vector3d MR_Vector3d
MRC_API float MR_dot_float_MR_Vector3f(const MR_Vector3f *a, const MR_Vector3f *b)
MRC_API MR_Vector3i64 MR_Vector3i64_minusY(void)
Generated from a method of class MR::Vector3i64 named minusY.
MRC_API double MR_Vector3d_lengthSq(const MR_Vector3d *_this)
MRC_API bool MR_equal_MR_Vector3d(const MR_Vector3d *a, const MR_Vector3d *b)
MRC_API MR_Vector3f MR_Vector3f_Construct_double(const MR_Vector3d *v)
MRC_API MR_Vector3i64 * MR_div_assign_MR_Vector3i64_int64_t(MR_Vector3i64 *a, MR_int64_t b)
MRC_API MR_Vector3f MR_mul_float_MR_Vector3f(float a, const MR_Vector3f *b)
MRC_API bool MR_equal_MR_Vector3i(const MR_Vector3i *a, const MR_Vector3i *b)
MRC_API MR_Vector3f MR_Vector3f_diagonal(float a)
Generated from a method of class MR::Vector3f named diagonal.
MRC_API MR_Vector3i MR_mul_MR_Vector3_unsigned_char_unsigned_char(const MR_Vector3_unsigned_char *b, unsigned char a)
MRC_API MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_plusX(void)
MRC_API const MR_Vector3i64 * MR_pos_MR_Vector3i64(const MR_Vector3i64 *a)
MRC_API MR_Vector3f MR_div_MR_Vector3f_float(MR_Vector3f b, float a)
Generated from function MR::operator/.
MRC_API unsigned char MR_Vector3_unsigned_char_lengthSq(const MR_Vector3_unsigned_char *_this)
MRC_API MR_int64_t MR_Vector3i64_lengthSq(const MR_Vector3i64 *_this)
MRC_API MR_Vector3i MR_Vector3i_plusY(void)
Generated from a method of class MR::Vector3i named plusY.
MRC_API MR_Vector3i64 MR_Vector3i64_diagonal(MR_int64_t a)
Generated from a method of class MR::Vector3i64 named diagonal.
MRC_API MR_Vector3i MR_div_MR_Vector3i_int(MR_Vector3i b, int a)
Generated from function MR::operator/.
MRC_API MR_Vector3f * MR_add_assign_MR_Vector3f(MR_Vector3f *a, const MR_Vector3f *b)
MRC_API MR_Vector3i64 MR_Vector3i64_plusZ(void)
Generated from a method of class MR::Vector3i64 named plusZ.
MRC_API float MR_Vector3f_lengthSq(const MR_Vector3f *_this)
MRC_API const MR_Vector3_unsigned_char * MR_pos_MR_Vector3_unsigned_char(const MR_Vector3_unsigned_char *a)
MRC_API MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_Construct_3(unsigned char x, unsigned char y, unsigned char z)
MRC_API MR_Vector3i * MR_div_assign_MR_Vector3i_int(MR_Vector3i *a, int b)
MRC_API int MR_dot_int_MR_Vector3i(const MR_Vector3i *a, const MR_Vector3i *b)
MRC_API void MR_Vector3d_unsignZeroValues(MR_Vector3d *_this)
MRC_API MR_Vector3i MR_Vector3i_minusZ(void)
Generated from a method of class MR::Vector3i named minusZ.
MRC_API MR_Vector3d MR_Vector3d_furthestBasisVector(const MR_Vector3d *_this)
MRC_API MR_Vector3i MR_Vector3i_furthestBasisVector(const MR_Vector3i *_this)
MRC_API MR_Vector3d MR_Vector3d_plusZ(void)
Generated from a method of class MR::Vector3d named plusZ.
MRC_API MR_Vector3b * MR_Vector3b_DefaultConstructArray(size_t num_elems)
MRC_API bool MR_Vector3b_lengthSq(const MR_Vector3b *_this)
MRC_API MR_Vector3d * MR_Vector3d_DefaultConstructArray(size_t num_elems)
MRC_API MR_Vector3b MR_Vector3b_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API double MR_Vector3b_length(const MR_Vector3b *_this)
MRC_API MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_furthestBasisVector(const MR_Vector3_unsigned_char *_this)
MRC_API MR_Vector3i MR_Vector3i_minusX(void)
Generated from a method of class MR::Vector3i named minusX.
struct MR_Vector3i MR_Vector3i
struct MR_Vector3b MR_Vector3b
MRC_API MR_Vector3i * MR_sub_assign_MR_Vector3i(MR_Vector3i *a, const MR_Vector3i *b)
MRC_API MR_Vector3i MR_Vector3i_diagonal(int a)
Generated from a method of class MR::Vector3i named diagonal.
MRC_API MR_Vector3i64 MR_Vector3i64_furthestBasisVector(const MR_Vector3i64 *_this)
MRC_API MR_Vector3f * MR_mul_assign_MR_Vector3f_float(MR_Vector3f *a, float b)
MRC_API void MR_Vector3_unsigned_char_Set_z(MR_Vector3_unsigned_char *_this, unsigned char value)
MRC_API MR_Vector3d * MR_sub_assign_MR_Vector3d(MR_Vector3d *a, const MR_Vector3d *b)
MRC_API MR_Vector3i MR_mul_MR_Vector3b_bool(const MR_Vector3b *b, bool a)
struct MR_std_pair_MR_Vector3d_MR_Vector3d MR_std_pair_MR_Vector3d_MR_Vector3d
Definition MRVector3.h:16
MRC_API MR_Vector3_unsigned_char * MR_div_assign_MR_Vector3_unsigned_char_unsigned_char(MR_Vector3_unsigned_char *a, unsigned char b)
MRC_API MR_Vector3d MR_div_MR_Vector3d_double(MR_Vector3d b, double a)
Generated from function MR::operator/.
MRC_API const int * MR_Vector3b_Get_elements(void)
MRC_API MR_Vector3i64 MR_mul_MR_Vector3i64_int64_t(const MR_Vector3i64 *b, MR_int64_t a)
MRC_API void MR_Vector3_unsigned_char_Destroy(const MR_Vector3_unsigned_char *_this)
Destroys a heap-allocated instance of MR_Vector3_unsigned_char. Does nothing if the pointer is null.
MRC_API MR_Vector3d MR_Vector3d_plusX(void)
Generated from a method of class MR::Vector3d named plusX.
MRC_API MR_std_pair_MR_Vector3d_MR_Vector3d * MR_Vector3d_perpendicular(const MR_Vector3d *_this)
MRC_API double MR_Vector3d_length(const MR_Vector3d *_this)
MRC_API const unsigned char * MR_Vector3_unsigned_char_Get_y(const MR_Vector3_unsigned_char *_this)
MRC_API MR_Vector3d MR_neg_MR_Vector3d(const MR_Vector3d *a)
MRC_API MR_Vector3f MR_Vector3f_Construct_3(float x, float y, float z)
Generated from a constructor of class MR::Vector3f.
MRC_API bool MR_Vector3f_isFinite(const MR_Vector3f *_this)
MRC_API MR_Vector3f MR_neg_MR_Vector3f(const MR_Vector3f *a)
MRC_API bool MR_equal_MR_Vector3_unsigned_char(const MR_Vector3_unsigned_char *a, const MR_Vector3_unsigned_char *b)
MRC_API MR_Vector3i64 MR_Vector3i64_plusX(void)
Generated from a method of class MR::Vector3i64 named plusX.
MRC_API MR_int64_t MR_dot_int64_t_MR_Vector3i64(const MR_Vector3i64 *a, const MR_Vector3i64 *b)
MRC_API const int * MR_Vector3f_Get_elements(void)
MRC_API MR_Vector3i MR_Vector3i_minusY(void)
Generated from a method of class MR::Vector3i named minusY.
MRC_API MR_Vector3d MR_Vector3d_normalized(const MR_Vector3d *_this)
MRC_API bool MR_not_equal_MR_Vector3i64(const MR_Vector3i64 *a, const MR_Vector3i64 *b)
MRC_API MR_Vector3f MR_Vector3f_minusY(void)
Generated from a method of class MR::Vector3f named minusY.
MRC_API MR_Vector3d MR_Vector3d_Construct_3(double x, double y, double z)
Generated from a constructor of class MR::Vector3d.
MRC_API MR_Vector3i MR_mul_unsigned_char_MR_Vector3_unsigned_char(unsigned char a, const MR_Vector3_unsigned_char *b)
MRC_API MR_Vector3d MR_Vector3d_diagonal(double a)
Generated from a method of class MR::Vector3d named diagonal.
MRC_API int MR_dot_unsigned_char_MR_Vector3_unsigned_char(const MR_Vector3_unsigned_char *a, const MR_Vector3_unsigned_char *b)
int64_t MR_int64_t
Definition common.h:13
#define MRC_API
Definition exports.h:11
Definition MRAffineXf.h:44
Definition MRAffineXf.h:36
Definition MRVector3.h:23
bool z
Definition MRVector3.h:26
bool x
Definition MRVector3.h:24
bool y
Definition MRVector3.h:25
Definition MRVector3.h:59
double x
Definition MRVector3.h:60
double z
Definition MRVector3.h:62
double y
Definition MRVector3.h:61
Definition MRVector3.h:50
float y
Definition MRVector3.h:52
float z
Definition MRVector3.h:53
float x
Definition MRVector3.h:51
Definition MRVector3.h:41
MR_int64_t y
Definition MRVector3.h:43
MR_int64_t z
Definition MRVector3.h:44
MR_int64_t x
Definition MRVector3.h:42
Definition MRVector3.h:32
int x
Definition MRVector3.h:33
int z
Definition MRVector3.h:35
int y
Definition MRVector3.h:34