X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/555526fbff27722462383e12e72b7adc84423540..da9e956384a0619a0ecaa0bd1e4ba26b133b60a9:/include/wx/matrix.h diff --git a/include/wx/matrix.h b/include/wx/matrix.h index 0cbeb2ba0d..53e0beb3de 100644 --- a/include/wx/matrix.h +++ b/include/wx/matrix.h @@ -1,21 +1,17 @@ ///////////////////////////////////////////////////////////////////////////// // Name: matrix.h // Purpose: wxTransformMatrix class. NOT YET USED -//! Author: Chris Breeze, Julian Smart +// Author: Chris Breeze, Julian Smart // Modified by: Klaas Holwerda // Created: 01/02/97 // RCS-ID: $Id$ -// Copyright: (c) Julian Smart and Markus Holzem +// Copyright: (c) Julian Smart, Chris Breeze // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_MATRIXH__ #define _WX_MATRIXH__ -#ifdef __GNUG__ -#pragma interface "matrix.h" -#endif - //! headerfiles="matrix.h wx/object.h" #include "wx/object.h" @@ -27,10 +23,10 @@ // Note: this is intended to be used in wxDC at some point to replace // the current system of scaling/translation. It is not yet used. -//:defenition +//:definition // A 3x3 matrix to do 2D transformations. -// It can be used to map data to window coordinates. -// But also for manipulating your own data. +// It can be used to map data to window coordinates, +// and also for manipulating your own data. // For example drawing a picture (composed of several primitives) // at a certain coordinate and angle within another parent picture. // At all times m_isIdentity is set if the matrix itself is an Identity matrix. @@ -52,8 +48,8 @@ public: void SetValue(int col, int row, double value); void operator = (const wxTransformMatrix& mat); - bool operator == (const wxTransformMatrix& mat); - bool operator != (const wxTransformMatrix& mat); + bool operator == (const wxTransformMatrix& mat) const; + bool operator != (const wxTransformMatrix& mat) const; //multiply every element by t wxTransformMatrix& operator*=(const double& t); @@ -123,7 +119,6 @@ public: //!code: matrix' = | 0 -1 0 | x matrix //!code: | 0 0 1 | wxTransformMatrix& Mirror(bool x=true, bool y=false); - // Translate by dx, dy: //!ex: //!code: | 1 0 dx | @@ -219,15 +214,15 @@ inline double wxTransformMatrix::TransformY(double y) const inline bool wxTransformMatrix::IsIdentity1(void) const { return - (m_matrix[0][0] == 1.0 && - m_matrix[1][1] == 1.0 && - m_matrix[2][2] == 1.0 && - m_matrix[1][0] == 0.0 && - m_matrix[2][0] == 0.0 && - m_matrix[0][1] == 0.0 && - m_matrix[2][1] == 0.0 && - m_matrix[0][2] == 0.0 && - m_matrix[1][2] == 0.0) ; + ( wxIsSameDouble(m_matrix[0][0], 1.0) && + wxIsSameDouble(m_matrix[1][1], 1.0) && + wxIsSameDouble(m_matrix[2][2], 1.0) && + wxIsSameDouble(m_matrix[1][0], 0.0) && + wxIsSameDouble(m_matrix[2][0], 0.0) && + wxIsSameDouble(m_matrix[0][1], 0.0) && + wxIsSameDouble(m_matrix[2][1], 0.0) && + wxIsSameDouble(m_matrix[0][2], 0.0) && + wxIsSameDouble(m_matrix[1][2], 0.0) ); } // Calculates the determinant of a 2 x 2 matrix @@ -236,5 +231,4 @@ inline double wxCalculateDet(double a11, double a21, double a12, double a22) return a11 * a22 - a12 * a21; } -#endif - // _WX_MATRIXH__ +#endif // _WX_MATRIXH__