Two dimensional matrix. More...
#include <Matrix2.hh>
Public Member Functions | |
constexpr Vector2< Value_ > const & | Y () const |
y More... | |
Vector2< Value_ > & | Y () |
Constructor | |
constexpr | Matrix2 () |
Default constructor. More... | |
Matrix2 (Value_ scalar, Matrix matrix=Matrix::diagonal) | |
Diagonal Matrix. More... | |
Matrix2 (Vector2< Value_ > const &vector_1, Vector2< Value_ > const &vector_2, Matrix matrix=Matrix::row) | |
Constructor accepting two vectors. More... | |
template<typename Value_2 > | |
constexpr | Matrix2 (Matrix2< Value_2 > const &matrix) |
Constructor with type conversion. More... | |
Setter | |
Matrix2 & | SetToIdentity () |
Set equal to the identity rotation. More... | |
Matrix2 & | SetDiagonal (Value_ value) |
Set diagonal. More... | |
Matrix2 & | SetUniform (Value_ value) |
Set uniform. More... | |
void | SetRows (Vector2< Value_ > const &x, Vector2< Value_ > const &y) |
Set rows. More... | |
void | SetColumns (Vector2< Value_ > const &x, Vector2< Value_ > const &y) |
Set columns. More... | |
Accessor and getter | |
constexpr Vector2< Value_ > const & | X () const |
x More... | |
Vector2< Value_ > & | X () |
x More... | |
Angles | |
Angle | PhiX () const |
Phi x. More... | |
Angle | PhiY () const |
Phi y. More... | |
Scalars | |
constexpr Value_ | Trace () const |
Trace. More... | |
constexpr ValueSquare | Determinant () const |
Determinant. More... | |
constexpr Value_ | Minor (Dim2 delete_1, Dim2 delete_2) const |
Minor. More... | |
Vectors | |
constexpr Vector2< Value_ > | ColumnX () const |
x column More... | |
constexpr Vector2< Value_ > | ColumnY () const |
y column More... | |
Matrices | |
constexpr Matrix2 | Transposed () const |
transposed More... | |
constexpr Matrix2 & | Transpose () |
transpose this matrix More... | |
constexpr Matrix2< ValueInverse > | Inverse () |
inverse of this matrix More... | |
Matrix2 & | Rotate (Angle const &phi) |
Rotation. More... | |
Products | |
template<typename Value_2_ > | |
constexpr Matrix2< ValueProduct< Value_2_ > > | Scale (Value_2_ scalar) const |
scale with a scalar More... | |
template<typename Value_2_ > | |
constexpr Matrix2< ValueProduct< Value_2_ > > | Multiply (Matrix2< Value_2_ > const &matrix) const |
multiply with a matrix More... | |
template<typename Value_2_ > | |
constexpr Vector2< ValueProduct< Value_2_ > > | Multiply (Vector2< Value_2_ > const &vector) const |
multiply with a vector More... | |
constexpr Matrix2< ValueSquare > | Square () const |
Square. More... | |
Eigen system | |
constexpr Array2< Value_ > | EigenValues () const |
Eigen values. More... | |
constexpr Array2< Vector2< Value_ > > | EigenVectors () const |
Eigen vectors. More... | |
constexpr Array2< GradedVector2< Value_ > > | EigenSystem () const |
Eigen system. More... | |
Operators | |
constexpr bool | operator< (Matrix2 const &matrix) const |
Less than comparison according to absolute value of the determinant. More... | |
constexpr bool | operator== (Matrix2 const &matrix) const |
Equality comparison. More... | |
template<typename Value_2 , typename = OnlyIfNotOrSameQuantity<Value_2>> | |
Matrix2 & | operator+= (Matrix2< Value_2 > const &matrix) |
Addition. More... | |
template<typename Value_2 , typename = OnlyIfNotOrSameQuantity<Value_2>> | |
Matrix2 & | operator-= (Matrix2< Value_2 > const &matrix) |
Substraction. More... | |
template<typename Value_2_ , typename = OnlyIfNotOrSameQuantity<Value_2_>> | |
Matrix2< ValueQuotient< Value_2_ > > | operator/= (Value_2_ scalar) |
Division by scalar. More... | |
template<typename Value_2_ > | |
constexpr Matrix2< ValueQuotient< Value_2_ > > | operator/ (Value_2_ scalar) |
Division by scalar. More... | |
template<typename Value_2_ , typename = OnlyIfNotQuantity<Value_2_>> | |
Matrix2 & | operator*= (Matrix2< Value_2_ > const &matrix) |
Multiplication with a matrix. More... | |
template<typename Value_2_ > | |
constexpr Matrix2< ValueProduct< Value_2_ > > | operator* (Matrix2< Value_2_ > const &matrix) const |
Multiplication with a matrix. More... | |
template<typename Value_2_ > | |
constexpr Vector2< ValueProduct< Value_2_ > > | operator* (Vector2< Value_2_ > const &vector) const |
Multiplication with a Vector. More... | |
constexpr Vector2< Value_ > const & | operator[] (Dim2 dim_2) const |
rows More... | |
Vector2< Value_ > & | operator[] (Dim2 dim_2) |
rows More... | |
auto & | operator<< (std::ostream &stream, Matrix2< Value_ > const &matrix) |
Output stream operator. More... | |
Iterators | |
using | Dimension = Dim2 |
const begin More... | |
constexpr ConstSubIterator< boca::Matrix2, Vector2, Value_ > | begin () const |
const begin More... | |
constexpr ConstSubIterator< boca::Matrix2, Vector2, Value_ > | end () const |
const end More... | |
SubIterator< boca::Matrix2, Vector2, Value_ > | begin () |
begin More... | |
SubIterator< boca::Matrix2, Vector2, Value_ > | end () |
end More... | |
Detailed Description
template<typename Value_>
class boca::Matrix2< Value_ >
Two dimensional matrix.
Member Typedef Documentation
using boca::Matrix2< Value_ >::Dimension = Dim2 |
const begin
Constructor & Destructor Documentation
|
inline |
Default constructor.
|
inline |
Diagonal Matrix.
|
inline |
Constructor accepting two vectors.
|
inline |
Constructor with type conversion.
Member Function Documentation
|
inline |
const begin
|
inline |
begin
|
inline |
x column
|
inline |
y column
|
inline |
Determinant.
|
inline |
Eigen system.
|
inline |
Eigen values.
|
inline |
Eigen vectors.
|
inline |
const end
|
inline |
end
|
inline |
inverse of this matrix
|
inline |
Minor.
|
inline |
multiply with a matrix
|
inline |
multiply with a vector
|
inline |
Multiplication with a matrix.
|
inline |
Multiplication with a Vector.
|
inline |
Multiplication with a matrix.
|
inline |
Addition.
|
inline |
Substraction.
|
inline |
Division by scalar.
|
inline |
Division by scalar.
|
inline |
Less than comparison according to absolute value of the determinant.
|
inline |
Equality comparison.
|
inline |
rows
|
inline |
rows
|
inline |
Phi x.
|
inline |
Phi y.
|
inline |
Rotation.
|
inline |
scale with a scalar
|
inline |
Set columns.
|
inline |
Set diagonal.
|
inline |
Set rows.
|
inline |
Set equal to the identity rotation.
|
inline |
Set uniform.
|
inline |
Square.
|
inline |
Trace.
|
inline |
transpose this matrix
|
inline |
transposed
|
inline |
x
|
inline |
x
|
inline |
y
|
inline |
Friends And Related Function Documentation
|
friend |
Output stream operator.
The documentation for this class was generated from the following file:
- boca/math/Matrix2.hh