你如何编写一个获得创建面部所需的三个点的Maxscript?
所以你有你的对象,说它有100个面孔。然后脚本应该告诉我每个面部的哪些点。
另外,我想知道两个相邻面相互之间的角度。
提前致谢
答案 0 :(得分:0)
这些实际上是两个不同的问题,但这里有:
此函数将返回一个数组,该数组由面索引和一个point3值组成,描述创建该面的顶点的索引。
fn GetAllFaceVertices meshObj =
(
for v = 1 to m.numVerts collect #(v, getFace v)
)
此功能将返回两个面之间的角度。它通过获得每个面的法线然后返回两个法线的点积的反余弦来实现。
fn GetFaceAngles meshObj faceA faceB =
(
local nA = getFaceNormal meshObj faceA
local nB = getFaceNormal meshObj faceB
acos (dot nA nB)
)
请注意,这两个函数都需要editable mesh
个对象。如果您需要对editable poly
对象进行操作,则有类似的方法使用polyop
结构。