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_istream MR_std_istream; // Defined in `#include <MRCMisc/iostream.h>`.
17typedef struct MR_std_ostream MR_std_ostream; // Defined in `#include <MRCMisc/iostream.h>`.
18typedef 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>`.
19typedef 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>`.
20
21
24typedef struct MR_Vector3b
25{
26 bool x;
27 bool y;
28 bool z;
30
33typedef struct MR_Vector3i
34{
35 int x;
36 int y;
37 int z;
39
48
51typedef struct MR_Vector3f
52{
53 float x;
54 float y;
55 float z;
57
60typedef struct MR_Vector3d
61{
62 double x;
63 double y;
64 double z;
66
71
75
78
83
88
91
94
97
100
103
107MRC_API const bool *MR_Vector3b_index_const(const MR_Vector3b *_this, int e);
108
113
117
121
126
131
132// 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.
137
141
146
151
155
159
162
168
174
179
184
190
196
200
203
208
213
216
217// 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
218// when generating the bindings, and looks out of place there.
223
226
229
232
235
238
241
244
248MRC_API const int *MR_Vector3i_index_const(const MR_Vector3i *_this, int e);
249
254
258
262
267
272
277
278// 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.
283
287
292
297
301
305
308
314
320
325
330
336
342
346
349
354
359
365
368
371
374
377
380
383
386
391
396
400
404
409
414
419
420// 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.
425
429
434
439
443
447
450
456
462
467
472
478
484
488
491
496
501
503MRC_API MR_Vector3f MR_Vector3f_Construct_3(float x, float y, float z);
504
505// 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
506// when generating the bindings, and looks out of place there.
511
512// 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
513// when generating the bindings, and looks out of place there.
518
521
524
527
530
533
536
539
543MRC_API const float *MR_Vector3f_index_const(const MR_Vector3f *_this, int e);
544
549
553
557
561
566
573
578
583
587
592
597
598// 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.
603
607
612
617
621
625
628
634
640
645
650
656
662
666
669
674
679
681MRC_API MR_Vector3d MR_Vector3d_Construct_3(double x, double y, double z);
682
683// 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
684// when generating the bindings, and looks out of place there.
689
692
695
698
701
704
707
710
714MRC_API const double *MR_Vector3d_index_const(const MR_Vector3d *_this, int e);
715
719MRC_API double *MR_Vector3d_index(MR_Vector3d *_this, int e);
720
724
728
732
737
744
749
754
758
763
768
769// 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.
774
778
783
788
792
796
799
805
811
816
821
827
833
837
842
848
853
858
864
869
874
880
885
889
894
898
902
908
914
920MRC_API MR_Vector3_unsigned_char *MR_Vector3_unsigned_char_Construct_3(unsigned char x, unsigned char y, unsigned char z);
921
924
927
935
939
943
947
951
956
961
965
969
975
980
985
986// 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.
991
995
1000
1005
1009
1013
1017
1023
1029
1034
1039
1045
1051
1057
1063
1069
1075
1081
1087
1088#ifdef __cplusplus
1089} // extern "C"
1090#endif
struct MR_NoInit MR_NoInit
Definition MRBox.h:15
struct MR_std_ostream MR_std_ostream
Definition MRCtm.h:31
struct MR_std_istream MR_std_istream
Definition MRCtm.h:28
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 method MR::Vector3b::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 method MR::Vector3f::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 method MR::Vector3f::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)
MRC_API double * MR_Vector3d_index(MR_Vector3d *_this, int e)
MRC_API MR_std_ostream * MR_print_MR_Vector3b(MR_std_ostream *s, const MR_Vector3b *vec)
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 method MR::Vector3f::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 constructor MR::Vector3i::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 method MR::Vector3f::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_std_istream * MR_input_MR_Vector3b(MR_std_istream *s, MR_Vector3b *vec)
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 method MR::Vector3i64::plusY.
MRC_API MR_std_istream * MR_input_MR_Vector3_unsigned_char(MR_std_istream *s, MR_Vector3_unsigned_char *vec)
MRC_API int * MR_Vector3i_index(MR_Vector3i *_this, int e)
MRC_API MR_std_ostream * MR_print_MR_Vector3d(MR_std_ostream *s, const MR_Vector3d *vec)
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_std_istream * MR_input_MR_Vector3f(MR_std_istream *s, MR_Vector3f *vec)
MRC_API MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_OffsetMutablePtr(MR_Vector3_unsigned_char *ptr, ptrdiff_t i)
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 method MR::Vector3d::plusY.
MRC_API double MR_Vector3i_length(const MR_Vector3i *_this)
MRC_API MR_Vector3i64 MR_Vector3i64_minusZ(void)
Generated from method MR::Vector3i64::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:19
MRC_API MR_Vector3i MR_Vector3i_plusZ(void)
Generated from method MR::Vector3i::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 method MR::Vector3b::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 method MR::Vector3b::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 method MR::Vector3f::minusX.
MRC_API MR_Vector3d MR_Vector3d_minusX(void)
Generated from method MR::Vector3d::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 method MR::Vector3d::minusY.
MRC_API MR_Vector3f MR_sub_MR_Vector3f(const MR_Vector3f *a, const MR_Vector3f *b)
MRC_API MR_std_istream * MR_input_MR_Vector3i(MR_std_istream *s, MR_Vector3i *vec)
MRC_API MR_Vector3d MR_Vector3d_minusZ(void)
Generated from method MR::Vector3d::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 method MR::Vector3i64::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 constructor MR::Vector3b::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 method MR::Vector3i::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 method MR::Vector3b::plusY.
MRC_API const MR_Vector3_unsigned_char * MR_Vector3_unsigned_char_OffsetPtr(const MR_Vector3_unsigned_char *ptr, ptrdiff_t i)
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 method MR::Vector3i64::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 method MR::Vector3f::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 method MR::Vector3i::plusY.
MRC_API MR_Vector3i64 MR_Vector3i64_diagonal(MR_int64_t a)
Generated from method MR::Vector3i64::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 method MR::Vector3i64::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_std_ostream * MR_print_MR_Vector3_unsigned_char(MR_std_ostream *s, const MR_Vector3_unsigned_char *vec)
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 method MR::Vector3i::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_std_istream * MR_input_MR_Vector3d(MR_std_istream *s, MR_Vector3d *vec)
MRC_API MR_Vector3d MR_Vector3d_plusZ(void)
Generated from method MR::Vector3d::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 method MR::Vector3i::minusX.
struct MR_Vector3i MR_Vector3i
MRC_API MR_std_ostream * MR_print_MR_Vector3f(MR_std_ostream *s, const MR_Vector3f *vec)
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 method MR::Vector3i::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 MR_std_ostream * MR_print_MR_Vector3i(MR_std_ostream *s, const MR_Vector3i *vec)
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:18
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_std_ostream * MR_print_MR_Vector3i64(MR_std_ostream *s, const MR_Vector3i64 *vec)
MRC_API MR_Vector3d MR_Vector3d_plusX(void)
Generated from method MR::Vector3d::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 constructor MR::Vector3f::Vector3f.
MRC_API MR_std_istream * MR_input_MR_Vector3i64(MR_std_istream *s, MR_Vector3i64 *vec)
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 method MR::Vector3i64::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 method MR::Vector3i::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 method MR::Vector3f::minusY.
MRC_API MR_Vector3d MR_Vector3d_Construct_3(double x, double y, double z)
Generated from constructor MR::Vector3d::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 method MR::Vector3d::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:17
#define MRC_API
Definition exports.h:11
Definition MRAffineXf.h:47
Definition MRAffineXf.h:39
Definition MRVector3.h:25
bool z
Definition MRVector3.h:28
bool x
Definition MRVector3.h:26
bool y
Definition MRVector3.h:27
Definition MRVector3.h:61
double x
Definition MRVector3.h:62
double z
Definition MRVector3.h:64
double y
Definition MRVector3.h:63
Definition MRVector3.h:52
float y
Definition MRVector3.h:54
float z
Definition MRVector3.h:55
float x
Definition MRVector3.h:53
Definition MRVector3.h:43
MR_int64_t y
Definition MRVector3.h:45
MR_int64_t z
Definition MRVector3.h:46
MR_int64_t x
Definition MRVector3.h:44
Definition MRVector3.h:34
int x
Definition MRVector3.h:35
int z
Definition MRVector3.h:37
int y
Definition MRVector3.h:36