2017年3月18日 星期六

Max Script: 動態指定物件、取得物件

如果你不從程式建立物件,而需要使用程式指定某個場景中的物件了話,你可以使用這樣的方法。
直接使用名稱指定的兩種方法:
$[物件名稱]

Example:
$Box001
$Box:Box001 @ [11.974406,0.000000,0.000000]


$Circle001
$Circle:Circle001 @ [-210.165863,258.542389,0.000000]


或是使用變數動態指定:

objName = "Box001"
objPath = execute ("$'"+objName + "'")

這些名稱可以從物件視窗找到,你可以使用以下腳本 (請用 Max Script Editor) 呼叫物件視窗,或是使用按鈕:

theFrm = dotNetObject "MaxCustomControls.SceneExplorerControls.SceneExplorerDialog"
thePtr = DotNetObject "System.IntPtr" (windows.getMAXHWND())
theHwnd = DotNetObject "MaxCustomControls.Win32HandleWrapper" thePtr
theFrm.Show(theHwnd)

打開場景中物件列表:

沒有留言:

張貼留言

© ERIC RILEY , 自由無須告知轉貼
Background Japanese Sayagata by Olga Libby