一半君的总结纸

听话只听一半君

#54 如何从ls命令得到“展开”的面点边的列表,而不是默认的“范围”格式?

通常你选了一些component(比如面,点,边)的时候,用ls命令查询时 Maya 是按照 “range” 格式返回的,类似这样 “[start:end]”.

ls -sl;
// Result: pSphere1.f[73:76] //

有以下几种方法可以得到“展开”的component列表.

ls

从 Maya v3开始,可以加一个 −flatten flag 到 ‘ls’ command的后面:

ls -sl -flatten;
// Result: pSphere1.f[73] pSphere1.f[74] pSphere1.f[75] pSphere1.f[76] //

−flatten flag 也可以用来展开任意的选择列表:

string $adjacentComponents[] = { "pSphere1.f[26:27]", "pSphere1.vtx[1:3]" };
// Result: pSphere1.f[26:27] pSphere1.vtx[1:3] //

ls -flatten $adjacentComponents;
// Result: pSphere1.f[26] pSphere1.f[27] pSphere1.vtx[1] pSphere1.vtx[2] pSphere1.vtx[3] //

注意你的列表里包含的component必须在当前场景文件里存在, 否则 ‘ls’ command 的返回值里将不包括不存在的component.

filterExpand

filterExpand’ command 以字符串数组的形式返回所有选择的component, 他有一个 −expand flag. 你必须同时指定一个或多个 −selectionMask flags 来选择你想要返回的component 类型:

filterExpand -selectionMask 34 -expand true;
// Result: pSphere1.f[73] pSphere1.f[74] pSphere1.f[75] pSphere1.f[76] //

29 August 2002

Advertisements

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s

%d 博主赞过: