将一个旋转的矩形拆分成更小的矩形,如何旋转它们以保持原来的大矩形?
Splitting a rotating rect into smaller rects, how to rotate them to maintain the original big rect?
我有一个大小为 1536x720 的矩形 r
,我围绕它自己的中心点旋转 p(768, 360)
,使用内置的 sf::Sprite::rotate 函数 [=16] =]
现在出于不相关的原因,我必须将矩形分成 6 个较小的矩形(每个大小为 512x360)。
这些较小的矩形只是较大的矩形 r
的切片;它们的放置方式使得 "stitched together" 它们形成了原来的矩形(所以它看起来仍然是原来的大矩形)
插图: image
由于矩形 r
不断地绕着自己的中心旋转,将其分割成更小的矩形引入了问题:
如何围绕原始中心 p
旋转拼接在一起的矩形(即较小的矩形),以便保持原始较大的矩形?这可能吗?
我的英语不是很好,所以解释起来有点棘手。如果您需要更多解释,我可以用油漆或其他东西画出场景
您可以使用sf::Transformable::setOrigin
将每个小矩形的变换原点设置为大矩形的中心点。
请注意,它将成为所有转换的起点,例如小矩形也会相对于新中心缩放,但这可能是所需的行为。
我有一个大小为 1536x720 的矩形 r
,我围绕它自己的中心点旋转 p(768, 360)
,使用内置的 sf::Sprite::rotate 函数 [=16] =]
现在出于不相关的原因,我必须将矩形分成 6 个较小的矩形(每个大小为 512x360)。
这些较小的矩形只是较大的矩形 r
的切片;它们的放置方式使得 "stitched together" 它们形成了原来的矩形(所以它看起来仍然是原来的大矩形)
插图: image
由于矩形 r
不断地绕着自己的中心旋转,将其分割成更小的矩形引入了问题:
如何围绕原始中心 p
旋转拼接在一起的矩形(即较小的矩形),以便保持原始较大的矩形?这可能吗?
我的英语不是很好,所以解释起来有点棘手。如果您需要更多解释,我可以用油漆或其他东西画出场景
您可以使用sf::Transformable::setOrigin
将每个小矩形的变换原点设置为大矩形的中心点。
请注意,它将成为所有转换的起点,例如小矩形也会相对于新中心缩放,但这可能是所需的行为。