Maya Script Python フェース選択の境界エッジを選択

import maya.cmds as cmds

def select_boder_edge():
	oSel = cmds.ls(sl=1)
	if oSel == []:
		return
	oPolys = cmds.filterExpand(sm=34)
	if oPolys == None :
		return
	oEdges = []
	oEdgeSet = set()
	[oEdges.extend(x.split()[2:]) for x in cmds.polyInfo(fe=1)]
	oRemoveEdges = [x for x in oEdges if x in oEdgeSet or oEdgeSet.add(x)]
	cmds.select([oSel[0].split(".")[0]+".e["+x+"]" for x in list(oEdgeSet-set(oRemoveEdges))])

select_boder_edge()

突然ですが、Mayaのスクリプトです。
modoで、ポリゴンを選択した状態で、「Ctrl」キーを押しながらエッジ選択を実行すると
選択されたポリゴンの境界にあるエッジを選択できます。地味に便利な機能です。
それをMayaで出来ないものか。と、やってみました。できました。

 

しかし、相変わらずスクリプトでの実行は遅くて嫌になる。
pypyはMayaでは使えないのでしょうか?
そもそもWindowsへのインストールも良くわからない。
Windowsだと32bit版しかないし、、
Mayaでpypyが普通に使えるようになったら、うーん、想像しただけで楽しそうだ。
バイナリ化されたものと比べても遜色ない早さ、というのは本当なのかなぁ。

コメントする

post date*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トラックバックする

トラックバック用URL:

アニメーションが親切に解説されております

レンダリング、ライティングの基本が分かります

図版が見やすい美術解剖書です