• 使用ScriptJob来添加回调函数


    在Maya开发中,我们知道 MMessage 和它的派生类可用于对Maya的内部事件添加一些回调函数,用于在指定的时机处理一些自定义的任务。但除了用MMessage类,我们还有一些其他简单的 Mel 命令可处理类似情况,今天我们就来看一下ScriptJob 命令。

    Mel 命令 scriptJob 可以用来为Maya内部的event,condition 或者attribute 添加回调函数,使用非常简单,我们可以看下如下命令 :

    // 设置当选择集改变事件触发的时候,打印一段文字
    scriptJob -event "SelectionChanged" "print "Annoying Message!\n"";

    // 设置当playingBack condition 为true的时候,调用 playBackCallback 函数
    scriptJob -conditionTrue "playingBack" playBackCallback;

    从上面可以看到,用起来很简单,回调函数可以是一个Mel 命令或一段脚本,但我们要注意的是:


    1, Script jobs 被用于交互式应用程序中,在空闲事件发生的时候被调用,这也就意味着script jobs 不能用于批处理应用 batch application. 在批处理模式下,scriptJob 命令不会生效。
    2, 由于该回调会频繁被触发,为了性能考虑,在 playback 期间 ScriptJob 的事件将不会被触发。
    3, 当设置的Jobs 为condition的时候,不能同时设置了 true/false 状态后,又设置状态改变的事件。两者只能设置一个,不然会导致无法预料的结果。

    关于具体如何使用,并且查询具体有哪些 event 和 condition 提供给开发者用,大家可以查看sciptJob 命令。

  • 相关阅读:
    The 16th Zhejiang Provincial Collegiate Programming Contest Sponsored(E F G H I)
    Ubuntu iso下载地址(14、16、18)
    JS解决在提交form表单时某个值不存在 alter弹窗点确定不刷新界面
    搞搞电脑微信表情的破解(.dat转png or jpg)
    12.29 模拟赛
    bzoj 2151 种树
    bzoj 5110 Yazid的新生舞会
    【系列】 点分治
    12.8 模拟赛
    12.17 模拟赛
  • 原文地址:https://www.cnblogs.com/johnonsoftware/p/3585851.html
Copyright © 2020-2023  润新知