在脚本语言之间转换表达式

根据您需要在何处使用表达式,您可能会发现自己想要例如进行转换Nuke表达式转换为Tcl表达式或将Python函数嵌入到Nuke表达。在不同部分使用了不同的语言Nuke

可以在脚本编辑器的脚本命令(File > Comp Script Command),并在脚本中运行时Nuke开始(例如init.pymenu.py )。有关更多信息,请参见Nuke Python文档( Help > Documentation )。

Tcl可用于大多数字符串旋钮(可以在其中输入数字以外的文本),在“脚本命令”对话框中(File > Comp Script Command),以打开一些兼容性启动脚本(例如init.tclformats.tcl )。

Nuke表达式可以在“添加表达式”对话框中使用,大多数旋钮位于Nuke表达式节点中的表达式输入字段。

您可以使用以下函数来一起使用不同类型的表达式:

nuke.expression()使用Nuke Python代码中的表达式。

expression使用Nuke Tcl中的表达。

nuke.tcl()在Python中运行Tcl代码。

python在Tcl中运行Python代码。

[ ] (方括号)将Tcl嵌入到Nuke表达式(或字符串旋钮)。

[python {...}]将Python嵌入Nuke表达。

小费:  请注意,将大括号( { } ),将其嵌入到Tcl中可能会使该过程更容易一些,因为这会阻止Tcl在将其传递给Python解释器之前执行其自身对Python代码的评估。例如:[python {“ hello” +“ world”}]

小费:  请注意,默认情况下,“ python” Tcl命令评估一行代码并返回结果。如果要运行多行,请使用“ -exec”选项(例如,“ python -exec”)。请参考Nuke Tcl脚本文档(Help > Documentation > TCL Scripting) 了解更多信息。