2019年4月1日月曜日

nodeGraphEditorInfoノードを削除するスクリプト

nodeGraphEditorInfoの投稿は、けっこうコンスタントに閲覧されているみたいです。
興味のある人が多いわりにネット上に情報が無いのでしょうかね。
需要もありそうなのでスクリプトを作成してみました。
メリイさんに「いまごろ?」と、つっこまれそうですけど・・・。

tryDeleteNode.mel

tryDeleteNode("nodeGraphEditorInfo");
と、ノードタイプを引数にして実行すると、シーン内の指定したタイプのノード全てでソース側の接続を解除してから削除します。
"imagePlane"とか"cameraView"とかゴミみたいなノードも簡単に削除できるかな?




で、Mayaヘルプの「テクニカルドキュメント」の階層に「ノード(英語)」というページがあります。
そこで nodegraph を「サブストリングで検索」すると、

nodeGraphEditorBookmarkInfo
nodeGraphEditorBookmarks
nodeGraphEditorInfo

とノードエディタに関連するノードが出てきます。3つも。
ノードエディタにブックマークのメニューがあったので嫌な予感はしていましたが、ブックマークに関する情報もノードとしてファイルに保存されているようです。

上のスクリプトへこんな長いノード名を3回もタイピングするのは面倒なので、
tryDeleteNode("nodeGraphEditor*");

とアスタリスクを付けて実行すれば、nodeGraphEditorInfo、nodeGraphEditorBookmarks、nodeGraphEditorBookmarkInfoを探し出して削除するようになっています。

"anim*"とか指定すると大変なことになるので、いちど調べてから指定するほうが良いかもしれないですね。


1 件のコメント:

  1. とても為になる記事です
    参考になりました
    ありがとうございます

    返信削除