2017-04-24 15 views
-1

私はPythonで新しく、私は確定的なpostitionによって最も近い顔を得るためのスクリプトを作ろうとしています。すでに何らかの機能があるのであれば誰でも知っていますか? closestPointOnMeshMayaは位置によって頂点を取得します

nodeName = cmds.createNode('closestPointOnMesh') 

と呼ばれるノードが、顔の位置を返すことができ

+0

質問で試したコードを投稿してください。 – lit

+0

あなたは私たちにもっと詳細を教えて、あなたが試したことの一例を与えれば、使える答えが得られる可能性がはるかに高いです – theodox

+0

私はついにこのことをやっていますが、任意のエラーメッセージ:/ 私はコンソールをMayaで実行したためにスクリプトを保存しません。自動的にどこかに保存されます。どこで検索できますか?私はすでに別の場所にあるスクリプトフォルダで試してみましたが、私が行ったことを見つけられませんでした – akerbeltz

答えて

1

あり、頂点

+0

こんにちは、あなたの答えをありがとう、ノードの位置、あなたは私にその良い文書を添付したリンクを送ることができますか?ありがとう – akerbeltz

+0

あなたは両方のオブジェクトのmatriceを接続し、いくつかのgetAttrとの情報を得る..... – DrWeeny

+0

ありがとうございました! Mayaがクラッシュするので、私は他の人を助けるために何をしたのか投稿できません。コンソールでスクリプトを実行した場所をどこに知っていますか? (私は誰も保存していませんでした) – akerbeltz

0

iがその見つかり溶液のthats:

import maya.cmds as cmds 
import maya.mel as mel 

def getClosestFace(xPos, yPos, zPos, mesh): 
    cmds.select(mesh) 
    mel.eval("closestPointOn (1, 1)") 
    cmds.select("cpConstraintIn") 
    cmds.move(xPos,yPos,zPos) 
    faceOutput = cmds.getAttr("closestPointOnMesh1.f") 
    cmds.delete("cpConstraintIn") 
    cmds.delete("cpConstraintPos") 
    return mesh + ".f[" + str(faceOutput) + "]" 

この他についても同様です頂点や辺などのコンポーネントは ".f"だけを変更します。 しかし、それは、それが最も近い成分をランダムに選ぶ最初の位置から同じ距離にある成分、またはリストの最後の成分があるようですか?

関連する問題