TransformationMatrix

Inheritance: java.lang.Object

public class TransformationMatrix

表示 3x3 矩阵 | A B 0 | | C D 0 | | TX TY 1 |。以以下方式转换坐标:x1 = A*x + C*y + TX y1 = B*x + D*y + TY。

构造函数

构造函数描述
TransformationMatrix()创建标准的 1 对 1 矩阵: [ A B C D TX TY ] = [ 1, 0, 0, 1, 0, 0]
TransformationMatrix(double[] matrixArray)接受具有以下数组表示形式的变换矩阵: [ A B C D TX TY ]

方法

方法描述
equals(Object arg0)
get(int index)提供对底层数组的访问。
getA()获取 A 变换矩阵的值。
getB()获取 B 变换矩阵的值。
getC()获取 C 变换矩阵的值。
getClass()
getD()获取 D 变换矩阵的值。
getTX()获取 TX 变换矩阵的值。
getTY()获取 TY 变换矩阵的值。
hashCode()
multiply(TransformationMatrix matrix)与另一个变换矩阵相乘。
notify()
notifyAll()
scale(double x, double y, double[] x1, double[] y1)使用变换矩阵缩放 x 和 y:x1 = A*x + C*y; y1 = B*x + D*y。
setA(double value)设置 A 变换矩阵的值。
setB(double value)设置 B 变换矩阵的值。
setC(double value)设置 C 变换矩阵的值。
setD(double value)设置 D 变换矩阵的值。
setTX(double value)设置 TX 变换矩阵的值。
setTY(double value)设置 TY 变换矩阵的值。
toArray()分配新数组,复制变换矩阵并返回它。
toString()
transform(double x, double y, double[] x1, double[] y1)使用变换矩阵转换 x 和 y:x1 = A*x + C*y + TX; y1 = B*x + D*y + TY。
unScale(double x1, double y1, double[] x, double[] y)将 x1 和 y1 缩放回去,并返回变换矩阵之前的 x 和 y。
unTransform(double x1, double y1, double[] x, double[] y)将 x1 和 y1 反向转换,并返回变换矩阵之前的 x 和 y。
wait()
wait(long arg0)
wait(long arg0, int arg1)

TransformationMatrix()

public TransformationMatrix()

创建标准的 1 对 1 矩阵: [ A B C D TX TY ] = [ 1, 0, 0, 1, 0, 0]

TransformationMatrix(double[] matrixArray)

public TransformationMatrix(double[] matrixArray)

接受具有以下数组表示形式的变换矩阵: [ A B C D TX TY ]

Parameters:

参数类型描述
matrixArraydouble[]包含变换矩阵值的数组,必须有 6 个元素。

equals(Object arg0)

public boolean equals(Object arg0)

Parameters:

参数类型描述
arg0java.lang.Object

Returns: boolean

get(int index)

public double get(int index)

提供对底层数组的访问。

Parameters:

参数类型描述
索引int变换矩阵数组中的索引。

Returns: double - 基础数组中索引对应的元素。

getA()

public double getA()

获取 A 变换矩阵的值。

Returns: double - A 变换矩阵的值。

getB()

public double getB()

获取 B 变换矩阵的值。

Returns: double - B 变换矩阵的值。

getC()

public double getC()

获取 C 变换矩阵的值。

Returns: double - C 变换矩阵的值。

getClass()

public final native Class<?> getClass()

Returns: java.lang.Class

getD()

public double getD()

获取 D 变换矩阵的值。

Returns: double - D 变换矩阵的值。

getTX()

public double getTX()

获取 TX 变换矩阵的值。

Returns: double - TX 变换矩阵的值。

getTY()

public double getTY()

获取 TY 变换矩阵的值。

Returns: double - TY 变换矩阵的值。

hashCode()

public native int hashCode()

Returns: int

multiply(TransformationMatrix matrix)

public TransformationMatrix multiply(TransformationMatrix matrix)

与另一个变换矩阵相乘。不会更改原始变换矩阵,返回一个新的 TransformationMatrix 对象。

Parameters:

参数类型描述
matrixTransformationMatrix用于相乘的变换矩阵。

Returns: TransformationMatrix - New TransformationMatrix object.

notify()

public final native void notify()

notifyAll()

public final native void notifyAll()

scale(double x, double y, double[] x1, double[] y1)

public void scale(double x, double y, double[] x1, double[] y1)

使用变换矩阵缩放 x 和 y:x1 = A*x + C*y; y1 = B*x + D*y。

Parameters:

参数类型描述
xdouble原始 x 坐标
ydouble原始 y 坐标。
x1double[]缩放后的 x 坐标。
y1double[]缩放后的 y 坐标。

setA(double value)

public void setA(double value)

设置 A 变换矩阵的值。

Parameters:

参数类型描述
doubleA 变换矩阵的值。

setB(double value)

public void setB(double value)

设置 B 变换矩阵的值。

Parameters:

参数类型描述
doubleB 变换矩阵的值。

setC(double value)

public void setC(double value)

设置 C 变换矩阵的值。

Parameters:

参数类型描述
doubleC 变换矩阵的值。

setD(double value)

public void setD(double value)

设置 D 变换矩阵的值。

Parameters:

参数类型描述
doubleD 变换矩阵的值。

setTX(double value)

public void setTX(double value)

设置 TX 变换矩阵的值。

Parameters:

参数类型描述
doubleTX 变换矩阵值。

setTY(double value)

public void setTY(double value)

设置 TY 变换矩阵的值。

Parameters:

参数类型描述
doubleTY 变换矩阵值。

toArray()

public double[] toArray()

分配新数组,复制变换矩阵并返回它。

Returns: double[] - 以数组形式的 TransformationMatrix。

toString()

public String toString()

Returns: java.lang.String

transform(double x, double y, double[] x1, double[] y1)

public void transform(double x, double y, double[] x1, double[] y1)

使用变换矩阵转换 x 和 y:x1 = A*x + C*y + TX; y1 = B*x + D*y + TY。

Parameters:

参数类型描述
xdouble原始 x 坐标。
ydouble原始 y 坐标。
x1double[]变换后的 x 坐标。
y1double[]变换后的 y 坐标。

unScale(double x1, double y1, double[] x, double[] y)

public void unScale(double x1, double y1, double[] x, double[] y)

将 x1 和 y1 缩放回去,并返回变换矩阵之前的 x 和 y。

Parameters:

参数类型描述
x1double坐标 x1
y1double坐标 y1
xdouble[]坐标 x 缩放回原始。
ydouble[]坐标 y 缩放回原始。

unTransform(double x1, double y1, double[] x, double[] y)

public void unTransform(double x1, double y1, double[] x, double[] y)

将 x1 和 y1 反向转换,并返回变换矩阵之前的 x 和 y。

Parameters:

参数类型描述
x1double坐标 x1。
y1double坐标 y1。
xdouble[]坐标 x 变换回原始。
ydouble[]坐标 y 变换回原始。

wait()

public final void wait()

wait(long arg0)

public final native void wait(long arg0)

Parameters:

参数类型描述
arg0long

wait(long arg0, int arg1)

public final void wait(long arg0, int arg1)

Parameters:

参数类型描述
arg0long
arg1int