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

import org.trinitydesktop.qt.Qt;

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

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

	public TQWMatrix() {
		newTQWMatrix();
	}
	private native void newTQWMatrix();
	public TQWMatrix(double m11, double m12, double m21, double m22, double dx, double dy) {
		newTQWMatrix(m11,m12,m21,m22,dx,dy);
	}
	private native void newTQWMatrix(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 TQRect mapRect(TQRect arg1);
	public native TQPoint map(TQPoint p);
	public native TQRect map(TQRect r);
	public native TQPointArray map(TQPointArray a);
	public native TQRegion map(TQRegion r);
	public native TQRegion mapToRegion(TQRect r);
	public native TQPointArray mapToPolygon(TQRect r);
	public native void reset();
	public native boolean isIdentity();
	public native TQWMatrix translate(double dx, double dy);
	public native TQWMatrix scale(double sx, double sy);
	public native TQWMatrix shear(double sh, double sv);
	public native TQWMatrix rotate(double a);
	public native boolean isInvertible();
	public native double det();
	public native TQWMatrix invert(boolean[] arg1);
	public native TQWMatrix invert();
	public native boolean op_equals(TQWMatrix arg1);
	public native boolean op_not_equals(TQWMatrix arg1);
	public native TQWMatrix op_mult_assign(TQWMatrix arg1);
	public native TQPoint op_mult(TQPoint arg1);
	public native TQRegion op_mult(TQRect arg1);
	public native TQRegion op_mult(TQRegion arg1);
	public native TQPointArray op_mult(TQPointArray 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();
}
