本教程将使用 get_child_objects 函数来批量获取多个对象。
以下将编写获取所有Cue Sheet正下方的Cue,并按照命名规则来设置类别的脚本。
本教程使用了 find_object 尝试使用 find_object 函数 教程中创建的项目。
没有打开项目时,请打开项目,或执行 find_object 尝试使用 find_object 函数 所创建的脚本后开始此教程。
选择脚本菜单上的“脚本列表...”显示脚本列表窗口。
按脚本列表窗口的“新建”按钮,使用以下名称创建脚本文件。
脚本的保存目标 | 脚本文件名 |
---|---|
tutorials [CRI] | tutorial05-3_use_get_child_objects.py |
双击已创建的脚本,用 从脚本编辑器运行脚本 打开。
要通过脚本列表窗口确认脚本概要,按照以下脚本说明来编写。
编写脚本说明后,导入以下模块来用脚本操作CRI Atom Craft。
导入 Project模块 以进行项目操作,同时导入 debug模块 以输出日志。
在 find_object 尝试使用 find_object 函数 教程中介绍了如何创建Cue名以"sfx_"开头的多个Cue。
请将 "sfx" 开头的Cue设置为类别“sfx”。
使用以下函数,将创建项目时的预设类别“Category_0”更改为 “sfx”。
函数名 | 说明 |
---|---|
get_global_folder | 获取总体设置正下方的各对象文件夹 |
find_object | 进行递归搜索获取匹配的对象 |
set_value | 设置指定对象的参数 |
使用以上函数获取类别并更改名称的处理可以如下编写脚本。
使用 get_global_folder 函数来获取类别文件夹。
接下来,使用 find_object 函数,从类别文件夹下方获取类别“Category_0”, 使用 set_value 函数,将类别名更改为“sfx”。
先获取工作单元、Cue Sheet。然后以列表形式获取Cue Sheet内的Cue来设置类别。
在此脚本中,Cue的获取使用 get_child_objects 函数来获取位于同一阶层的相同种类的对象列表。
函数名 | 说明 |
---|---|
get_workunit | 获取工作单元 |
find_object | 进行递归搜索获取匹配的对象 |
get_child_objects | 指定父对象后获取多个子对象 |
使用以上函数获取列表形式的Cue Sheet正下方的Cue的处理可以如下编写脚本。
使用 get_child_objects 函数,以列表形式获取Cue Sheet正下方的Cue。
在 get_child_objects 函数中指定“父对象”和“要获取的对象类型”。
指定cuesheet变量和"Cue"(Cue的对象类型)后,获取Cue Sheet正下方的所有Cue,保存在cues变量中。
使用 get_child_objects 函数从获取了的Cue列表创建名称以 "sfx" 开头的Cue列表。
要获取Cue的名称时,使用以下函数。
函数名 | 说明 |
---|---|
get_value | 获取已指定对象的参数 |
写入脚本时如下。
使用for控制语句,从cues变量逐个提取Cue, 使用 get_value 函数来获取名称。
使用 find 函数检查名称的开头是否有 "sfx" 字符。如果有,则使用 append 函数将Cue添加至cues_for_set_categories列表中。
对cues_for_set_categories列表中保存的名称以sfx开头的Cue设置类别。
本节使用以下函数,只需调用一次就能为多个Cue设置类别。
函数名 | 说明 |
---|---|
add_category_to_cues | 针对多个Cue设置类别 |
写入脚本时如下。
使用 add_category_to_cues 函数对多个Cue设置相同的类别。
在 add_category_to_cues 函数中指定“Cue列表”和“类别”。
类别设置方法除了 add_category_to_cues 函数之外, 还有能针对单个Cue批量设置多个类别的 set_categories 函数。
可以按照自己的用途,使用不同的类别设置函数来高效地对Cue设置类别。
本教程的脚本编写到此为止。
请保存并执行脚本。
正常运行脚本后,CategoryGroup_0下方的“Category_0”将变为“sfx”,以 "sfx" 开头的名称的Cue上会设置“sfx”类别,如下所示。