我有一个脚本可以修改Maya渲染层选项卡。我想知道如果用户使用内置的Maya界面更改渲染选项卡状态和其他内容,是否有动态浮动UI更新的方法。例如,如果用户更改内置界面中的渲染图层,脚本选项卡中的渲染图层会更新。有没有办法让玛雅python gui更新对Maya其余部分的设置进行更改?
1
A
回答
1
这是可行的,但并非微不足道。
你会用scriptJob
来观察变化并相应地更新你的gui。
某些类型的更改会直接显示 - 例如,您可以通过脚本作业响应用户更改播放范围,该脚本作业对playbackRangeChanged
事件作出反应。上面链接的文档页面包含可以侦听的更改事件的列表。
如果您正在观察属性的更改,则可以使用attributeChange
scriptJob类型在特定属性发生更改时(通过UI或其他任何方式)运行脚本。
import maya.cmds as cmds
def test():
print "focal length:", cmds.getAttr('perspShape.focalLength')
cmds.scriptJob(ac = ("perspShape.focalLength", test))
其他种类的变化(其中大多数)不能作为预定义的事件:例如,每当Persp相机的焦距变化,这将打印的消息。您可以使用condition
command创建自己的事件,但您必须编写检测更改的代码。很多人通过使用脚本作业来简化事情,该脚本作业在Maya闲置并查找更改时运行。这很有效,但是你必须小心翼翼地编写它,因为复杂的脚本会让Maya变得非常缓慢 - 只要用户没有与UI进行交互,它就会运行。
相关问题
- 1. 有没有办法在玛雅安装鼻子?
- 2. jQuery:有没有办法让这个更短,更优雅?
- 3. 玛雅Python在渲染设置中更改当前渲染器
- 4. 有没有办法让我的Python程序运行得更快?
- 5. 有没有办法让更改相关视图行中的CouchDB
- 6. 有没有办法优雅地更改rails secret_key_base?
- 7. Python类的方法 - 有没有办法让通话更短?
- 8. gui没有更新
- 9. 有没有办法让Browserify更快?
- 10. 有没有办法让@PersistenceContext更灵活?
- 11. 有没有办法在WinUSB下更改设备配置?
- 12. 玛雅Python错误
- 13. 有没有办法设置CLLocation不会经常更新?
- 14. 有没有办法使用Subversion进行反向更新?
- 15. 对没有更新的应用程序进行更改
- 16. 有没有办法让awk跟踪它所做的更改
- 17. 有没有办法让c#中的日期更改通知?
- 18. 更改python安装for maya
- 19. 有没有办法从命令行更改默认的Windows代理设置?
- 20. 有没有办法让drawText()更新QPicture的边界矩形?
- 21. 有没有办法让SSRS 2008图表显示顶部X结果和其他组合/其余部分?
- 22. 执行SQLAlchemy更新()后,有没有办法获取更改的值?
- 23. 有没有办法倾听Animatable.isRunning更改?
- 24. 有没有办法安排html更改?
- 25. 在创建新线程时,对GUI的更改没有进行(C#)
- 26. 有没有办法更新User.IsInRole?
- 27. 有没有办法恢复wordpress更新?
- 28. 有没有办法在Android上对沙盒进行部分的java进程?
- 29. 玛雅python内存刷新?
- 30. Python玛雅 - 如果objectType返回“没有指定对象名称”