【问题标题】:Opengl RotationOpengl 旋转
【发布时间】:2011-09-08 06:15:08
【问题描述】:

我有一系列项目,我想将它们作为一个整体在 x 和 y 轴上旋转。也就是说,我希望我的所有项目都算作一件,并让那一件在原地旋转。我怎样才能做到这一点?

【问题讨论】:

    标签: opengl rotation


    【解决方案1】:

    一般来说,确定一个参考点,也许是所有项目的重心。将此点称为 (x,y)。那么

    • 通过 (-x,-y) 翻译项目
    • 全部轮换
    • 将它们翻译回 (x, y)

    当然,您需要预先计算复合变换,但这是基本思想。

    请注意,我们所说的“项目”实际上只是指您的一组对象中的所有多边形。

    【讨论】:

      【解决方案2】:

      在将对象平移到它们的位置后旋转它们。简而言之,它归结为矩阵变换的顺序:你想做旋转*平移,而不是相反。

      【讨论】:

        猜你喜欢
        • 2010-09-06
        • 1970-01-01
        • 1970-01-01
        • 2020-11-29
        • 1970-01-01
        • 2019-05-03
        • 2017-08-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多