2011-01-25 5 views
2

私はオブジェクトの穴を選択するためのフレームワークを持っています。 これは、穴の内部を手動でクリックすることで機能します(「角度で」オプションをオンにして)、穴の内側を選択します。 私は、顔を削除し、 "エッジを開く"を選択し、それをキャップします。 これは私のスクリプトが今行うものです。選択された面の間の合計角度を計算する

このすべてはうまく動作しますが、各穴を別々にクリックしたくありません。大局的にそれを置くために

: 私は10機種(エンジニアリングモデル、hardsurface)を持って、各 モデルは、私が今 を通過し、上記を使用して穴を削除する必要があり、少なくとも5000個の別々の部品であり、それを行う方法。

だから、これは私がトリックを行うかもしれないと思うものです:

1)softselectionで1ずつ顔1を選択します。 2)毎回角度が選択範囲内にあるかどうかを確認します。 3)それが穴であれば、それは〜360度の角度です、私はこれが削除したいものであることを知っています 。

私は助けが必要な部分は、選択された顔の合計角度を取得しています。

残りは既に行われています。

大文字と小文字の区別はありません。

答えて

2

これは私のスクリプトで使用する基本機能ですが、facenormalsは正規化されたベクトルです(lenght = 1.0、[0,0,0]で始まります)。これはさらに

をお手伝いします

FN getAnglebetweentwoFaces face1 face2 =

(-- returns the angle between 2 facenormals 

    theAngle = acos(dot face1 face2) 

    --format"\tthe Angle: %\n" theAngle --uncomment this listener output if you want. 

    return theAngle 

) 

・ホープ

関連する問題