非线性Icosphere(Non-linear Icosphere)

2019-10-17 08:32发布

我需要所有的icosphere边的长度相同。 目前,我生成一个二十面体一个开始,然后线性插入每一个三角形。 所有教程我能找到使用相同的线性插值。 后来有人建议只使用从搅拌机,它的作品,虽然也采用了线性插值icosphere ...

因此,任何人对如何使一个icosphere,并确保所有的边都是平等的一个很好的教程? (这也将是确定的,如果你知道一个程序,它可以使这个并将其导出为一个.OBJ什么的。)

Answer 1:

这是不可能的,以具有从正三角形任意精确的球体。 如果您需要等边三角形,你可以得到最好的是二十面体(这你可能已经)。 之所以被称为“ 角缺陷 ”:

角度缺陷为360度围绕顶点顶点角度的总和。 任何多面体必须有一个总顶点缺陷等于720度:

  • 四面体:4 * 180度
  • 八面体:6 * 120度
  • 立方体:8 * 90度
  • 二十面体:12 * 60度
  • 十二面体:20 * 36度

如果有五个等边三角形的顶点见面时,他们积累36度的缺陷。 如果六个等边三角形的顶点见面时,他们毫无贡献的缺陷。

如果六个等边三角形的顶点见面时,他们必须既形成

  • 一个平面或
  • 折叠(边缘)或
  • 鞍。

有一个多面体叫胺五面体有32个顶点,但如果你把它出等边三角形,你会得到一个非凸多面体。

因此,如果你想任意精确的球体,则需要允许不同长度的边缘,使得角度缺陷可能在整个表面上均匀地分布。 以任意精度等边是不可能的。



文章来源: Non-linear Icosphere
标签: c# graphics 3d