2x2 matrix for rotation and scaling. More...

#include <Urho3D/Math/Matrix2.h>

Collaboration diagram for Urho3D::Matrix2:
[legend]

Public Member Functions

 Matrix2 () noexcept
 Construct an identity matrix.
 
 Matrix2 (const Matrix2 &matrix) noexcept=default
 Copy-construct from another matrix.
 
 Matrix2 (float v00, float v01, float v10, float v11) noexcept
 Construct from values.
 
 Matrix2 (const float *data) noexcept
 Construct from a float array.
 
Matrix2operator= (const Matrix2 &rhs) noexcept=default
 Assign from another matrix.
 
bool operator== (const Matrix2 &rhs) const
 Test for equality with another matrix without epsilon.
 
bool operator!= (const Matrix2 &rhs) const
 Test for inequality with another matrix without epsilon.
 
Vector2 operator* (const Vector2 &rhs) const
 Multiply a Vector2.
 
Matrix2 operator+ (const Matrix2 &rhs) const
 Add a matrix.
 
Matrix2 operator- (const Matrix2 &rhs) const
 Subtract a matrix.
 
Matrix2 operator* (float rhs) const
 Multiply with a scalar.
 
Matrix2 operator* (const Matrix2 &rhs) const
 Multiply a matrix.
 
void SetScale (const Vector2 &scale)
 Set scaling elements.
 
void SetScale (float scale)
 Set uniform scaling elements.
 
Vector2 Scale () const
 Return the scaling part.
 
Matrix2 Transpose () const
 Return transpose.
 
Matrix2 Scaled (const Vector2 &scale) const
 Return scaled by a vector.
 
bool Equals (const Matrix2 &rhs) const
 Test for equality with another matrix with epsilon.
 
Matrix2 Inverse () const
 Return inverse.
 
const float * Data () const
 Return float data.
 
String ToString () const
 Return as string.
 

Static Public Member Functions

static void BulkTranspose (float *dest, const float *src, unsigned count)
 Bulk transpose matrices.
 

Public Attributes

float m00_
 
float m01_
 
float m10_
 
float m11_
 

Static Public Attributes

static const Matrix2 ZERO
 Zero matrix.
 
static const Matrix2 IDENTITY
 Identity matrix.
 

Detailed Description

2x2 matrix for rotation and scaling.


The documentation for this class was generated from the following files:
  • Source/Urho3D/Math/Matrix2.h
  • Source/Urho3D/Math/Matrix2.cpp