从 Maya shotlist 获取 Attr
get Attr from Maya shotlist
我想从镜头列表(在相机序列器中)的字段中获取信息。我解决的shotname:
test = cmds.getAttr('shot1.sn')
print test
但其余的..我卡住了。当我尝试调用其他参数(如 startTime)时,我会收到各种错误,具体取决于我的尝试方式。
欢迎来到 SO,Fantasi。
你提出了一个非常模糊的问题,所以在 return 你会得到一个非常模糊的答案。
您可以通过在音序器对象上使用 cmds.listConnections
来获取镜头列表。之后,使用 for
循环并使用 cmds.getAttr
获取镜头信息,如下所示:
shots = cmds.listConnections("sequencer1", type="shot") or [] # Get a list of all shots from the sequencer.
for shot in shots:
shot_name = cmds.getAttr("{}.shotName".format(shot)) # Query shot's name.
start_frame = cmds.getAttr("{}.startFrame".format(shot)) # Query shot's start frame.
end_frame = cmds.getAttr("{}.endFrame".format(shot)) # Query shot's end frame.
print shot_name, start_frame, end_frame # Print out shot's info.
具有 2 个镜头的音序器示例输出:
Output:
shot 1.0 50.0
shotEnd 51.0 120.0
如果您不确定镜头对象的属性名称,那么 you can find them here。
如果您仍然遇到问题,我建议您粘贴脚本编辑器中的错误消息,以便我们诊断问题所在。
我想从镜头列表(在相机序列器中)的字段中获取信息。我解决的shotname:
test = cmds.getAttr('shot1.sn')
print test
但其余的..我卡住了。当我尝试调用其他参数(如 startTime)时,我会收到各种错误,具体取决于我的尝试方式。
欢迎来到 SO,Fantasi。
你提出了一个非常模糊的问题,所以在 return 你会得到一个非常模糊的答案。
您可以通过在音序器对象上使用 cmds.listConnections
来获取镜头列表。之后,使用 for
循环并使用 cmds.getAttr
获取镜头信息,如下所示:
shots = cmds.listConnections("sequencer1", type="shot") or [] # Get a list of all shots from the sequencer.
for shot in shots:
shot_name = cmds.getAttr("{}.shotName".format(shot)) # Query shot's name.
start_frame = cmds.getAttr("{}.startFrame".format(shot)) # Query shot's start frame.
end_frame = cmds.getAttr("{}.endFrame".format(shot)) # Query shot's end frame.
print shot_name, start_frame, end_frame # Print out shot's info.
具有 2 个镜头的音序器示例输出:
Output:
shot 1.0 50.0
shotEnd 51.0 120.0
如果您不确定镜头对象的属性名称,那么 you can find them here。
如果您仍然遇到问题,我建议您粘贴脚本编辑器中的错误消息,以便我们诊断问题所在。