【发布时间】:2014-06-24 00:53:37
【问题描述】:
我正在制作一个重命名脚本,但我遇到了一些麻烦 查找和替换功能。
实际上,只要没有重复,该功能就可以工作 层次结构中的对象。例如,如附件中所示,locator1 和 locator2 是从头开始创建的,而 locator3 是从 定位器2
如果我用它们的简称显示它们,如下所示: 定位器1 定位器2 定位器2|定位器3
如前所述,当我尝试将“定位器”一词替换为“点”时,
重命名适用于定位器 1 和 2,但对于 locator3,我得到了
错误RuntimeError: No object matches name
因此,我想知道是否有更好的方法让我重新编码,因为 像建模这样的案例,艺术家一遍又一遍地复制对象 或使用实例..
我知道这失败是由于短名称本身,但是否可以绕过它?
def searchReplace(self):
wordSearch = str(self.searchTxt.text())
wordReplace = str(self.replaceTxt.text())
objCnt = cmds.ls(sl=True, sn=True)
if len(objCnt) == 0:
self.searchTxt.clear()
self.replaceTxt.clear()
cmds.warning('Nothing is selected')
else:
for wordString in sorted(objCnt):
if wordSearch in wordString:
newWordString = wordString.replace(wordSearch, wordReplace)
cmds.rename(wordString, newWordString)
self.searchTxt.clear()
self.replaceTxt.clear()
print '%s' %wordString + " has changed to : " + "%s" %newWordString
【问题讨论】:
标签: python duplicates rename maya