You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
143 lines
4.4 KiB
143 lines
4.4 KiB
// This is the SIP interface definition for TQWMatrix.
|
|
//
|
|
// Copyright (c) 2007
|
|
// Riverbank Computing Limited <info@riverbankcomputing.co.uk>
|
|
//
|
|
// 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
|
|
<Sect2><Title>TQWMatrix</Title>
|
|
<Para>
|
|
The Python <Literal>==</Literal>, <Literal>!=</Literal> and
|
|
<Literal>*=</Literal> operators are supported.
|
|
</Para>
|
|
|
|
<FuncSynopsis>
|
|
<FuncDef>TQWMatrix <Function>invert</Function> const</FuncDef>
|
|
<ParamDef>bool *<Parameter>invertible</Parameter> = 0</ParamDef>
|
|
</FuncSynopsis>
|
|
<Para>
|
|
This takes no parameters and returns a tuple of the <Literal>TQWMatrix</Literal>
|
|
result and the <Literal>invertible</Literal> value.
|
|
</Para>
|
|
|
|
<FuncSynopsis>
|
|
<FuncDef>void <Function>map</Function> const</FuncDef>
|
|
<ParamDef>int <Parameter>x</Parameter></ParamDef>
|
|
<ParamDef>int <Parameter>y</Parameter></ParamDef>
|
|
<ParamDef>int *<Parameter>tx</Parameter></ParamDef>
|
|
<ParamDef>int *<Parameter>ty</Parameter></ParamDef>
|
|
</FuncSynopsis>
|
|
<Para>
|
|
This takes the <Literal>x</Literal> and <Literal>y</Literal> parameters and
|
|
returns a tuple containing the <Literal>tx</Literal> and <Literal>ty</Literal>
|
|
values.
|
|
</Para>
|
|
|
|
<FuncSynopsis>
|
|
<FuncDef>void <Function>map</Function> const</FuncDef>
|
|
<ParamDef>float <Parameter>x</Parameter></ParamDef>
|
|
<ParamDef>float <Parameter>y</Parameter></ParamDef>
|
|
<ParamDef>float *<Parameter>tx</Parameter></ParamDef>
|
|
<ParamDef>float *<Parameter>ty</Parameter></ParamDef>
|
|
</FuncSynopsis>
|
|
<Para>
|
|
This takes the <Literal>x</Literal> and <Literal>y</Literal> parameters and
|
|
returns a tuple containing the <Literal>tx</Literal> and <Literal>ty</Literal>
|
|
values. (TQt v1.x)
|
|
</Para>
|
|
|
|
<FuncSynopsis>
|
|
<FuncDef>void <Function>map</Function> const</FuncDef>
|
|
<ParamDef>double <Parameter>x</Parameter></ParamDef>
|
|
<ParamDef>double <Parameter>y</Parameter></ParamDef>
|
|
<ParamDef>double *<Parameter>tx</Parameter></ParamDef>
|
|
<ParamDef>double *<Parameter>ty</Parameter></ParamDef>
|
|
</FuncSynopsis>
|
|
<Para>
|
|
This takes the <Literal>x</Literal> and <Literal>y</Literal> parameters and
|
|
returns a tuple containing the <Literal>tx</Literal> and <Literal>ty</Literal>
|
|
values. (TQt v2+)
|
|
</Para>
|
|
</Sect2>
|
|
%End
|
|
|
|
|
|
class TQWMatrix
|
|
{
|
|
%TypeHeaderCode
|
|
#include <tqwmatrix.h>
|
|
%End
|
|
|
|
public:
|
|
TQWMatrix();
|
|
TQWMatrix(double,double,double,double,double,double);
|
|
|
|
void map(int /Constrained/,int /Constrained/,int *,int *) const;
|
|
|
|
TQRect mapRect(const TQRect &) const;
|
|
|
|
TQPoint map(const TQPoint &) const;
|
|
TQRect map(const TQRect &); const
|
|
TQPointArray map(const TQPointArray &) const;
|
|
TQRegion map(const TQRegion &) const;
|
|
TQRegion mapToRegion(const TQRect &) const;
|
|
TQPointArray mapToPolygon(const TQRect &) const;
|
|
|
|
void reset();
|
|
bool isIdentity() const;
|
|
|
|
bool isInvertible() const;
|
|
double det() const;
|
|
|
|
TQWMatrix invert(bool * = 0) const;
|
|
|
|
bool operator==(const TQWMatrix &) const;
|
|
bool operator!=(const TQWMatrix &) const;
|
|
TQWMatrix &operator*=(const TQWMatrix &);
|
|
|
|
// 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;
|
|
|
|
enum TransformationMode {
|
|
Points,
|
|
Areas
|
|
};
|
|
|
|
static void setTransformationMode(TransformationMode);
|
|
static TransformationMode transformationMode();
|
|
|
|
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);
|
|
};
|