2017-02-13 62 views
0

我使用Blender,我有一个位置(x,y,z)指向(rx,ry,rz)的相机,我需要旋转它(0,0,0 )(半径是R),以便它仍然指向(rx,ry,rz)。我如何使用python实现它,还是有一个简单的算法?使用python旋转相机在搅拌机中

+0

你绝对需要脚本解决方案吗?因为你提出的问题可以在没有Python的情况下轻松完成。 – Highstaker

+1

另外,这个问题可能更适合Blender.SE,imo。 https://blender.stackexchange.com/ – Highstaker

+0

@Highstaker我这样做,你能帮我解决这个问题吗? –

回答

0

不是一个实际的算法,但可能会给你一些提示。

创建一个空的。你希望它

enter image description here

设置3D光标:用以下参数创建你照相机的“跟踪”约束:

enter image description here

设置支点,以“3D光标”。由于它是(0,0,0)在你的情况下,你可能只需按Shift + C,它会在那里设置。

现在,你可以简单地旋转你的相机,它会圈住3D光标,而在目标指向:

enter image description here

您也可以使用bpy.ops.transform.rotate(请记住,这个方法做它用Python需要弧度,而不是度数),你需要做一些与上下文相关的巨型巨无霸,否则它将不会围绕枢轴旋转。基本上,这已经在this answer中为您完成了。我唯一需要补充的是,如果你有多个视口(3D视图,相反),它可能一开始就不起作用,你只需要在其他视口中将枢轴点设置为“3D光标”,因为视口Python抓取上下文是有点武断的。如果你只有一个,这应该不成问题。

+0

非常感谢:) –