//Auto-generated by kalyptus. DO NOT EDIT.
package org.kde.qt;

import org.kde.qt.Qt;

public class QWMatrix implements QtSupport {
	private long _qt;
	private boolean _allocatedInJavaWorld = true;
	protected QWMatrix(Class dummy){}

	public static final int Points = 0;
	public static final int Areas = 1;

	public QWMatrix() {
		newQWMatrix();
	}
	private native void newQWMatrix();
	public QWMatrix(double m11, double m12, double m21, double m22, double dx, double dy) {
		newQWMatrix(m11,m12,m21,m22,dx,dy);
	}
	private native void newQWMatrix(double m11, double m12, double m21, double m22, double dx, double dy);
	public native void setMatrix(double m11, double m12, double m21, double m22, double dx, double dy);
	public native double m11();
	public native double m12();
	public native double m21();
	public native double m22();
	public native double dx();
	public native double dy();
	public native void map(int x, int y, int[] tx, int[] ty);
	public native void map(double x, double y, double[] tx, double[] ty);
	public native QRect mapRect(QRect arg1);
	public native QPoint map(QPoint p);
	public native QRect map(QRect r);
	public native QPointArray map(QPointArray a);
	public native QRegion map(QRegion r);
	public native QRegion mapToRegion(QRect r);
	public native QPointArray mapToPolygon(QRect r);
	public native void reset();
	public native boolean isIdentity();
	public native QWMatrix translate(double dx, double dy);
	public native QWMatrix scale(double sx, double sy);
	public native QWMatrix shear(double sh, double sv);
	public native QWMatrix rotate(double a);
	public native boolean isInvertible();
	public native double det();
	public native QWMatrix invert(boolean[] arg1);
	public native QWMatrix invert();
	public native boolean op_equals(QWMatrix arg1);
	public native boolean op_not_equals(QWMatrix arg1);
	public native QWMatrix op_mult_assign(QWMatrix arg1);
	public native QPoint op_mult(QPoint arg1);
	public native QRegion op_mult(QRect arg1);
	public native QRegion op_mult(QRegion arg1);
	public native QPointArray op_mult(QPointArray a);
	public static native void setTransformationMode(int m);
	public static native int transformationMode();
	/** Deletes the wrapped C++ instance */
	protected native void finalize() throws InternalError;
	/** Delete the wrapped C++ instance ahead of finalize() */
	public native void dispose();
	/** Has the wrapped C++ instance been deleted? */
	public native boolean isDisposed();
}
