旋转3D立方体,使其面向用户

如何找出立方体最明显的一面的新角度和旋转矢量?

原因:用户可以旋转立方体,但是当完成后,我想让立方体捕捉到面向用户的一侧。

什么:我目前在iOS中使用CoreAnimation与CATransform3D进行轮换。 我有当前的角度和旋转矢量,所以我可以这样做:

CATransform3DMakeRotation(angle, rotationVector[0], rotationVector[1], rotationVector[2]);

附加信息:我目前使用Bill Dudney的轨迹球代码来生成运动并计算角度和旋转向量。

我需要立方体旋转,以便紫色的一面朝向用户


你的相机的lookAt矢量 - 可能是{ lookAt } - 决定哪一方更接近用户。

您需要为立方体的每一侧创建法线。 然后按照与立方体相同的方式旋转它们。 之后,使用点积计算每个法线矢量与相机lookAt矢量之间的角度。 无论正常情况下最大的点积是最接近相机的一面。

链接地址: http://www.djcxy.com/p/81805.html

上一篇: Rotate 3D cube so side is facing user

下一篇: Compute rotation matrix using the accelerometer