MeshLib C Docs
Loading...
Searching...
No Matches
MRMatrix2.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMesh/MRVector2.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_std_istream MR_std_istream; // Defined in `#include <MRCMisc/iostream.h>`.
15typedef struct MR_std_ostream MR_std_ostream; // Defined in `#include <MRCMisc/iostream.h>`.
16
17
26
35
44
53
62
65
70
78
81
84
88
91MRC_API MR_Matrix2b MR_Matrix2b_scale_2(bool sx, bool sy);
92
96
102
109
114MRC_API const MR_Vector2b *MR_Matrix2b_index(const MR_Matrix2b *_this, int row);
115
120
124MRC_API MR_Vector2b MR_Matrix2b_col(const MR_Matrix2b *_this, int i);
125
129MRC_API bool MR_Matrix2b_trace(const MR_Matrix2b *_this);
130
134MRC_API bool MR_Matrix2b_normSq(const MR_Matrix2b *_this);
135
138MRC_API double MR_Matrix2b_norm(const MR_Matrix2b *_this);
139
143MRC_API bool MR_Matrix2b_det(const MR_Matrix2b *_this);
144
149
153MRC_API bool MR_equal_MR_Matrix2b(const MR_Matrix2b *a, const MR_Matrix2b *b);
154
158MRC_API bool MR_not_equal_MR_Matrix2b(const MR_Matrix2b *a, const MR_Matrix2b *b);
159
160// 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.
165
170
174
178
181
187
193
198
203
209
215
221
227
230
235
243
246
249
253
256MRC_API MR_Matrix2i MR_Matrix2i_scale_2(int sx, int sy);
257
261
267
274
279MRC_API const MR_Vector2i *MR_Matrix2i_index(const MR_Matrix2i *_this, int row);
280
285
289MRC_API MR_Vector2i MR_Matrix2i_col(const MR_Matrix2i *_this, int i);
290
294MRC_API int MR_Matrix2i_trace(const MR_Matrix2i *_this);
295
299MRC_API int MR_Matrix2i_normSq(const MR_Matrix2i *_this);
300
303MRC_API double MR_Matrix2i_norm(const MR_Matrix2i *_this);
304
308MRC_API int MR_Matrix2i_det(const MR_Matrix2i *_this);
309
314
318MRC_API bool MR_equal_MR_Matrix2i(const MR_Matrix2i *a, const MR_Matrix2i *b);
319
323MRC_API bool MR_not_equal_MR_Matrix2i(const MR_Matrix2i *a, const MR_Matrix2i *b);
324
325// 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.
330
335
339
343
346
352
358
363
368
374
380
386
392
395
400
408
411
414
418
421MRC_API MR_Matrix2i64 MR_Matrix2i64_scale_2(MR_int64_t sx, MR_int64_t sy);
422
426
432
439
444MRC_API const MR_Vector2i64 *MR_Matrix2i64_index(const MR_Matrix2i64 *_this, int row);
445
450
454MRC_API MR_Vector2i64 MR_Matrix2i64_col(const MR_Matrix2i64 *_this, int i);
455
459MRC_API MR_int64_t MR_Matrix2i64_trace(const MR_Matrix2i64 *_this);
460
464MRC_API MR_int64_t MR_Matrix2i64_normSq(const MR_Matrix2i64 *_this);
465
468MRC_API double MR_Matrix2i64_norm(const MR_Matrix2i64 *_this);
469
473MRC_API MR_int64_t MR_Matrix2i64_det(const MR_Matrix2i64 *_this);
474
479
483MRC_API bool MR_equal_MR_Matrix2i64(const MR_Matrix2i64 *a, const MR_Matrix2i64 *b);
484
489
490// 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.
495
500
504
508
511
517
523
528
533
539
545
551
557
560
565
573
576
579
583
586MRC_API MR_Matrix2f MR_Matrix2f_scale_2(float sx, float sy);
587
591
595
601
607
614
619MRC_API const MR_Vector2f *MR_Matrix2f_index(const MR_Matrix2f *_this, int row);
620
625
629MRC_API MR_Vector2f MR_Matrix2f_col(const MR_Matrix2f *_this, int i);
630
634MRC_API float MR_Matrix2f_trace(const MR_Matrix2f *_this);
635
639MRC_API float MR_Matrix2f_normSq(const MR_Matrix2f *_this);
640
643MRC_API float MR_Matrix2f_norm(const MR_Matrix2f *_this);
644
648MRC_API float MR_Matrix2f_det(const MR_Matrix2f *_this);
649
654
659
663MRC_API bool MR_equal_MR_Matrix2f(const MR_Matrix2f *a, const MR_Matrix2f *b);
664
668MRC_API bool MR_not_equal_MR_Matrix2f(const MR_Matrix2f *a, const MR_Matrix2f *b);
669
670// 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.
675
680
684
688
691
697
703
708
713
719
725
731
737
740
745
753
756
759
763
766MRC_API MR_Matrix2d MR_Matrix2d_scale_2(double sx, double sy);
767
771
775
781
787
794
799MRC_API const MR_Vector2d *MR_Matrix2d_index(const MR_Matrix2d *_this, int row);
800
805
809MRC_API MR_Vector2d MR_Matrix2d_col(const MR_Matrix2d *_this, int i);
810
814MRC_API double MR_Matrix2d_trace(const MR_Matrix2d *_this);
815
819MRC_API double MR_Matrix2d_normSq(const MR_Matrix2d *_this);
820
823MRC_API double MR_Matrix2d_norm(const MR_Matrix2d *_this);
824
828MRC_API double MR_Matrix2d_det(const MR_Matrix2d *_this);
829
834
839
843MRC_API bool MR_equal_MR_Matrix2d(const MR_Matrix2d *a, const MR_Matrix2d *b);
844
848MRC_API bool MR_not_equal_MR_Matrix2d(const MR_Matrix2d *a, const MR_Matrix2d *b);
849
850// 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.
855
860
864
868
871
877
883
888
893
899
905
911
917
918#ifdef __cplusplus
919} // extern "C"
920#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 bool MR_equal_MR_Matrix2i64(const MR_Matrix2i64 *a, const MR_Matrix2i64 *b)
MRC_API float MR_Matrix2f_det(const MR_Matrix2f *_this)
MRC_API MR_Matrix2i64 MR_mul_MR_Matrix2i64_int64_t(const MR_Matrix2i64 *b, MR_int64_t a)
MRC_API MR_Matrix2f MR_Matrix2f_fromRows(const MR_Vector2f *x, const MR_Vector2f *y)
MRC_API MR_Matrix2i64 MR_sub_MR_Matrix2i64(const MR_Matrix2i64 *a, const MR_Matrix2i64 *b)
MRC_API MR_Vector2i MR_mul_MR_Matrix2i_MR_Vector2i(const MR_Matrix2i *a, const MR_Vector2i *b)
MRC_API MR_Matrix2f MR_Matrix2f_transposed(const MR_Matrix2f *_this)
MRC_API MR_std_ostream * MR_print_MR_Matrix2d(MR_std_ostream *s, const MR_Matrix2d *mat)
MRC_API MR_Matrix2i MR_Matrix2i_Construct(const MR_Vector2i *x, const MR_Vector2i *y)
MRC_API MR_Matrix2f * MR_sub_assign_MR_Matrix2f(MR_Matrix2f *a, const MR_Matrix2f *b)
MRC_API MR_Matrix2i MR_Matrix2i_transposed(const MR_Matrix2i *_this)
MRC_API MR_Matrix2i64 MR_Matrix2i64_scale_1_int64_t(MR_int64_t s)
MRC_API MR_Matrix2i64 MR_mul_int64_t_MR_Matrix2i64(MR_int64_t a, const MR_Matrix2i64 *b)
MRC_API MR_Matrix2i64 MR_Matrix2i64_Construct(const MR_Vector2i64 *x, const MR_Vector2i64 *y)
MRC_API bool MR_equal_MR_Matrix2d(const MR_Matrix2d *a, const MR_Matrix2d *b)
MRC_API MR_Vector2i64 MR_mul_MR_Matrix2i64_MR_Vector2i64(const MR_Matrix2i64 *a, const MR_Vector2i64 *b)
MRC_API MR_Matrix2f * MR_add_assign_MR_Matrix2f(MR_Matrix2f *a, const MR_Matrix2f *b)
MRC_API MR_Matrix2f MR_Matrix2f_identity(void)
Generated from method MR::Matrix2f::identity.
MRC_API MR_int64_t MR_Matrix2i64_trace(const MR_Matrix2i64 *_this)
MRC_API bool MR_Matrix2b_trace(const MR_Matrix2b *_this)
MRC_API MR_Matrix2i MR_mul_MR_Matrix2b(const MR_Matrix2b *a, const MR_Matrix2b *b)
MRC_API MR_Matrix2i64 MR_div_MR_Matrix2i64_int64_t(MR_Matrix2i64 b, MR_int64_t a)
Generated from function MR::operator/.
MRC_API MR_std_ostream * MR_print_MR_Matrix2i(MR_std_ostream *s, const MR_Matrix2i *mat)
MRC_API MR_Matrix2i64 * MR_div_assign_MR_Matrix2i64_int64_t(MR_Matrix2i64 *a, MR_int64_t b)
MRC_API MR_Matrix2i MR_mul_MR_Matrix2i_int(const MR_Matrix2i *b, int a)
MRC_API MR_Matrix2i MR_Matrix2i_scale_1_int(int s)
MRC_API MR_Matrix2i64 MR_Matrix2i64_scale_1_MR_Vector2i64(const MR_Vector2i64 *s)
MRC_API MR_std_ostream * MR_print_MR_Matrix2b(MR_std_ostream *s, const MR_Matrix2b *mat)
MRC_API int MR_Matrix2i_trace(const MR_Matrix2i *_this)
MRC_API MR_Matrix2f * MR_Matrix2f_DefaultConstructArray(size_t num_elems)
MRC_API MR_Matrix2d MR_mul_MR_Matrix2d(const MR_Matrix2d *a, const MR_Matrix2d *b)
MRC_API bool MR_not_equal_MR_Matrix2i(const MR_Matrix2i *a, const MR_Matrix2i *b)
MRC_API MR_Matrix2d MR_Matrix2d_fromRows(const MR_Vector2d *x, const MR_Vector2d *y)
MRC_API MR_Vector2b MR_Matrix2b_col(const MR_Matrix2b *_this, int i)
MRC_API MR_Matrix2i MR_div_MR_Matrix2b_bool(MR_Matrix2b b, bool a)
Generated from function MR::operator/.
MRC_API MR_Matrix2f MR_Matrix2f_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Matrix2i64 MR_Matrix2i64_fromRows(const MR_Vector2i64 *x, const MR_Vector2i64 *y)
MRC_API MR_Matrix2i MR_mul_MR_Matrix2b_bool(const MR_Matrix2b *b, bool a)
MRC_API MR_Matrix2d MR_Matrix2d_fromColumns(const MR_Vector2d *x, const MR_Vector2d *y)
MRC_API MR_std_istream * MR_input_MR_Matrix2d(MR_std_istream *s, MR_Matrix2d *mat)
MRC_API MR_std_istream * MR_input_MR_Matrix2i64(MR_std_istream *s, MR_Matrix2i64 *mat)
MRC_API MR_Matrix2i MR_sub_MR_Matrix2i(const MR_Matrix2i *a, const MR_Matrix2i *b)
MRC_API double MR_Matrix2d_normSq(const MR_Matrix2d *_this)
MRC_API bool MR_Matrix2b_det(const MR_Matrix2b *_this)
MRC_API MR_Matrix2f MR_Matrix2f_Construct(const MR_Vector2f *x, const MR_Vector2f *y)
MRC_API MR_Matrix2f MR_Matrix2f_scale_2(float sx, float sy)
MRC_API MR_Matrix2i64 MR_Matrix2i64_identity(void)
Generated from method MR::Matrix2i64::identity.
MRC_API MR_Matrix2f MR_Matrix2f_scale_1_float(float s)
MRC_API MR_Matrix2b MR_Matrix2b_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Matrix2b * MR_sub_assign_MR_Matrix2b(MR_Matrix2b *a, const MR_Matrix2b *b)
MRC_API MR_Matrix2f MR_Matrix2f_fromColumns(const MR_Vector2f *x, const MR_Vector2f *y)
struct MR_Matrix2i64 MR_Matrix2i64
MRC_API MR_Matrix2b MR_Matrix2b_transposed(const MR_Matrix2b *_this)
MRC_API MR_Matrix2i64 MR_Matrix2i64_zero(void)
Generated from method MR::Matrix2i64::zero.
MRC_API double MR_Matrix2b_norm(const MR_Matrix2b *_this)
MRC_API const MR_Vector2d * MR_Matrix2d_index(const MR_Matrix2d *_this, int row)
MRC_API MR_Vector2f MR_Matrix2f_col(const MR_Matrix2f *_this, int i)
MRC_API MR_Matrix2d MR_Matrix2d_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Matrix2d MR_Matrix2d_rotation_2(const MR_Vector2d *from, const MR_Vector2d *to)
MRC_API MR_Matrix2f MR_Matrix2f_zero(void)
Generated from method MR::Matrix2f::zero.
MRC_API bool MR_not_equal_MR_Matrix2d(const MR_Matrix2d *a, const MR_Matrix2d *b)
MRC_API double MR_Matrix2i64_norm(const MR_Matrix2i64 *_this)
MRC_API MR_Matrix2d * MR_div_assign_MR_Matrix2d_double(MR_Matrix2d *a, double b)
MRC_API MR_Matrix2i * MR_add_assign_MR_Matrix2i(MR_Matrix2i *a, const MR_Matrix2i *b)
MRC_API bool MR_equal_MR_Matrix2i(const MR_Matrix2i *a, const MR_Matrix2i *b)
MRC_API MR_Matrix2b * MR_Matrix2b_DefaultConstructArray(size_t num_elems)
MRC_API bool MR_not_equal_MR_Matrix2f(const MR_Matrix2f *a, const MR_Matrix2f *b)
MRC_API MR_Matrix2i64 MR_Matrix2i64_fromColumns(const MR_Vector2i64 *x, const MR_Vector2i64 *y)
MRC_API MR_Matrix2i MR_Matrix2i_scale_2(int sx, int sy)
MRC_API MR_Matrix2i MR_add_MR_Matrix2b(const MR_Matrix2b *a, const MR_Matrix2b *b)
MRC_API MR_Matrix2f MR_div_MR_Matrix2f_float(MR_Matrix2f b, float a)
Generated from function MR::operator/.
MRC_API MR_Matrix2i MR_Matrix2i_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Matrix2d MR_Matrix2d_rotation_1(double angle)
MRC_API MR_Matrix2d MR_Matrix2d_zero(void)
Generated from method MR::Matrix2d::zero.
MRC_API MR_Matrix2b MR_Matrix2b_Construct(const MR_Vector2b *x, const MR_Vector2b *y)
MRC_API MR_Matrix2i MR_Matrix2i_identity(void)
Generated from method MR::Matrix2i::identity.
MRC_API MR_Matrix2i MR_mul_bool_MR_Matrix2b(bool a, const MR_Matrix2b *b)
MRC_API bool MR_equal_MR_Matrix2b(const MR_Matrix2b *a, const MR_Matrix2b *b)
MRC_API int MR_Matrix2i_normSq(const MR_Matrix2i *_this)
MRC_API MR_Vector2d * MR_Matrix2d_index_mut(MR_Matrix2d *_this, int row)
MRC_API MR_Matrix2i64 MR_Matrix2i64_transposed(const MR_Matrix2i64 *_this)
MRC_API MR_Vector2i * MR_Matrix2i_index_mut(MR_Matrix2i *_this, int row)
MRC_API MR_Matrix2i64 * MR_mul_assign_MR_Matrix2i64_int64_t(MR_Matrix2i64 *a, MR_int64_t b)
MRC_API MR_Matrix2d MR_Matrix2d_scale_1_MR_Vector2d(const MR_Vector2d *s)
MRC_API MR_Matrix2d MR_Matrix2d_scale_2(double sx, double sy)
MRC_API MR_std_istream * MR_input_MR_Matrix2b(MR_std_istream *s, MR_Matrix2b *mat)
MRC_API MR_Matrix2b MR_Matrix2b_scale_1_bool(bool s)
MRC_API MR_Matrix2d MR_Matrix2d_identity(void)
Generated from method MR::Matrix2d::identity.
struct MR_Matrix2d MR_Matrix2d
MRC_API MR_Matrix2b * MR_div_assign_MR_Matrix2b_bool(MR_Matrix2b *a, bool b)
MRC_API const MR_Vector2i64 * MR_Matrix2i64_index(const MR_Matrix2i64 *_this, int row)
MRC_API MR_Matrix2b MR_Matrix2b_fromRows(const MR_Vector2b *x, const MR_Vector2b *y)
MRC_API double MR_Matrix2d_norm(const MR_Matrix2d *_this)
MRC_API MR_Matrix2i MR_Matrix2i_zero(void)
Generated from method MR::Matrix2i::zero.
MRC_API MR_Matrix2i64 MR_Matrix2i64_scale_2(MR_int64_t sx, MR_int64_t sy)
MRC_API MR_Vector2d MR_Matrix2d_col(const MR_Matrix2d *_this, int i)
struct MR_Matrix2i MR_Matrix2i
MRC_API MR_Matrix2i * MR_Matrix2i_DefaultConstructArray(size_t num_elems)
MRC_API MR_Vector2d MR_mul_MR_Matrix2d_MR_Vector2d(const MR_Matrix2d *a, const MR_Vector2d *b)
MRC_API bool MR_not_equal_MR_Matrix2i64(const MR_Matrix2i64 *a, const MR_Matrix2i64 *b)
MRC_API float MR_Matrix2f_normSq(const MR_Matrix2f *_this)
MRC_API int MR_Matrix2i_det(const MR_Matrix2i *_this)
MRC_API MR_Matrix2i MR_Matrix2i_fromColumns(const MR_Vector2i *x, const MR_Vector2i *y)
MRC_API const MR_Vector2i * MR_Matrix2i_index(const MR_Matrix2i *_this, int row)
MRC_API MR_Matrix2d * MR_add_assign_MR_Matrix2d(MR_Matrix2d *a, const MR_Matrix2d *b)
MRC_API MR_std_ostream * MR_print_MR_Matrix2i64(MR_std_ostream *s, const MR_Matrix2i64 *mat)
MRC_API MR_Vector2i64 * MR_Matrix2i64_index_mut(MR_Matrix2i64 *_this, int row)
MRC_API MR_Matrix2d MR_mul_double_MR_Matrix2d(double a, const MR_Matrix2d *b)
MRC_API double MR_Matrix2d_det(const MR_Matrix2d *_this)
MRC_API MR_Matrix2i64 MR_Matrix2i64_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API const MR_Vector2f * MR_Matrix2f_index(const MR_Matrix2f *_this, int row)
MRC_API MR_int64_t MR_Matrix2i64_normSq(const MR_Matrix2i64 *_this)
MRC_API MR_Matrix2i64 MR_add_MR_Matrix2i64(const MR_Matrix2i64 *a, const MR_Matrix2i64 *b)
MRC_API bool MR_Matrix2b_normSq(const MR_Matrix2b *_this)
MRC_API MR_Matrix2i MR_mul_MR_Matrix2i(const MR_Matrix2i *a, const MR_Matrix2i *b)
struct MR_Matrix2f MR_Matrix2f
MRC_API MR_Vector2b * MR_Matrix2b_index_mut(MR_Matrix2b *_this, int row)
MRC_API MR_int64_t MR_Matrix2i64_det(const MR_Matrix2i64 *_this)
MRC_API bool MR_not_equal_MR_Matrix2b(const MR_Matrix2b *a, const MR_Matrix2b *b)
MRC_API MR_Matrix2d MR_sub_MR_Matrix2d(const MR_Matrix2d *a, const MR_Matrix2d *b)
MRC_API MR_Matrix2i * MR_mul_assign_MR_Matrix2i_int(MR_Matrix2i *a, int b)
MRC_API MR_Matrix2i MR_sub_MR_Matrix2b(const MR_Matrix2b *a, const MR_Matrix2b *b)
MRC_API MR_Vector2i MR_mul_MR_Matrix2b_MR_Vector2b(const MR_Matrix2b *a, const MR_Vector2b *b)
MRC_API MR_Matrix2i * MR_div_assign_MR_Matrix2i_int(MR_Matrix2i *a, int b)
MRC_API MR_Vector2f MR_mul_MR_Matrix2f_MR_Vector2f(const MR_Matrix2f *a, const MR_Vector2f *b)
MRC_API MR_Matrix2f MR_mul_MR_Matrix2f_float(const MR_Matrix2f *b, float a)
MRC_API float MR_Matrix2f_trace(const MR_Matrix2f *_this)
MRC_API MR_Matrix2i64 * MR_add_assign_MR_Matrix2i64(MR_Matrix2i64 *a, const MR_Matrix2i64 *b)
MRC_API MR_Vector2f * MR_Matrix2f_index_mut(MR_Matrix2f *_this, int row)
MRC_API MR_Matrix2b * MR_add_assign_MR_Matrix2b(MR_Matrix2b *a, const MR_Matrix2b *b)
MRC_API MR_Matrix2d MR_mul_MR_Matrix2d_double(const MR_Matrix2d *b, double a)
MRC_API MR_std_istream * MR_input_MR_Matrix2i(MR_std_istream *s, MR_Matrix2i *mat)
MRC_API MR_Matrix2f MR_Matrix2f_scale_1_MR_Vector2f(const MR_Vector2f *s)
MRC_API MR_Matrix2i64 MR_mul_MR_Matrix2i64(const MR_Matrix2i64 *a, const MR_Matrix2i64 *b)
MRC_API MR_Matrix2i MR_div_MR_Matrix2i_int(MR_Matrix2i b, int a)
Generated from function MR::operator/.
MRC_API MR_Matrix2d MR_Matrix2d_inverse(const MR_Matrix2d *_this)
MRC_API float MR_Matrix2f_norm(const MR_Matrix2f *_this)
MRC_API bool MR_equal_MR_Matrix2f(const MR_Matrix2f *a, const MR_Matrix2f *b)
MRC_API MR_Matrix2i64 * MR_sub_assign_MR_Matrix2i64(MR_Matrix2i64 *a, const MR_Matrix2i64 *b)
MRC_API MR_Matrix2f MR_mul_MR_Matrix2f(const MR_Matrix2f *a, const MR_Matrix2f *b)
MRC_API MR_Matrix2d MR_Matrix2d_scale_1_double(double s)
MRC_API MR_Matrix2f * MR_div_assign_MR_Matrix2f_float(MR_Matrix2f *a, float b)
MRC_API double MR_Matrix2i_norm(const MR_Matrix2i *_this)
MRC_API MR_Matrix2b * MR_mul_assign_MR_Matrix2b_bool(MR_Matrix2b *a, bool b)
MRC_API MR_Matrix2d * MR_mul_assign_MR_Matrix2d_double(MR_Matrix2d *a, double b)
MRC_API const MR_Vector2b * MR_Matrix2b_index(const MR_Matrix2b *_this, int row)
MRC_API MR_std_ostream * MR_print_MR_Matrix2f(MR_std_ostream *s, const MR_Matrix2f *mat)
MRC_API MR_Matrix2d MR_add_MR_Matrix2d(const MR_Matrix2d *a, const MR_Matrix2d *b)
MRC_API MR_Matrix2i MR_mul_int_MR_Matrix2i(int a, const MR_Matrix2i *b)
MRC_API MR_std_istream * MR_input_MR_Matrix2f(MR_std_istream *s, MR_Matrix2f *mat)
MRC_API MR_Matrix2b MR_Matrix2b_zero(void)
Generated from method MR::Matrix2b::zero.
MRC_API MR_Matrix2i MR_Matrix2i_fromRows(const MR_Vector2i *x, const MR_Vector2i *y)
MRC_API MR_Matrix2i64 * MR_Matrix2i64_DefaultConstructArray(size_t num_elems)
MRC_API MR_Matrix2b MR_Matrix2b_fromColumns(const MR_Vector2b *x, const MR_Vector2b *y)
MRC_API MR_Matrix2d * MR_Matrix2d_DefaultConstructArray(size_t num_elems)
MRC_API MR_Matrix2f MR_Matrix2f_inverse(const MR_Matrix2f *_this)
MRC_API double MR_Matrix2d_trace(const MR_Matrix2d *_this)
MRC_API MR_Matrix2f MR_mul_float_MR_Matrix2f(float a, const MR_Matrix2f *b)
MRC_API MR_Matrix2b MR_Matrix2b_scale_2(bool sx, bool sy)
struct MR_Matrix2b MR_Matrix2b
MRC_API MR_Matrix2i * MR_sub_assign_MR_Matrix2i(MR_Matrix2i *a, const MR_Matrix2i *b)
MRC_API MR_Vector2i MR_Matrix2i_col(const MR_Matrix2i *_this, int i)
MRC_API MR_Vector2i64 MR_Matrix2i64_col(const MR_Matrix2i64 *_this, int i)
MRC_API MR_Matrix2d MR_Matrix2d_transposed(const MR_Matrix2d *_this)
MRC_API MR_Matrix2d * MR_sub_assign_MR_Matrix2d(MR_Matrix2d *a, const MR_Matrix2d *b)
MRC_API MR_Matrix2b MR_Matrix2b_scale_1_MR_Vector2b(const MR_Vector2b *s)
MRC_API MR_Matrix2i MR_Matrix2i_scale_1_MR_Vector2i(const MR_Vector2i *s)
MRC_API MR_Matrix2f MR_sub_MR_Matrix2f(const MR_Matrix2f *a, const MR_Matrix2f *b)
MRC_API MR_Matrix2f MR_Matrix2f_rotation_2(const MR_Vector2f *from, const MR_Vector2f *to)
MRC_API MR_Matrix2d MR_Matrix2d_Construct(const MR_Vector2d *x, const MR_Vector2d *y)
MRC_API MR_Matrix2f MR_add_MR_Matrix2f(const MR_Matrix2f *a, const MR_Matrix2f *b)
MRC_API MR_Matrix2i MR_add_MR_Matrix2i(const MR_Matrix2i *a, const MR_Matrix2i *b)
MRC_API MR_Matrix2f MR_Matrix2f_rotation_1(float angle)
MRC_API MR_Matrix2f * MR_mul_assign_MR_Matrix2f_float(MR_Matrix2f *a, float b)
MRC_API MR_Matrix2b MR_Matrix2b_identity(void)
Generated from method MR::Matrix2b::identity.
MRC_API MR_Matrix2d MR_div_MR_Matrix2d_double(MR_Matrix2d b, double a)
Generated from function MR::operator/.
Definition MRMatrix2.h:21
MR_Vector2b y
Definition MRMatrix2.h:24
MR_Vector2b x
rows, identity matrix by default
Definition MRMatrix2.h:23
Definition MRMatrix2.h:57
MR_Vector2d x
rows, identity matrix by default
Definition MRMatrix2.h:59
MR_Vector2d y
Definition MRMatrix2.h:60
Definition MRMatrix2.h:48
MR_Vector2f y
Definition MRMatrix2.h:51
MR_Vector2f x
rows, identity matrix by default
Definition MRMatrix2.h:50
Definition MRMatrix2.h:39
MR_Vector2i64 y
Definition MRMatrix2.h:42
MR_Vector2i64 x
rows, identity matrix by default
Definition MRMatrix2.h:41
Definition MRMatrix2.h:30
MR_Vector2i x
rows, identity matrix by default
Definition MRMatrix2.h:32
MR_Vector2i y
Definition MRMatrix2.h:33
Definition MRVector2.h:21
Generated from class MR::Vector2d.
Definition MRVector2.h:43
Generated from class MR::Vector2f.
Definition MRVector2.h:36
Definition MRVector2.h:29
Generated from class MR::Vector2i.
Definition MRVector2.h:50