栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

将OBJ文件中的四面体转换为三角形?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

将OBJ文件中的四面体转换为三角形?

如果您有4个索引,例如:

0 1 2 3

分成两个三角形将是第一个带有三个索引,一个带有第三个,第三个和第四个索引。在此示例中:

0 1 20 2 3

让我们尝试一些ASCII艺术来说明这一点:

3-------2|      /||    /  ||  /    ||/      |0-------1

在这里,您将看到

0 1 2 3
四边形,
0 1 2
第一个三角形(右下)和
0 2 3
第二个三角形(左上)。

更一般而言,对于具有

n
顶点的面,将生成三角形:

0 (i) (i + 1)  [for i in 1..(n - 2)]

如果您不坚持使用单独的三角形,则还可以使用

GL_TRIANGLE_FAN
仍在核心OpenGL中的图元。这样,您可以使用原始索引序列使用三角扇绘制任何凸多边形。因此,
01 2 3
在这种情况下,具有顶点序列的三角形扇形结构描述了四边形,并且很容易将其推广到具有4个以上顶点的面。

编辑:由于您似乎仍然有问题,让我们看看这如何应用于您帖子中的示例。我将列出每个面的四边形的原始索引序列,以及拆分四边形后的两个三角形的索引序列。

f 1 2 3 4 --> (1 2 3) (1 3 4)f 8 7 6 5 --> (8 7 6) (8 6 5)f 4 3 7 8 --> (4 3 7) (4 7 8)f 5 1 4 8 --> (5 1 4) (5 4 8)f 5 6 2 1 --> (5 6 2) (5 2 1)f 2 6 7 3 --> (2 6 7) (2 7 3)

当我绘制立方体时,这对我来说似乎是正确的。请记住从索引中减去1,因为它们是从1开始的索引,并且几乎可以肯定需要从0开始的索引。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/494865.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号