繁体   English   中英

如何在矩形坐标上应用变换

[英]How to apply transformation on rectangle coordinates

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

Tinv =

    1.0022    0.0018        0

   -0.0018    1.0022         0

   -0.4353   -0.9079    1.0000

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

您应该做的是计算矩形的所有四个顶点,然后将变换应用于每个单独的顶点。 这应该很容易; 如果我知道您要执行的操作,则可以使用类似以下内容的方法:

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
]

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM