2017-02-13 64 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

非常感謝:) –