<p>您看到的是过程<code>SelectAllGeometry</code>,以及它的内容:</p>
<pre><code>select -r `listTransforms -geometry`;
</code></pre>
<p>这个命令有几个部分。反引号中的部分:</p>
<pre><code>listTransforms -geometry
</code></pre>
<p>实际上是一个MEL过程。运行命令<code>help listTransforms</code>查看.mel文件的路径。读到这里,命令实际上是<em></p>
<pre><code>listRelatives("-p", "-path", eval("ls", $flags));
</code></pre>
<p>其输出是以下参数的参数:</p>
<pre><code>select -r the_list_of_geometry_transforms
</code></pre>
<p>因此,请查看Maya的MEL和Python命令参考,了解<code>select</code>、<code>listRelatives</code>和<code>ls</code>,以研究一个命令如何转换为另一个命令:</p>
<ul>
<li><a href="http://download.autodesk.com/global/docs/maya2012/en_us/CommandsPython/select.html" rel="noreferrer">select</a></li>
<li><a href="http://download.autodesk.com/global/docs/maya2012/en_us/CommandsPython/listRelatives.html" rel="noreferrer">listRelatives</a></li>
<li><a href="http://download.autodesk.com/global/docs/maya2012/en_us/CommandsPython/ls.html" rel="noreferrer">ls</a></li>
</ul>
<hr/>
<p>综合所有这些,实际调用的等效MEL是:</p>
<pre><code>select -r `listRelatives("-p", "-path", eval("ls", $flags))`
</code></pre>
<p>作为Python,这将是:</p>
<pre><code>from maya import cmds
cmds.select(cmds.listRelatives(cmds.ls(geometry=True), p=True, path=True), r=True)
</code></pre>
<p>扩展到更具可读性:</p>
<pre><code>from maya import cmds
geometry = cmds.ls(geometry=True)
transforms = cmds.listRelatives(geometry, p=True, path=True)
cmds.select(transforms, r=True)
</code></pre>