旋转正方形后,我正试图计算边界框的大小。我附上了一张图片,希望能够描述我想要做的事情。
旋转x度后,边界变大。考虑到原始方块的角度和尺寸,有没有办法计算这个新尺寸?谢谢。
答案 0 :(得分:2)
这可以通过Pythag的2次申请来解决。
较大的正方形的每一边都被小蓝方块的一角分成两半。让这两个部分中较大的一个称为长度a,较小的长度b(尽管如果x> 45度则b将更大),边长为l为蓝色方块,L为黑色方块的长度。
我们可以将第一个计算为:Cos(x)= a / l。 第二个是Sin(x)= b / l
因此我们得到L =(Sin(x)+ Cos(x))* l。
编辑:在两种情况下,面积当然都是边长。
答案 1 :(得分:1)
仅当您有坐标时才有效。如果你可以得到四个顶点的坐标,那就太容易了。让我们假设边界左上角的点为A
。并且方块的前两个顶点是sq_a和sq_b。顶点A
的值为(sq_a.x,sq_b.y)
。然后通过对称,在边界和正方形之间形成的所有小的四个三角形将具有相同的面积。计算A
,sq_a
和sq_b
之间形成的三角形的面积(应该很容易.. 1/2 * breadth * height
)。乘以4,您将获得总面积。对不起发布详细的照片。