0

我在我的代码中检测到一个对象并在它周围绘制一个矩形。我有四个变量来绘制矩形:X、Y、宽度和高度。我找到了一个需要在矩形上应用的变换矩阵。返回的变换矩阵是一个 3*3 矩阵,如下所示:

Tinv =

    1.0022    0.0018        0

   -0.0018    1.0022         0

   -0.4353   -0.9079    1.0000

如何使用此矩阵在矩形上应用变换?

4

1 回答 1

1

您应该做的是计算矩形的所有四个顶点,然后对每个单独的顶点应用变换。这应该很容易;如果我得到您想要做的事情,那么您可以使用以下内容来表示:

X = 1;
Y = 2.34;
W = 3.21;
H = 2;

顶点现在可以是(假设它(X,Y)表示矩形的左上角顶点,其底部为 0 弧度:

(x1,y1) = (1,2.34)
(x2,y2) = (4.21,2.34)
(x3,y3) = (4.21,0.34)
(x4,y4) = (1,0.34)

现在可以表示为:

[
1.00    2.34    0.00
4.21    2.34    0.00
4.21    0.34    0.00
1.00    0.34    1.00
]

现在可以根据需要通过简单的矩阵乘法进行转换。

于 2013-07-11T05:27:22.807 回答