【问题标题】:How do I change camera orientation in Sketchup with 3x4 2D projection(RT) matrix with Sketchup Ruby API?如何使用 Sketchup Ruby API 使用 3x4 2D 投影(RT)矩阵在 Sketchup 中更改相机方向?
【发布时间】:2014-02-27 05:51:33
【问题描述】:
我有一个立方体的世界(3d)点。我还有 3 个不同的 3x4 RT 矩阵,它们将 3d 点转换为 2d 图像点。我想在 Sketchup 中做的是根据给定的 RT 矩阵更改相机视点(方向)。但是,Sketchup 相机对象提供眼睛(相机所在的 3d 点)、目标(相机正在查看的 3d 点)和向上(轴信息)。如何将我的 RT 矩阵转换为眼睛、目标和向上?我将使用 Sketchup Ruby API。
【问题讨论】:
标签:
graphics
3d
computer-vision
camera-calibration
sketchup
【解决方案1】:
让我们取 RT 矩阵的上 3x3,你得到-
RT=
R11 R12 R13 T1
R21 R22 R23 T2
R31 R32 R33 T3
R=
R11 R12 R13
R21 R22 R23
R31 R32 R33
T= T1 T2 T3
yaxis=R21 R22 R23
zaxis=R31 R32 R33
你可以用眼睛、目标和向上来改变 SU 的相机。
eye=-R(转置)*T
目标=眼睛+z轴
向上=-yaxis