名称空间的非法字符处理

 
 
 

先前,对于 Maya 2010 及更低版本,如果在节点名称或名称空间中遇到字符“<”和“>”,则会将其转化为“_”。会移除所有前导无效字符,并将所有其他字符转化为下划线。

例如,在 Maya 2009 中:

namespace -add "<foo>"
// Result: foo_
createNode transform -n "<bar>"
// Result: bar_
namespace -add "foo<bar>"
//Result: foo_bar_

对于 Maya 2011 及更高版本,仍会移除节点名称中的字符“<”和“>”,并会将其转化为“_”。但是对于名称空间的名称,Maya 会将这些字符之间的所有内容视为占位符名称空间。因此,如果正在使用这些字符并依靠 Maya 去更正它们,则应更新代码。例如,在 Maya 2013 中:

namespace -add "<foo>"
// Result: <foo>
createNode transform -n "<bar>"
// Result: bar_
namespace -add "foo<bar>"
//Result: foo_bar_