如何解决如何在 Maya 的 MEL 中获取拖放文件的路径
将 Maya MEL 文件拖放到 Maya 中,MEL 文件的内容将被执行。 拖拽时有没有办法获取文件的绝对路径?
解决方法
希望这能让你开始
test.mel:
global proc FindMe() {}
print("whatIs result -> " + `whatIs "FindMe"`);
将文件拖放到 Maya 中会产生以下输出:
> source "C:/Users/itypewithmyhands/Desktop/test.mel";
> whatIs result -> Mel procedure found in: C:/Users/itypewithmyhands/Desktop/test.mel
需要注意的有趣点:
- 拖放似乎只是生成一个
source <file>
语句,这意味着您必须执行一些我不知道的内部魔术才能知道该文件是实际被删除还是只是来源 - 您搜索的
proc
必须标记为全局
您需要对 whatIs
命令的结果进行正则表达式(或类似的处理)才能获得您想要的路径。像 .*found in: (.+?\.mel)
这样的东西似乎工作得很好。 Example
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。