第1部分:
如何
for i = 1 To polyop.getNumEdges $ do
(
append faces ((polyop.getfacesusingedge $ #{i}) as array)
if faces[i][2] != undefined then
(
f1 = polyop.getfacenormal $ faces[i][1];
f2 = polyop.getfacenormal $ faces[i][2];
)
)
看看使用meshop?
此代码从可编辑多边形中读取所有边,将在边处连接的面附加到面以便于访问并获取法线。
问题是以前该对象是可编辑的网格。由于某种原因转换为 ep 后,面数减少了。我需要整个对象只包含三角形,所以我不能使用这种方法,因为转换似乎将一些三角形组合成多边形。
第2部分:
我有一个功能
fn getAnglebetweentwoFaces face1 face2 =
(
--theAngle = acos(dot face1 face2)
theAngle = acos(dot (normalize face1) (normalize face2))
return theAngle
)
效果“好”。它确实告诉我两个面之间的角度,但我需要知道这两个面是对象内部的角度还是外部的角度。我怎么做?
提前致谢。
编辑:我补充说
if face2Coord < 0 then
(
normAngle = 360 - normAngle
)
normAngle = 180 - normAngle
return normAngle
到你的函数,现在我得到内角的负值和外角的正值