【发布时间】:2014-06-10 05:53:15
【问题描述】:
我正在尝试在旋转正方形后计算边界框的大小。我附上了一张图片,希望能描述我想要做什么。
旋转 x 度后,边界变大。给定原始正方形的角度和尺寸,有没有办法计算这个新尺寸?谢谢。
【问题讨论】:
-
旋转正方形的目的是什么? (如果不清楚我在说什么,我很抱歉)。你是围绕它的中心旋转它吗?我想,这是Math.StackExchange 的问题。附言如果您只对新边界矩形的大小感兴趣,而不是位置感兴趣,那么旋转点并不重要,我只是想澄清一下。
-
您可以使用 trig 获取新尺寸。如果您知道原始宽度,则可以将新宽度计算为第二张图像中形成的白色三角形的相邻边和相对边的总和。
newWidth = width*cos(angle) + width*sin(angle) -
如果那个正方形是 UIImageView 并且它是通过改变视图的
transform属性来旋转的,那么边界框就是视图的frame属性。实际上,您在那里绘制的内容几乎就是frame属性的定义。
标签: ios objective-c trigonometry