// This is the SIP interface definition for TQWMatrix. // // Copyright (c) 2007 // Riverbank Computing Limited // // This file is part of PyTQt. // // This copy of PyTQt is free software; you can redistribute it and/or modify it // under the terms of the GNU General Public License as published by the Free // Software Foundation; either version 2, or (at your option) any later // version. // // PyTQt is supplied in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS // FOR A PARTICULAR PURPOSE. See the GNU General Public License for more // details. // // You should have received a copy of the GNU General Public License along with // PyTQt; see the file LICENSE. If not, write to the Free Software Foundation, // Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. %ExportedDoc TQWMatrix The Python ==, != and *= operators are supported. TQWMatrix invert const bool *invertible = 0 This takes no parameters and returns a tuple of the TQWMatrix result and the invertible value. void map const int x int y int *tx int *ty This takes the x and y parameters and returns a tuple containing the tx and ty values. void map const float x float y float *tx float *ty This takes the x and y parameters and returns a tuple containing the tx and ty values. (TQt v1.x) void map const double x double y double *tx double *ty This takes the x and y parameters and returns a tuple containing the tx and ty values. (TQt v2+) %End class TQWMatrix { %TypeHeaderCode #include %End public: TQWMatrix(); %If (- TQt_2_00) TQWMatrix(float,float,float,float,float,float); %End %If (TQt_2_00 -) TQWMatrix(double,double,double,double,double,double); %End void map(int /Constrained/,int /Constrained/,int *,int *) const; %If (TQt_3_0_0 -) TQRect mapRect(const TQRect &) const; %End TQPoint map(const TQPoint &) const; TQRect map(const TQRect &); const TQPointArray map(const TQPointArray &) const; %If (TQt_3_1_0 -) TQRegion map(const TQRegion &) const; TQRegion mapToRegion(const TQRect &) const; TQPointArray mapToPolygon(const TQRect &) const; %End void reset(); %If (TQt_3_0_0 -) bool isIdentity() const; bool isInvertible() const; %End %If (TQt_3_1_0 -) double det() const; %End TQWMatrix invert(bool * = 0) const; bool operator==(const TQWMatrix &) const; bool operator!=(const TQWMatrix &) const; TQWMatrix &operator*=(const TQWMatrix &); %If (TQt_3_0_0 -) // These aren't documented but are used in TQt examples. TQPoint operator*(const TQPoint &) const; TQRegion operator*(const TQRect &) const; TQRegion operator*(const TQRegion &) const; TQPointArray operator*(const TQPointArray &) const; %End %If (TQt_3_1_0 -) enum TransformationMode { Points, Areas }; static void setTransformationMode(TransformationMode); static TransformationMode transformationMode(); %End %If (- TQt_2_00) void setMatrix(float,float,float,float,float,float); float m11(); float m12(); float m21(); float m22(); float dx(); float dy(); void map(float,float,float *,float *) const; TQWMatrix &translate(float,float); TQWMatrix &scale(float,float); TQWMatrix &shear(float,float); TQWMatrix &rotate(float); %End %If (TQt_2_00 -) void setMatrix(double,double,double,double,double,double); double m11(); double m12(); double m21(); double m22(); double dx(); double dy(); void map(double,double,double *,double *) const; TQWMatrix &translate(double,double); TQWMatrix &scale(double,double); TQWMatrix &shear(double,double); TQWMatrix &rotate(double); %End };