phoenix_title wx.AffineMatrix2D

A 3x2 matrix representing an affine 2D transformation.

New in version 2.9.2.


class_hierarchy Class Hierarchy

Inheritance diagram for class AffineMatrix2D:

method_summary Methods Summary

__init__

Default constructor.

Concat

Concatenate this matrix with another one.

Get

Get the component values of the matrix.

Invert

Invert this matrix.

IsEqual

Check that this matrix is identical with t.

IsIdentity

Check if this is the identity matrix.

Mirror

Add mirroring to this matrix.

Rotate

Add clockwise rotation to this matrix.

Scale

Add scaling to this matrix.

Set

Set all elements of this matrix.

TransformDistance

Applies the linear part of this matrix, i.e. without translation.

TransformPoint

Applies this matrix to the point.

Translate

Add the translation to this matrix.

__ne__

Check that this matrix differs from t.

__eq__

Check that this matrix is identical with t.


api Class API

class wx.AffineMatrix2D(AffineMatrix2DBase)

Possible constructors:

AffineMatrix2D()

A 3x2 matrix representing an affine 2D transformation.


Methods

__init__(self)

Default constructor.

The matrix elements are initialize to the identity matrix.



Concat(self, t)

Concatenate this matrix with another one.

The parameter matrix is the multiplicand.

Parameters:

t (wx.AffineMatrix2DBase) – The multiplicand.

#           | t.m_11  t.m_12  0 |   | m_11  m_12   0 |
# matrix' = | t.m_21  t.m_22  0 | x | m_21  m_22   0 |
#           | t.m_tx  t.m_ty  1 |   | m_tx  m_ty   1 |


Get(self)

Get the component values of the matrix.

Return type:

tuple

Returns:

( mat2D, tr )



Invert(self)

Invert this matrix.

If the matrix is not invertible, i.e. if its determinant is 0, returns False and doesn’t modify it.

#           | m_11  m_12  0 |
# Invert    | m_21  m_22  0 |
#           | m_tx  m_ty  1 |
Return type:

bool



IsEqual(self, t)

Check that this matrix is identical with t.

Parameters:

t (wx.AffineMatrix2DBase) – The matrix compared with this.



IsIdentity(self)

Check if this is the identity matrix.

Return type:

bool



Mirror(self, direction=HORIZONTAL)

Add mirroring to this matrix.

Parameters:

direction (int) – The direction(s) used for mirroring. One of wx.HORIZONTAL, wx.VERTICAL or their combination wx.BOTH.



Rotate(self, cRadians)

Add clockwise rotation to this matrix.

Parameters:

cRadians (wx.Double) – Rotation angle in radians, clockwise.

#           | cos    sin   0 |   | self.11  self.12   0 |
# matrix' = | -sin   cos   0 | x | self.21  self.22   0 |
#           |  0      0    1 |   | self.tx  self.ty   1 |


Scale(self, xScale, yScale)

Add scaling to this matrix.

Parameters:
  • xScale (wx.Double) – Scaling in x direction.

  • yScale (wx.Double) – Scaling in y direction.

#           | xScale   0      0 |   | self.11  self.12   0 |
# matrix' = |   0    yScale   0 | x | self.21  self.22   0 |
#           |   0      0      1 |   | self.tx  self.ty   1 |


Set(self, mat2D, tr)

Set all elements of this matrix.

Parameters:
  • mat2D (wx.Matrix2D) – The rotational components of the matrix (upper 2 x 2).

  • tr (Point2DDouble) – The translational components of the matrix.



TransformDistance(self, *args, **kw)

overload Overloaded Implementations:



TransformDistance (self, p)

Applies the linear part of this matrix, i.e. without translation.

Parameters:

p (Point2DDouble) – The source receiving the transformations.

Return type:

Point2DDouble

#                                   | self.11  self.12   0 |
# dist' = | src.self.x  src._my  0 | x | self.21  self.22   0 |
#                                   | self.tx  self.ty   1 |
Returns:

The source with the transformations applied.



TransformDistance (self, dx, dy)

Parameters:
  • dx (wx.Double) –

  • dy (wx.Double) –

Return type:

tuple

Returns:

( dx, dy )





TransformPoint(self, *args, **kw)

overload Overloaded Implementations:



TransformPoint (self, p)

Applies this matrix to the point.

Parameters:

p (Point2DDouble) – The point receiving the transformations.

Return type:

Point2DDouble

#                                    | self.11  self.12   0 |
# point' = | src.self.x  src._my  1 | x | self.21  self.22   0 |
#                                    | self.tx  self.ty   1 |
Returns:

The point with the transformations applied.



TransformPoint (self, x, y)

Parameters:
  • x (wx.Double) –

  • y (wx.Double) –

Return type:

tuple

Returns:

( x, y )





Translate(self, dx, dy)

Add the translation to this matrix.

Parameters:
  • dx (wx.Double) – The translation in x direction.

  • dy (wx.Double) – The translation in y direction.

#           |  1   0   0 |   | self.11  self.12   0 |
# matrix' = |  0   1   0 | x | self.21  self.22   0 |
#           | dx  dy   1 |   | self.tx  self.ty   1 |


__ne__(self)

Check that this matrix differs from t.

Parameters:

t (wx.AffineMatrix2DBase) – The matrix compared with this.



__eq__(self)

Check that this matrix is identical with t.

Parameters:

t (wx.AffineMatrix2DBase) – The matrix compared with this.