顔を作成するために必要な 3 つのポイントを取得する Maxscript をどのように作成しますか?
100 個の面があるとします。次に、スクリプトは各面を形成するポイントを教えてくれます。
また、隣接する2つの面が互いになす角度を知りたいです。
前もって感謝します
顔を作成するために必要な 3 つのポイントを取得する Maxscript をどのように作成しますか?
100 個の面があるとします。次に、スクリプトは各面を形成するポイントを教えてくれます。
また、隣接する2つの面が互いになす角度を知りたいです。
前もって感謝します
これらは実際には 2 つの別個の質問ですが、次のようになります。
この関数は、面のインデックスと、その面を作成する頂点のインデックスを示す point3 値で構成される配列を返します。
fn GetAllFaceVertices meshObj =
(
for v = 1 to m.numVerts collect #(v, getFace v)
)
この関数は、2 つの面の間の角度を返します。各面の法線を取得し、2 つの法線の内積の逆余弦を返します。
fn GetFaceAngles meshObj faceA faceB =
(
local nA = getFaceNormal meshObj faceA
local nB = getFaceNormal meshObj faceB
acos (dot nA nB)
)
これらの関数はどちらもeditable mesh
オブジェクトを想定していることに注意してください。オブジェクトを操作する必要がある場合は、構造体editable poly
を使用する同様のメソッドがありますpolyop
。