【Maya:Python】グリッドのサイズを変更する
shamimatsu
三味松ブログ
ノード名を手作業で入れ替える時、名前重複を避けるために一旦違う名前をつけてから戻すという工程が面倒だったためpythonでスクリプトを作成しました。
一見するとノードの順番が変わっているだけのように見えるかもしれませんがちゃんと名前が入れ替わっています。
maya2022のpython3で動作確認しました(2022/1/13)
選択方法が間違っていた場合はすべて警告が出る処理も入れてみました。
# -*- coding: utf-8 -*-
import maya.cmds as cmds
sl_nodes = cmds.ls(sl=True)
#2つ選択以外は警告を出す
if not cmds.ls(sl=True):
cmds.warning(u'なにも選択されていません')
elif len(sl_nodes) == 1:
cmds.warning(u'1つしか選択されていません')
elif len(sl_nodes) > 2:
cmds.warning(u'2つまでしか選択できません')
else:
sl_first = sl_nodes[0]
sl_second = sl_nodes[1]
#名前重複を避けるため一旦別の名前にリネーム
sl_first2 = sl_first + "_exchange"
sl_second2 = sl_second + "_exchange"
cmds.rename(sl_first, sl_first2)
cmds.rename(sl_second, sl_second2)
cmds.rename(sl_first2, sl_second)
cmds.rename(sl_second2, sl_first)