MeshLib C Docs
Loading...
Searching...
No Matches
MRMatrix3.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMesh/MRVector3.h>
4#include <MRCMisc/common.h>
5#include <MRCMisc/exports.h>
6
7#include <stdbool.h>
8#include <stddef.h>
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
14typedef struct MR_Vector3_unsigned_char MR_Vector3_unsigned_char; // Defined in `#include <MRCMesh/MRVector3.h>`.
15typedef struct MR_std_istream MR_std_istream; // Defined in `#include <MRCMisc/iostream.h>`.
16typedef struct MR_std_ostream MR_std_ostream; // Defined in `#include <MRCMisc/iostream.h>`.
17
18
22
32
36
46
50
60
64
74
78
88
92
97
100
105
115
118
121
125
128MRC_API MR_Matrix3b MR_Matrix3b_scale_3(bool sx, bool sy, bool sz);
129
133
140
148
153MRC_API const MR_Vector3b *MR_Matrix3b_index(const MR_Matrix3b *_this, int row);
154
159
163MRC_API MR_Vector3b MR_Matrix3b_col(const MR_Matrix3b *_this, int i);
164
168MRC_API bool MR_Matrix3b_trace(const MR_Matrix3b *_this);
169
173MRC_API bool MR_Matrix3b_normSq(const MR_Matrix3b *_this);
174
177MRC_API double MR_Matrix3b_norm(const MR_Matrix3b *_this);
178
182MRC_API bool MR_Matrix3b_det(const MR_Matrix3b *_this);
183
188
194
200
206
212
218
224
228
233
240
244
248
254
257
260
268
272MRC_API bool MR_equal_MR_Matrix3b(const MR_Matrix3b *a, const MR_Matrix3b *b);
273
277MRC_API bool MR_not_equal_MR_Matrix3b(const MR_Matrix3b *a, const MR_Matrix3b *b);
278
279// 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.
284
289
293
297
300
306
312
317
322
328
334
340
346
349
354
364
367
370
374
377MRC_API MR_Matrix3i MR_Matrix3i_scale_3(int sx, int sy, int sz);
378
382
389
397
402MRC_API const MR_Vector3i *MR_Matrix3i_index(const MR_Matrix3i *_this, int row);
403
408
412MRC_API MR_Vector3i MR_Matrix3i_col(const MR_Matrix3i *_this, int i);
413
417MRC_API int MR_Matrix3i_trace(const MR_Matrix3i *_this);
418
422MRC_API int MR_Matrix3i_normSq(const MR_Matrix3i *_this);
423
426MRC_API double MR_Matrix3i_norm(const MR_Matrix3i *_this);
427
431MRC_API int MR_Matrix3i_det(const MR_Matrix3i *_this);
432
437
443
449
455
461
467
473
477
482
489
493
497
503
506
509
517
521MRC_API bool MR_equal_MR_Matrix3i(const MR_Matrix3i *a, const MR_Matrix3i *b);
522
526MRC_API bool MR_not_equal_MR_Matrix3i(const MR_Matrix3i *a, const MR_Matrix3i *b);
527
528// 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.
533
538
542
546
549
555
561
566
571
577
583
589
595
598
603
613
616
619
623
626MRC_API MR_Matrix3i64 MR_Matrix3i64_scale_3(MR_int64_t sx, MR_int64_t sy, MR_int64_t sz);
627
631
638
646
651MRC_API const MR_Vector3i64 *MR_Matrix3i64_index(const MR_Matrix3i64 *_this, int row);
652
657
661MRC_API MR_Vector3i64 MR_Matrix3i64_col(const MR_Matrix3i64 *_this, int i);
662
666MRC_API MR_int64_t MR_Matrix3i64_trace(const MR_Matrix3i64 *_this);
667
671MRC_API MR_int64_t MR_Matrix3i64_normSq(const MR_Matrix3i64 *_this);
672
675MRC_API double MR_Matrix3i64_norm(const MR_Matrix3i64 *_this);
676
680MRC_API MR_int64_t MR_Matrix3i64_det(const MR_Matrix3i64 *_this);
681
686
692
698
704
710
716
722
726
731
738
742
746
752
755
758
766
770MRC_API bool MR_equal_MR_Matrix3i64(const MR_Matrix3i64 *a, const MR_Matrix3i64 *b);
771
776
777// 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.
782
787
791
795
798
804
810
815
820
826
832
838
844
847
852
862
863// 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
864// when generating the bindings, and results in duplicate functions in C#.
869
872
875
879
882MRC_API MR_Matrix3f MR_Matrix3f_scale_3(float sx, float sy, float sz);
883
887
891MRC_API MR_Matrix3f MR_Matrix3f_rotation_float(const MR_Vector3f *axis, float angle);
892
898
904
909
916
924
929MRC_API const MR_Vector3f *MR_Matrix3f_index(const MR_Matrix3f *_this, int row);
930
935
939MRC_API MR_Vector3f MR_Matrix3f_col(const MR_Matrix3f *_this, int i);
940
944MRC_API float MR_Matrix3f_trace(const MR_Matrix3f *_this);
945
949MRC_API float MR_Matrix3f_normSq(const MR_Matrix3f *_this);
950
953MRC_API float MR_Matrix3f_norm(const MR_Matrix3f *_this);
954
958MRC_API float MR_Matrix3f_det(const MR_Matrix3f *_this);
959
964
969
974
980
986
992
998
1004
1010
1016
1020
1025
1032
1036
1040
1046
1049
1052
1060
1064MRC_API bool MR_equal_MR_Matrix3f(const MR_Matrix3f *a, const MR_Matrix3f *b);
1065
1069MRC_API bool MR_not_equal_MR_Matrix3f(const MR_Matrix3f *a, const MR_Matrix3f *b);
1070
1071// 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.
1076
1081
1085
1089
1092
1098
1104
1109
1114
1120
1126
1132
1138
1141
1146
1156
1159
1162
1166
1169MRC_API MR_Matrix3d MR_Matrix3d_scale_3(double sx, double sy, double sz);
1170
1174
1178MRC_API MR_Matrix3d MR_Matrix3d_rotation_double(const MR_Vector3d *axis, double angle);
1179
1185
1191
1196
1203
1211
1216MRC_API const MR_Vector3d *MR_Matrix3d_index(const MR_Matrix3d *_this, int row);
1217
1222
1226MRC_API MR_Vector3d MR_Matrix3d_col(const MR_Matrix3d *_this, int i);
1227
1231MRC_API double MR_Matrix3d_trace(const MR_Matrix3d *_this);
1232
1236MRC_API double MR_Matrix3d_normSq(const MR_Matrix3d *_this);
1237
1240MRC_API double MR_Matrix3d_norm(const MR_Matrix3d *_this);
1241
1245MRC_API double MR_Matrix3d_det(const MR_Matrix3d *_this);
1246
1251
1256
1261
1267
1273
1279
1285
1291
1297
1303
1307
1312
1319
1323
1327
1333
1336
1339
1347
1351MRC_API bool MR_equal_MR_Matrix3d(const MR_Matrix3d *a, const MR_Matrix3d *b);
1352
1356MRC_API bool MR_not_equal_MR_Matrix3d(const MR_Matrix3d *a, const MR_Matrix3d *b);
1357
1358// 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.
1363
1368
1372
1376
1379
1385
1391
1396
1401
1407
1413
1419
1425
1432
1440
1447
1453
1460
1466
1472
1479
1485
1489
1494
1498
1502
1508
1519
1522
1525
1533
1537
1541
1546
1550MRC_API MR_Matrix3_unsigned_char *MR_Matrix3_unsigned_char_scale_3(unsigned char sx, unsigned char sy, unsigned char sz);
1551
1556
1564
1573
1579
1584
1590
1595
1600
1604
1608MRC_API unsigned char MR_Matrix3_unsigned_char_det(const MR_Matrix3_unsigned_char *_this);
1609
1615
1621
1628
1634
1640
1647
1653
1657
1662
1671
1675
1679
1685
1688
1691
1699
1704
1709
1710// 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.
1715
1720
1724
1728
1732
1738
1744
1749
1754
1760
1766
1772
1778
1779#ifdef __cplusplus
1780} // extern "C"
1781#endif
struct MR_std_ostream MR_std_ostream
Definition MRCtm.h:31
struct MR_std_istream MR_std_istream
Definition MRCtm.h:28
MRC_API MR_Matrix3i MR_Matrix3i_transposed(const MR_Matrix3i *_this)
MRC_API MR_Vector3f * MR_Matrix3f_index_mut(MR_Matrix3f *_this, int row)
MRC_API MR_Matrix3d MR_mul_MR_Matrix3d(const MR_Matrix3d *a, const MR_Matrix3d *b)
MRC_API double MR_Matrix3_unsigned_char_norm(const MR_Matrix3_unsigned_char *_this)
MRC_API MR_Matrix3b MR_Matrix3b_scale_1_MR_Vector3b(const MR_Vector3b *s)
MRC_API MR_Matrix3i MR_sub_MR_Matrix3i(const MR_Matrix3i *a, const MR_Matrix3i *b)
MRC_API MR_Matrix3_unsigned_char * MR_div_assign_MR_Matrix3_unsigned_char_unsigned_char(MR_Matrix3_unsigned_char *a, unsigned char b)
MRC_API MR_Vector3b * MR_Matrix3b_index_mut(MR_Matrix3b *_this, int row)
MRC_API float MR_Matrix3f_trace(const MR_Matrix3f *_this)
MRC_API MR_Matrix3f MR_add_MR_Matrix3f(const MR_Matrix3f *a, const MR_Matrix3f *b)
MRC_API MR_Matrix3i64 * MR_Matrix3_int64_t_QR_GetMutable_r(MR_Matrix3_int64_t_QR *_this)
MRC_API void MR_Matrix3_unsigned_char_Set_z(MR_Matrix3_unsigned_char *_this, const MR_Vector3_unsigned_char *value)
MRC_API MR_Matrix3i MR_mul_unsigned_char_MR_Matrix3_unsigned_char(unsigned char a, const MR_Matrix3_unsigned_char *b)
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_DefaultConstruct(void)
MRC_API MR_Matrix3f * MR_sub_assign_MR_Matrix3f(MR_Matrix3f *a, const MR_Matrix3f *b)
MRC_API MR_Matrix3_int_QR * MR_Matrix3_int_QR_AssignFromAnother(MR_Matrix3_int_QR *_this, const MR_Matrix3_int_QR *_other)
MRC_API const MR_Vector3b * MR_Matrix3b_index(const MR_Matrix3b *_this, int row)
MRC_API const MR_Matrix3_float_QR * MR_Matrix3_float_QR_OffsetPtr(const MR_Matrix3_float_QR *ptr, ptrdiff_t i)
MRC_API const MR_Matrix3d * MR_Matrix3_double_QR_Get_r(const MR_Matrix3_double_QR *_this)
MRC_API MR_Matrix3d MR_Matrix3d_rotation_MR_Vector3d(const MR_Vector3d *from, const MR_Vector3d *to)
MRC_API MR_Matrix3_bool_QR * MR_Matrix3_bool_QR_DefaultConstruct(void)
MRC_API MR_Matrix3i64 MR_add_MR_Matrix3i64(const MR_Matrix3i64 *a, const MR_Matrix3i64 *b)
MRC_API MR_Matrix3i MR_div_MR_Matrix3_unsigned_char_unsigned_char(const MR_Matrix3_unsigned_char *b, unsigned char a)
MRC_API MR_Matrix3_int64_t_QR * MR_Matrix3_int64_t_QR_ConstructFromAnother(const MR_Matrix3_int64_t_QR *_other)
MRC_API MR_Matrix3i64 MR_Matrix3i64_fromColumns(const MR_Vector3i64 *x, const MR_Vector3i64 *y, const MR_Vector3i64 *z)
MRC_API MR_Matrix3_int_QR * MR_Matrix3_int_QR_OffsetMutablePtr(MR_Matrix3_int_QR *ptr, ptrdiff_t i)
MRC_API MR_Matrix3i64 MR_mul_MR_Matrix3i64_int64_t(const MR_Matrix3i64 *b, MR_int64_t a)
MRC_API MR_Matrix3f * MR_mul_assign_MR_Matrix3f_float(MR_Matrix3f *a, float b)
MRC_API MR_Matrix3i MR_Matrix3i_zero(void)
Generated from method MR::Matrix3i::zero.
MRC_API MR_Vector3i MR_mul_MR_Matrix3_unsigned_char_MR_Vector3_unsigned_char(const MR_Matrix3_unsigned_char *a, const MR_Vector3_unsigned_char *b)
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_ConstructFromAnother(const MR_Matrix3_unsigned_char *_other)
MRC_API MR_Matrix3f MR_Matrix3f_approximateLinearRotationMatrixFromEuler(const MR_Vector3f *eulerAngles)
MRC_API MR_Matrix3d MR_mul_MR_Matrix3d_double(const MR_Matrix3d *b, double a)
MRC_API void MR_Matrix3_double_QR_Set_q(MR_Matrix3_double_QR *_this, MR_Matrix3d value)
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_scale_3(unsigned char sx, unsigned char sy, unsigned char sz)
MRC_API MR_Matrix3_bool_QR * MR_Matrix3_bool_QR_ConstructFrom(MR_Matrix3b q, MR_Matrix3b r)
MRC_API unsigned char MR_Matrix3_unsigned_char_normSq(const MR_Matrix3_unsigned_char *_this)
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_transposed(const MR_Matrix3_unsigned_char *_this)
MRC_API MR_Matrix3_double_QR * MR_Matrix3_double_QR_DefaultConstruct(void)
MRC_API MR_Vector3i64 MR_mul_MR_Matrix3i64_MR_Vector3i64(const MR_Matrix3i64 *a, const MR_Vector3i64 *b)
MRC_API MR_Vector3i MR_Matrix3i_col(const MR_Matrix3i *_this, int i)
MRC_API const MR_Matrix3i64 * MR_Matrix3_int64_t_QR_Get_r(const MR_Matrix3_int64_t_QR *_this)
MRC_API void MR_Matrix3_unsigned_char_QR_DestroyArray(const MR_Matrix3_unsigned_char_QR *_this)
Destroys a heap-allocated array of MR_Matrix3_unsigned_char_QR. Does nothing if the pointer is null.
MRC_API MR_Matrix3i MR_div_MR_Matrix3b_bool(MR_Matrix3b b, bool a)
Generated from function MR::operator/.
MRC_API const MR_Matrix3f * MR_Matrix3_float_QR_Get_r(const MR_Matrix3_float_QR *_this)
MRC_API MR_Matrix3i * MR_Matrix3_int_QR_GetMutable_q(MR_Matrix3_int_QR *_this)
MRC_API MR_Matrix3i64 MR_Matrix3i64_scale_1_MR_Vector3i64(const MR_Vector3i64 *s)
MRC_API void MR_Matrix3_bool_QR_Set_r(MR_Matrix3_bool_QR *_this, MR_Matrix3b value)
MRC_API MR_Matrix3i MR_div_MR_Matrix3i_int(MR_Matrix3i b, int a)
Generated from function MR::operator/.
MRC_API void MR_Matrix3_bool_QR_Destroy(const MR_Matrix3_bool_QR *_this)
Destroys a heap-allocated instance of MR_Matrix3_bool_QR. Does nothing if the pointer is null.
MRC_API void MR_Matrix3_unsigned_char_QR_Set_q(MR_Matrix3_unsigned_char_QR *_this, const MR_Matrix3_unsigned_char *value)
MRC_API const MR_Matrix3f * MR_Matrix3_float_QR_Get_q(const MR_Matrix3_float_QR *_this)
MRC_API MR_Matrix3i MR_Matrix3i_Construct(const MR_Vector3i *x, const MR_Vector3i *y, const MR_Vector3i *z)
MRC_API const MR_Matrix3_int64_t_QR * MR_Matrix3_int64_t_QR_OffsetPtr(const MR_Matrix3_int64_t_QR *ptr, ptrdiff_t i)
MRC_API double MR_Matrix3i64_norm(const MR_Matrix3i64 *_this)
MRC_API bool MR_Matrix3b_trace(const MR_Matrix3b *_this)
MRC_API MR_Matrix3i MR_Matrix3i_scale_1_MR_Vector3i(const MR_Vector3i *s)
struct MR_Matrix3_unsigned_char_QR MR_Matrix3_unsigned_char_QR
Definition MRMatrix3.h:91
struct MR_Matrix3_double_QR MR_Matrix3_double_QR
Definition MRMatrix3.h:77
MRC_API void MR_Matrix3_unsigned_char_Destroy(const MR_Matrix3_unsigned_char *_this)
Destroys a heap-allocated instance of MR_Matrix3_unsigned_char. Does nothing if the pointer is null.
MRC_API void MR_Matrix3_unsigned_char_QR_Set_r(MR_Matrix3_unsigned_char_QR *_this, const MR_Matrix3_unsigned_char *value)
MRC_API MR_Vector3i MR_mul_MR_Matrix3b_MR_Vector3b(const MR_Matrix3b *a, const MR_Vector3b *b)
MRC_API MR_Matrix3f MR_Matrix3f_identity(void)
Generated from method MR::Matrix3f::identity.
MRC_API void MR_Matrix3_double_QR_Set_r(MR_Matrix3_double_QR *_this, MR_Matrix3d value)
MRC_API MR_Matrix3i MR_mul_int_MR_Matrix3i(int a, const MR_Matrix3i *b)
MRC_API MR_Matrix3_unsigned_char * MR_add_assign_MR_Matrix3_unsigned_char(MR_Matrix3_unsigned_char *a, const MR_Matrix3_unsigned_char *b)
MRC_API bool MR_not_equal_MR_Matrix3d(const MR_Matrix3d *a, const MR_Matrix3d *b)
MRC_API MR_std_istream * MR_input_MR_Matrix3f(MR_std_istream *s, MR_Matrix3f *mat)
MRC_API MR_Matrix3f MR_Matrix3f_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Matrix3_bool_QR * MR_Matrix3_bool_QR_ConstructFromAnother(const MR_Matrix3_bool_QR *_other)
MRC_API MR_std_ostream * MR_print_MR_Matrix3d(MR_std_ostream *s, const MR_Matrix3d *mat)
MRC_API MR_Matrix3i MR_add_MR_Matrix3_unsigned_char(const MR_Matrix3_unsigned_char *a, const MR_Matrix3_unsigned_char *b)
MRC_API MR_std_ostream * MR_print_MR_Matrix3b(MR_std_ostream *s, const MR_Matrix3b *mat)
MRC_API MR_Matrix3_float_QR * MR_Matrix3_float_QR_ConstructFrom(MR_Matrix3f q, MR_Matrix3f r)
MRC_API MR_Matrix3d MR_add_MR_Matrix3d(const MR_Matrix3d *a, const MR_Matrix3d *b)
MRC_API MR_Matrix3_double_QR * MR_Matrix3_double_QR_AssignFromAnother(MR_Matrix3_double_QR *_this, const MR_Matrix3_double_QR *_other)
MRC_API bool MR_not_equal_MR_Matrix3i64(const MR_Matrix3i64 *a, const MR_Matrix3i64 *b)
MRC_API bool MR_not_equal_MR_Matrix3i(const MR_Matrix3i *a, const MR_Matrix3i *b)
MRC_API MR_Matrix3_int64_t_QR * MR_Matrix3_int64_t_QR_DefaultConstruct(void)
MRC_API MR_int64_t MR_Matrix3i64_normSq(const MR_Matrix3i64 *_this)
MRC_API const MR_Matrix3i * MR_Matrix3_int_QR_Get_q(const MR_Matrix3_int_QR *_this)
MRC_API MR_std_istream * MR_input_MR_Matrix3d(MR_std_istream *s, MR_Matrix3d *mat)
MRC_API const MR_Matrix3b * MR_Matrix3_bool_QR_Get_q(const MR_Matrix3_bool_QR *_this)
MRC_API bool MR_equal_MR_Matrix3d(const MR_Matrix3d *a, const MR_Matrix3d *b)
struct MR_Matrix3b MR_Matrix3b
MRC_API MR_Matrix3d * MR_add_assign_MR_Matrix3d(MR_Matrix3d *a, const MR_Matrix3d *b)
MRC_API MR_Matrix3i MR_sub_MR_Matrix3_unsigned_char(const MR_Matrix3_unsigned_char *a, const MR_Matrix3_unsigned_char *b)
MRC_API void MR_Matrix3_bool_QR_DestroyArray(const MR_Matrix3_bool_QR *_this)
Destroys a heap-allocated array of MR_Matrix3_bool_QR. Does nothing if the pointer is null.
struct MR_Matrix3_int64_t_QR MR_Matrix3_int64_t_QR
Definition MRMatrix3.h:49
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_identity(void)
MRC_API MR_Matrix3i64 * MR_Matrix3_int64_t_QR_GetMutable_q(MR_Matrix3_int64_t_QR *_this)
MRC_API MR_Matrix3i64 MR_Matrix3i64_fromRows(const MR_Vector3i64 *x, const MR_Vector3i64 *y, const MR_Vector3i64 *z)
MRC_API void MR_Matrix3_int_QR_Set_r(MR_Matrix3_int_QR *_this, MR_Matrix3i value)
MRC_API MR_Matrix3_float_QR * MR_Matrix3_float_QR_OffsetMutablePtr(MR_Matrix3_float_QR *ptr, ptrdiff_t i)
MRC_API const MR_Matrix3i64 * MR_Matrix3_int64_t_QR_Get_q(const MR_Matrix3_int64_t_QR *_this)
MRC_API MR_Matrix3_float_QR * MR_Matrix3_float_QR_DefaultConstruct(void)
MRC_API unsigned char MR_Matrix3_unsigned_char_det(const MR_Matrix3_unsigned_char *_this)
MRC_API MR_Matrix3_int_QR * MR_Matrix3_int_QR_DefaultConstructArray(size_t num_elems)
MRC_API MR_Matrix3i * MR_mul_assign_MR_Matrix3i_int(MR_Matrix3i *a, int b)
MRC_API MR_Vector3i64 MR_Matrix3i64_col(const MR_Matrix3i64 *_this, int i)
MRC_API void MR_Matrix3_double_QR_Destroy(const MR_Matrix3_double_QR *_this)
Destroys a heap-allocated instance of MR_Matrix3_double_QR. Does nothing if the pointer is null.
MRC_API const MR_Vector3_unsigned_char * MR_Matrix3_unsigned_char_Get_z(const MR_Matrix3_unsigned_char *_this)
MRC_API MR_Matrix3f MR_div_MR_Matrix3f_float(MR_Matrix3f b, float a)
Generated from function MR::operator/.
MRC_API MR_Matrix3b * MR_Matrix3_bool_QR_GetMutable_q(MR_Matrix3_bool_QR *_this)
MRC_API MR_Vector3f MR_mul_MR_Matrix3f_MR_Vector3f(const MR_Matrix3f *a, const MR_Vector3f *b)
MRC_API MR_Matrix3f * MR_Matrix3_float_QR_GetMutable_r(MR_Matrix3_float_QR *_this)
MRC_API MR_Matrix3_unsigned_char_QR * MR_Matrix3_unsigned_char_QR_ConstructFrom(const MR_Matrix3_unsigned_char *q, const MR_Matrix3_unsigned_char *r)
MRC_API MR_Matrix3f MR_Matrix3f_transposed(const MR_Matrix3f *_this)
MRC_API const MR_Matrix3b * MR_Matrix3_bool_QR_Get_r(const MR_Matrix3_bool_QR *_this)
MRC_API MR_Matrix3i64 MR_mul_MR_Matrix3i64(const MR_Matrix3i64 *a, const MR_Matrix3i64 *b)
MRC_API MR_std_istream * MR_input_MR_Matrix3i64(MR_std_istream *s, MR_Matrix3i64 *mat)
MRC_API MR_Matrix3f MR_mul_float_MR_Matrix3f(float a, const MR_Matrix3f *b)
MRC_API MR_Matrix3f MR_Matrix3f_scale_1_MR_Vector3f(const MR_Vector3f *s)
MRC_API const MR_Matrix3d * MR_Matrix3_double_QR_Get_q(const MR_Matrix3_double_QR *_this)
MRC_API MR_Matrix3d * MR_Matrix3_double_QR_GetMutable_q(MR_Matrix3_double_QR *_this)
MRC_API MR_Matrix3i MR_mul_MR_Matrix3i_int(const MR_Matrix3i *b, int a)
MRC_API MR_Matrix3_int64_t_QR * MR_Matrix3_int64_t_QR_AssignFromAnother(MR_Matrix3_int64_t_QR *_this, const MR_Matrix3_int64_t_QR *_other)
MRC_API void MR_Matrix3_int64_t_QR_Destroy(const MR_Matrix3_int64_t_QR *_this)
Destroys a heap-allocated instance of MR_Matrix3_int64_t_QR. Does nothing if the pointer is null.
MRC_API MR_std_istream * MR_input_MR_Matrix3i(MR_std_istream *s, MR_Matrix3i *mat)
MRC_API double MR_Matrix3d_trace(const MR_Matrix3d *_this)
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_zero(void)
MRC_API MR_Matrix3i * MR_div_assign_MR_Matrix3i_int(MR_Matrix3i *a, int b)
MRC_API MR_Matrix3f MR_Matrix3f_inverse(const MR_Matrix3f *_this)
MRC_API void MR_Matrix3_unsigned_char_Set_x(MR_Matrix3_unsigned_char *_this, const MR_Vector3_unsigned_char *value)
MRC_API MR_Matrix3f MR_Matrix3f_fromRows(const MR_Vector3f *x, const MR_Vector3f *y, const MR_Vector3f *z)
MRC_API MR_Matrix3i64 * MR_mul_assign_MR_Matrix3i64_int64_t(MR_Matrix3i64 *a, MR_int64_t b)
MRC_API MR_Matrix3_int_QR * MR_Matrix3_int_QR_ConstructFrom(MR_Matrix3i q, MR_Matrix3i r)
MRC_API MR_Matrix3d MR_Matrix3d_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Matrix3f MR_sub_MR_Matrix3f(const MR_Matrix3f *a, const MR_Matrix3f *b)
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_OffsetMutablePtr(MR_Matrix3_unsigned_char *ptr, ptrdiff_t i)
MRC_API float MR_Matrix3f_normSq(const MR_Matrix3f *_this)
MRC_API MR_Matrix3d * MR_mul_assign_MR_Matrix3d_double(MR_Matrix3d *a, double b)
MRC_API void MR_Matrix3_int_QR_Set_q(MR_Matrix3_int_QR *_this, MR_Matrix3i value)
struct MR_Matrix3_bool_QR MR_Matrix3_bool_QR
Definition MRMatrix3.h:21
MRC_API MR_Vector3b MR_Matrix3b_col(const MR_Matrix3b *_this, int i)
MRC_API bool MR_equal_MR_Matrix3b(const MR_Matrix3b *a, const MR_Matrix3b *b)
MRC_API MR_Matrix3_int_QR * MR_Matrix3_int_QR_DefaultConstruct(void)
MRC_API MR_Matrix3_double_QR * MR_Matrix3_double_QR_DefaultConstructArray(size_t num_elems)
MRC_API MR_Matrix3i * MR_Matrix3_int_QR_GetMutable_r(MR_Matrix3_int_QR *_this)
MRC_API MR_Matrix3_unsigned_char_QR * MR_Matrix3_unsigned_char_QR_DefaultConstruct(void)
MRC_API MR_Matrix3i64 * MR_Matrix3i64_DefaultConstructArray(size_t num_elems)
MRC_API MR_Vector3i64 * MR_Matrix3i64_index_mut(MR_Matrix3i64 *_this, int row)
MRC_API MR_std_ostream * MR_print_MR_Matrix3_unsigned_char(MR_std_ostream *s, const MR_Matrix3_unsigned_char *mat)
MRC_API void MR_Matrix3_unsigned_char_DestroyArray(const MR_Matrix3_unsigned_char *_this)
Destroys a heap-allocated array of MR_Matrix3_unsigned_char. Does nothing if the pointer is null.
MRC_API float MR_Matrix3f_norm(const MR_Matrix3f *_this)
MRC_API MR_Matrix3b * MR_mul_assign_MR_Matrix3b_bool(MR_Matrix3b *a, bool b)
MRC_API MR_Matrix3b MR_Matrix3b_Construct(const MR_Vector3b *x, const MR_Vector3b *y, const MR_Vector3b *z)
MRC_API MR_Matrix3f MR_Matrix3f_rotation_float(const MR_Vector3f *axis, float angle)
MRC_API void MR_Matrix3_int64_t_QR_Set_r(MR_Matrix3_int64_t_QR *_this, MR_Matrix3i64 value)
MRC_API MR_Vector3f MR_Matrix3f_col(const MR_Matrix3f *_this, int i)
MRC_API MR_Matrix3i MR_add_MR_Matrix3b(const MR_Matrix3b *a, const MR_Matrix3b *b)
MRC_API MR_Matrix3i MR_mul_bool_MR_Matrix3b(bool a, const MR_Matrix3b *b)
MRC_API MR_Matrix3d MR_Matrix3d_Construct(const MR_Vector3d *x, const MR_Vector3d *y, const MR_Vector3d *z)
MRC_API MR_Vector3i MR_mul_MR_Matrix3i_MR_Vector3i(const MR_Matrix3i *a, const MR_Vector3i *b)
MRC_API MR_Matrix3i MR_Matrix3i_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API void MR_Matrix3_int_QR_Destroy(const MR_Matrix3_int_QR *_this)
Destroys a heap-allocated instance of MR_Matrix3_int_QR. Does nothing if the pointer is null.
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_QR_GetMutable_r(MR_Matrix3_unsigned_char_QR *_this)
MRC_API const MR_Matrix3_bool_QR * MR_Matrix3_bool_QR_OffsetPtr(const MR_Matrix3_bool_QR *ptr, ptrdiff_t i)
MRC_API MR_std_istream * MR_input_MR_Matrix3_unsigned_char(MR_std_istream *s, MR_Matrix3_unsigned_char *mat)
MRC_API MR_Matrix3f MR_Matrix3f_rotation_MR_Vector3f(const MR_Vector3f *from, const MR_Vector3f *to)
MRC_API MR_Matrix3i MR_Matrix3i_fromRows(const MR_Vector3i *x, const MR_Vector3i *y, const MR_Vector3i *z)
struct MR_Matrix3i MR_Matrix3i
MRC_API MR_Matrix3f MR_Matrix3f_Construct_double(const MR_Matrix3d *m)
MRC_API MR_Matrix3b MR_Matrix3b_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API void MR_Matrix3_int_QR_DestroyArray(const MR_Matrix3_int_QR *_this)
Destroys a heap-allocated array of MR_Matrix3_int_QR. Does nothing if the pointer is null.
MRC_API MR_Matrix3i MR_mul_MR_Matrix3b(const MR_Matrix3b *a, const MR_Matrix3b *b)
MRC_API MR_Vector3_unsigned_char * MR_Matrix3_unsigned_char_col(const MR_Matrix3_unsigned_char *_this, int i)
MRC_API MR_Matrix3_unsigned_char * MR_sub_assign_MR_Matrix3_unsigned_char(MR_Matrix3_unsigned_char *a, const MR_Matrix3_unsigned_char *b)
MRC_API MR_Matrix3i MR_Matrix3i_fromColumns(const MR_Vector3i *x, const MR_Vector3i *y, const MR_Vector3i *z)
MRC_API MR_Matrix3_double_QR * MR_Matrix3_double_QR_ConstructFrom(MR_Matrix3d q, MR_Matrix3d r)
MRC_API const MR_Matrix3_int_QR * MR_Matrix3_int_QR_OffsetPtr(const MR_Matrix3_int_QR *ptr, ptrdiff_t i)
MRC_API float MR_Matrix3f_det(const MR_Matrix3f *_this)
MRC_API double MR_Matrix3i_norm(const MR_Matrix3i *_this)
MRC_API MR_Matrix3d MR_Matrix3d_scale_1_MR_Vector3d(const MR_Vector3d *s)
struct MR_Matrix3f MR_Matrix3f
MRC_API MR_Matrix3b MR_Matrix3b_transposed(const MR_Matrix3b *_this)
MRC_API MR_Matrix3_float_QR * MR_Matrix3_float_QR_AssignFromAnother(MR_Matrix3_float_QR *_this, const MR_Matrix3_float_QR *_other)
MRC_API MR_Matrix3d MR_Matrix3d_rotation_double(const MR_Vector3d *axis, double angle)
MRC_API MR_Matrix3_int64_t_QR * MR_Matrix3_int64_t_QR_OffsetMutablePtr(MR_Matrix3_int64_t_QR *ptr, ptrdiff_t i)
MRC_API const MR_Vector3f * MR_Matrix3f_index(const MR_Matrix3f *_this, int row)
MRC_API void MR_Matrix3_int64_t_QR_Set_q(MR_Matrix3_int64_t_QR *_this, MR_Matrix3i64 value)
MRC_API MR_Vector3d * MR_Matrix3d_index_mut(MR_Matrix3d *_this, int row)
MRC_API MR_int64_t MR_Matrix3i64_det(const MR_Matrix3i64 *_this)
MRC_API MR_Matrix3d * MR_sub_assign_MR_Matrix3d(MR_Matrix3d *a, const MR_Matrix3d *b)
MRC_API MR_Matrix3b * MR_Matrix3b_DefaultConstructArray(size_t num_elems)
MRC_API MR_Matrix3i64 MR_Matrix3i64_scale_3(MR_int64_t sx, MR_int64_t sy, MR_int64_t sz)
MRC_API MR_Matrix3_bool_QR * MR_Matrix3_bool_QR_OffsetMutablePtr(MR_Matrix3_bool_QR *ptr, ptrdiff_t i)
MRC_API bool MR_equal_MR_Matrix3_unsigned_char(const MR_Matrix3_unsigned_char *a, const MR_Matrix3_unsigned_char *b)
MRC_API void MR_Matrix3_float_QR_Destroy(const MR_Matrix3_float_QR *_this)
Destroys a heap-allocated instance of MR_Matrix3_float_QR. Does nothing if the pointer is null.
MRC_API MR_Matrix3f MR_mul_MR_Matrix3f_float(const MR_Matrix3f *b, float a)
MRC_API bool MR_equal_MR_Matrix3i64(const MR_Matrix3i64 *a, const MR_Matrix3i64 *b)
MRC_API void MR_Matrix3_unsigned_char_Set_y(MR_Matrix3_unsigned_char *_this, const MR_Vector3_unsigned_char *value)
MRC_API MR_Matrix3b MR_Matrix3b_fromRows(const MR_Vector3b *x, const MR_Vector3b *y, const MR_Vector3b *z)
MRC_API MR_Matrix3f MR_Matrix3f_fromColumns(const MR_Vector3f *x, const MR_Vector3f *y, const MR_Vector3f *z)
MRC_API MR_Vector3_unsigned_char * MR_Matrix3_unsigned_char_index_mut(MR_Matrix3_unsigned_char *_this, int row)
MRC_API MR_Matrix3d MR_Matrix3d_identity(void)
Generated from method MR::Matrix3d::identity.
MRC_API MR_Matrix3_bool_QR * MR_Matrix3_bool_QR_DefaultConstructArray(size_t num_elems)
MRC_API const MR_Vector3i64 * MR_Matrix3i64_index(const MR_Matrix3i64 *_this, int row)
MRC_API MR_Matrix3b MR_Matrix3b_zero(void)
Generated from method MR::Matrix3b::zero.
MRC_API bool MR_not_equal_MR_Matrix3b(const MR_Matrix3b *a, const MR_Matrix3b *b)
MRC_API MR_Matrix3d MR_Matrix3d_inverse(const MR_Matrix3d *_this)
MRC_API MR_Vector3i * MR_Matrix3i_index_mut(MR_Matrix3i *_this, int row)
MRC_API MR_Matrix3b MR_Matrix3b_identity(void)
Generated from method MR::Matrix3b::identity.
MRC_API MR_Matrix3i64 MR_div_MR_Matrix3i64_int64_t(MR_Matrix3i64 b, MR_int64_t a)
Generated from function MR::operator/.
MRC_API MR_Matrix3b * MR_sub_assign_MR_Matrix3b(MR_Matrix3b *a, const MR_Matrix3b *b)
MRC_API MR_Matrix3_bool_QR * MR_Matrix3_bool_QR_AssignFromAnother(MR_Matrix3_bool_QR *_this, const MR_Matrix3_bool_QR *_other)
MRC_API MR_Matrix3_float_QR * MR_Matrix3f_qr(const MR_Matrix3f *_this)
MRC_API MR_Matrix3i MR_Matrix3i_scale_1_int(int s)
MRC_API bool MR_not_equal_MR_Matrix3f(const MR_Matrix3f *a, const MR_Matrix3f *b)
MRC_API MR_Matrix3i MR_sub_MR_Matrix3b(const MR_Matrix3b *a, const MR_Matrix3b *b)
MRC_API MR_Matrix3_int_QR * MR_Matrix3_int_QR_ConstructFromAnother(const MR_Matrix3_int_QR *_other)
MRC_API MR_Matrix3_unsigned_char_QR * MR_Matrix3_unsigned_char_QR_AssignFromAnother(MR_Matrix3_unsigned_char_QR *_this, const MR_Matrix3_unsigned_char_QR *_other)
MRC_API MR_Matrix3i64 * MR_sub_assign_MR_Matrix3i64(MR_Matrix3i64 *a, const MR_Matrix3i64 *b)
MRC_API MR_Matrix3i MR_mul_MR_Matrix3i(const MR_Matrix3i *a, const MR_Matrix3i *b)
MRC_API MR_Matrix3d * MR_div_assign_MR_Matrix3d_double(MR_Matrix3d *a, double b)
MRC_API MR_Matrix3i MR_Matrix3i_scale_3(int sx, int sy, int sz)
MRC_API MR_Matrix3b MR_Matrix3b_fromColumns(const MR_Vector3b *x, const MR_Vector3b *y, const MR_Vector3b *z)
MRC_API MR_Matrix3_float_QR * MR_Matrix3_float_QR_DefaultConstructArray(size_t num_elems)
MRC_API const MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_QR_Get_q(const MR_Matrix3_unsigned_char_QR *_this)
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_Construct(const MR_Vector3_unsigned_char *x, const MR_Vector3_unsigned_char *y, const MR_Vector3_unsigned_char *z)
MRC_API int MR_Matrix3i_det(const MR_Matrix3i *_this)
MRC_API MR_Matrix3b * MR_Matrix3_bool_QR_GetMutable_r(MR_Matrix3_bool_QR *_this)
MRC_API MR_std_istream * MR_input_MR_Matrix3b(MR_std_istream *s, MR_Matrix3b *mat)
MRC_API bool MR_equal_MR_Matrix3i(const MR_Matrix3i *a, const MR_Matrix3i *b)
MRC_API MR_Matrix3i MR_mul_MR_Matrix3_unsigned_char_unsigned_char(const MR_Matrix3_unsigned_char *b, unsigned char a)
MRC_API MR_Matrix3d MR_sub_MR_Matrix3d(const MR_Matrix3d *a, const MR_Matrix3d *b)
MRC_API MR_Matrix3_double_QR * MR_Matrix3_double_QR_OffsetMutablePtr(MR_Matrix3_double_QR *ptr, ptrdiff_t i)
MRC_API bool MR_equal_MR_Matrix3f(const MR_Matrix3f *a, const MR_Matrix3f *b)
MRC_API MR_Matrix3d MR_Matrix3d_approximateLinearRotationMatrixFromEuler(const MR_Vector3d *eulerAngles)
struct MR_Vector3_unsigned_char MR_Vector3_unsigned_char
Definition MRMatrix3.h:14
MRC_API MR_Matrix3b MR_Matrix3b_scale_1_bool(bool s)
MRC_API MR_std_ostream * MR_print_MR_Matrix3i64(MR_std_ostream *s, const MR_Matrix3i64 *mat)
struct MR_Matrix3_float_QR MR_Matrix3_float_QR
Definition MRMatrix3.h:63
MRC_API MR_Matrix3b MR_Matrix3b_scale_3(bool sx, bool sy, bool sz)
MRC_API int MR_Matrix3i_trace(const MR_Matrix3i *_this)
MRC_API MR_Matrix3_float_QR * MR_Matrix3_float_QR_ConstructFromAnother(const MR_Matrix3_float_QR *_other)
MRC_API MR_Matrix3i MR_Matrix3i_identity(void)
Generated from method MR::Matrix3i::identity.
MRC_API MR_Matrix3i MR_mul_MR_Matrix3b_bool(const MR_Matrix3b *b, bool a)
MRC_API void MR_Matrix3_bool_QR_Set_q(MR_Matrix3_bool_QR *_this, MR_Matrix3b value)
MRC_API MR_Matrix3f MR_Matrix3f_scale_3(float sx, float sy, float sz)
MRC_API MR_Matrix3i * MR_Matrix3i_DefaultConstructArray(size_t num_elems)
MRC_API MR_Matrix3_unsigned_char_QR * MR_Matrix3_unsigned_char_QR_OffsetMutablePtr(MR_Matrix3_unsigned_char_QR *ptr, ptrdiff_t i)
MRC_API MR_Matrix3d MR_Matrix3d_scale_3(double sx, double sy, double sz)
MRC_API void MR_Matrix3_float_QR_Set_r(MR_Matrix3_float_QR *_this, MR_Matrix3f value)
MRC_API MR_Matrix3i64 * MR_add_assign_MR_Matrix3i64(MR_Matrix3i64 *a, const MR_Matrix3i64 *b)
MRC_API MR_Vector3d MR_mul_MR_Matrix3d_MR_Vector3d(const MR_Matrix3d *a, const MR_Vector3d *b)
MRC_API const MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_OffsetPtr(const MR_Matrix3_unsigned_char *ptr, ptrdiff_t i)
MRC_API const MR_Matrix3_unsigned_char_QR * MR_Matrix3_unsigned_char_QR_OffsetPtr(const MR_Matrix3_unsigned_char_QR *ptr, ptrdiff_t i)
MRC_API MR_Matrix3d MR_Matrix3d_fromRows(const MR_Vector3d *x, const MR_Vector3d *y, const MR_Vector3d *z)
MRC_API MR_Matrix3i64 MR_Matrix3i64_scale_1_int64_t(MR_int64_t s)
MRC_API MR_Matrix3i MR_add_MR_Matrix3i(const MR_Matrix3i *a, const MR_Matrix3i *b)
MRC_API MR_Matrix3_unsigned_char_QR * MR_Matrix3_unsigned_char_QR_ConstructFromAnother(const MR_Matrix3_unsigned_char_QR *_other)
MRC_API MR_Vector3_unsigned_char * MR_Matrix3_unsigned_char_GetMutable_z(MR_Matrix3_unsigned_char *_this)
MRC_API void MR_Matrix3_double_QR_DestroyArray(const MR_Matrix3_double_QR *_this)
Destroys a heap-allocated array of MR_Matrix3_double_QR. Does nothing if the pointer is null.
MRC_API void MR_Matrix3_float_QR_DestroyArray(const MR_Matrix3_float_QR *_this)
Destroys a heap-allocated array of MR_Matrix3_float_QR. Does nothing if the pointer is null.
MRC_API MR_Matrix3f * MR_Matrix3f_DefaultConstructArray(size_t num_elems)
MRC_API MR_Matrix3f MR_Matrix3f_Construct(const MR_Vector3f *x, const MR_Vector3f *y, const MR_Vector3f *z)
MRC_API MR_Vector3f MR_Matrix3f_toEulerAngles(const MR_Matrix3f *_this)
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_scale_1_unsigned_char(unsigned char s)
MRC_API const MR_Vector3_unsigned_char * MR_Matrix3_unsigned_char_Get_x(const MR_Matrix3_unsigned_char *_this)
MRC_API MR_Matrix3d * MR_Matrix3_double_QR_GetMutable_r(MR_Matrix3_double_QR *_this)
MRC_API MR_std_ostream * MR_print_MR_Matrix3f(MR_std_ostream *s, const MR_Matrix3f *mat)
struct MR_Matrix3i64 MR_Matrix3i64
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_AssignFromAnother(MR_Matrix3_unsigned_char *_this, const MR_Matrix3_unsigned_char *_other)
MRC_API MR_Vector3_unsigned_char * MR_Matrix3_unsigned_char_GetMutable_y(MR_Matrix3_unsigned_char *_this)
MRC_API MR_Matrix3_int64_t_QR * MR_Matrix3_int64_t_QR_ConstructFrom(MR_Matrix3i64 q, MR_Matrix3i64 r)
MRC_API MR_Matrix3d * MR_Matrix3d_DefaultConstructArray(size_t num_elems)
MRC_API MR_Matrix3f MR_Matrix3f_scale_1_float(float s)
MRC_API const MR_Vector3_unsigned_char * MR_Matrix3_unsigned_char_Get_y(const MR_Matrix3_unsigned_char *_this)
MRC_API MR_Matrix3_unsigned_char_QR * MR_Matrix3_unsigned_char_QR_DefaultConstructArray(size_t num_elems)
MRC_API MR_Matrix3i64 MR_Matrix3i64_transposed(const MR_Matrix3i64 *_this)
MRC_API MR_Matrix3i MR_mul_MR_Matrix3_unsigned_char(const MR_Matrix3_unsigned_char *a, const MR_Matrix3_unsigned_char *b)
MRC_API MR_Matrix3d MR_Matrix3d_scale_1_double(double s)
MRC_API const MR_Vector3i * MR_Matrix3i_index(const MR_Matrix3i *_this, int row)
MRC_API MR_Matrix3i64 MR_Matrix3i64_identity(void)
Generated from method MR::Matrix3i64::identity.
MRC_API bool MR_Matrix3b_normSq(const MR_Matrix3b *_this)
MRC_API double MR_Matrix3d_normSq(const MR_Matrix3d *_this)
MRC_API void MR_Matrix3_int64_t_QR_DestroyArray(const MR_Matrix3_int64_t_QR *_this)
Destroys a heap-allocated array of MR_Matrix3_int64_t_QR. Does nothing if the pointer is null.
MRC_API MR_Vector3_unsigned_char * MR_Matrix3_unsigned_char_GetMutable_x(MR_Matrix3_unsigned_char *_this)
struct MR_Matrix3_unsigned_char MR_Matrix3_unsigned_char
Definition MRMatrix3.h:96
MRC_API MR_Matrix3d MR_div_MR_Matrix3d_double(MR_Matrix3d b, double a)
Generated from function MR::operator/.
MRC_API MR_Matrix3f * MR_add_assign_MR_Matrix3f(MR_Matrix3f *a, const MR_Matrix3f *b)
MRC_API MR_Matrix3d MR_Matrix3d_fromColumns(const MR_Vector3d *x, const MR_Vector3d *y, const MR_Vector3d *z)
MRC_API MR_int64_t MR_Matrix3i64_trace(const MR_Matrix3i64 *_this)
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_QR_GetMutable_q(MR_Matrix3_unsigned_char_QR *_this)
MRC_API MR_Matrix3d MR_mul_double_MR_Matrix3d(double a, const MR_Matrix3d *b)
struct MR_Matrix3_int_QR MR_Matrix3_int_QR
Definition MRMatrix3.h:35
MRC_API MR_Matrix3_int64_t_QR * MR_Matrix3_int64_t_QR_DefaultConstructArray(size_t num_elems)
MRC_API MR_Matrix3i64 MR_mul_int64_t_MR_Matrix3i64(MR_int64_t a, const MR_Matrix3i64 *b)
MRC_API MR_Matrix3f MR_mul_MR_Matrix3f(const MR_Matrix3f *a, const MR_Matrix3f *b)
MRC_API const MR_Matrix3i * MR_Matrix3_int_QR_Get_r(const MR_Matrix3_int_QR *_this)
MRC_API double MR_Matrix3d_det(const MR_Matrix3d *_this)
MRC_API MR_Matrix3d MR_Matrix3d_transposed(const MR_Matrix3d *_this)
MRC_API MR_Vector3d MR_Matrix3d_toEulerAngles(const MR_Matrix3d *_this)
MRC_API MR_std_ostream * MR_print_MR_Matrix3i(MR_std_ostream *s, const MR_Matrix3i *mat)
MRC_API MR_Matrix3_double_QR * MR_Matrix3_double_QR_ConstructFromAnother(const MR_Matrix3_double_QR *_other)
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_DefaultConstructArray(size_t num_elems)
MRC_API const MR_Matrix3_double_QR * MR_Matrix3_double_QR_OffsetPtr(const MR_Matrix3_double_QR *ptr, ptrdiff_t i)
MRC_API double MR_Matrix3d_norm(const MR_Matrix3d *_this)
MRC_API MR_Matrix3_double_QR * MR_Matrix3d_qr(const MR_Matrix3d *_this)
MRC_API bool MR_Matrix3b_det(const MR_Matrix3b *_this)
MRC_API MR_Matrix3b * MR_add_assign_MR_Matrix3b(MR_Matrix3b *a, const MR_Matrix3b *b)
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_scale_1_MR_Vector3_unsigned_char(const MR_Vector3_unsigned_char *s)
MRC_API void MR_Matrix3_unsigned_char_QR_Destroy(const MR_Matrix3_unsigned_char_QR *_this)
Destroys a heap-allocated instance of MR_Matrix3_unsigned_char_QR. Does nothing if the pointer is nul...
MRC_API const MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_QR_Get_r(const MR_Matrix3_unsigned_char_QR *_this)
MRC_API const MR_Vector3_unsigned_char * MR_Matrix3_unsigned_char_index(const MR_Matrix3_unsigned_char *_this, int row)
MRC_API MR_Matrix3d MR_Matrix3d_zero(void)
Generated from method MR::Matrix3d::zero.
MRC_API MR_Matrix3d MR_Matrix3d_rotationFromEuler(const MR_Vector3d *eulerAngles)
MRC_API MR_Matrix3f MR_Matrix3f_zero(void)
Generated from method MR::Matrix3f::zero.
MRC_API MR_Matrix3i * MR_add_assign_MR_Matrix3i(MR_Matrix3i *a, const MR_Matrix3i *b)
MRC_API MR_Vector3d MR_Matrix3d_col(const MR_Matrix3d *_this, int i)
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_fromColumns(const MR_Vector3_unsigned_char *x, const MR_Vector3_unsigned_char *y, const MR_Vector3_unsigned_char *z)
MRC_API MR_Matrix3f MR_Matrix3f_rotationFromEuler(const MR_Vector3f *eulerAngles)
MRC_API MR_Matrix3_unsigned_char * MR_mul_assign_MR_Matrix3_unsigned_char_unsigned_char(MR_Matrix3_unsigned_char *a, unsigned char b)
MRC_API const MR_Vector3d * MR_Matrix3d_index(const MR_Matrix3d *_this, int row)
MRC_API MR_Matrix3i * MR_sub_assign_MR_Matrix3i(MR_Matrix3i *a, const MR_Matrix3i *b)
MRC_API MR_Matrix3i64 MR_Matrix3i64_Construct(const MR_Vector3i64 *x, const MR_Vector3i64 *y, const MR_Vector3i64 *z)
MRC_API MR_Matrix3i64 * MR_div_assign_MR_Matrix3i64_int64_t(MR_Matrix3i64 *a, MR_int64_t b)
struct MR_Matrix3d MR_Matrix3d
MRC_API void MR_Matrix3_float_QR_Set_q(MR_Matrix3_float_QR *_this, MR_Matrix3f value)
MRC_API MR_Matrix3b * MR_div_assign_MR_Matrix3b_bool(MR_Matrix3b *a, bool b)
MRC_API unsigned char MR_Matrix3_unsigned_char_trace(const MR_Matrix3_unsigned_char *_this)
MRC_API MR_Matrix3f * MR_div_assign_MR_Matrix3f_float(MR_Matrix3f *a, float b)
MRC_API MR_Matrix3_unsigned_char * MR_Matrix3_unsigned_char_fromRows(const MR_Vector3_unsigned_char *x, const MR_Vector3_unsigned_char *y, const MR_Vector3_unsigned_char *z)
MRC_API MR_Matrix3f * MR_Matrix3_float_QR_GetMutable_q(MR_Matrix3_float_QR *_this)
MRC_API bool MR_not_equal_MR_Matrix3_unsigned_char(const MR_Matrix3_unsigned_char *a, const MR_Matrix3_unsigned_char *b)
MRC_API MR_Matrix3i64 MR_sub_MR_Matrix3i64(const MR_Matrix3i64 *a, const MR_Matrix3i64 *b)
MRC_API int MR_Matrix3i_normSq(const MR_Matrix3i *_this)
MRC_API double MR_Matrix3b_norm(const MR_Matrix3b *_this)
MRC_API MR_Matrix3i64 MR_Matrix3i64_zero(void)
Generated from method MR::Matrix3i64::zero.
MRC_API MR_Matrix3i64 MR_Matrix3i64_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
Definition MRMatrix3.h:26
MR_Vector3b x
rows, identity matrix by default
Definition MRMatrix3.h:28
MR_Vector3b z
Definition MRMatrix3.h:30
MR_Vector3b y
Definition MRMatrix3.h:29
Definition MRMatrix3.h:82
MR_Vector3d x
rows, identity matrix by default
Definition MRMatrix3.h:84
MR_Vector3d y
Definition MRMatrix3.h:85
MR_Vector3d z
Definition MRMatrix3.h:86
Definition MRMatrix3.h:68
MR_Vector3f z
Definition MRMatrix3.h:72
MR_Vector3f x
rows, identity matrix by default
Definition MRMatrix3.h:70
MR_Vector3f y
Definition MRMatrix3.h:71
Definition MRMatrix3.h:54
MR_Vector3i64 x
rows, identity matrix by default
Definition MRMatrix3.h:56
MR_Vector3i64 y
Definition MRMatrix3.h:57
MR_Vector3i64 z
Definition MRMatrix3.h:58
Definition MRMatrix3.h:40
MR_Vector3i x
rows, identity matrix by default
Definition MRMatrix3.h:42
MR_Vector3i y
Definition MRMatrix3.h:43
MR_Vector3i z
Definition MRMatrix3.h:44
Definition MRVector3.h:25
Generated from class MR::Vector3d.
Definition MRVector3.h:55
Generated from class MR::Vector3f.
Definition MRVector3.h:47
Definition MRVector3.h:34
Generated from class MR::Vector3i.
Definition MRVector3.h:63