0

我需要从对象文件格式(.off)文件(在 c++ 中)中读取多边形列表。.off 文件的格式基本上是这样的:

标题信息
xyz //每个顶点的坐标
...
NVertices v1 v2 v3 ... vN //每个多边形的顶点数,
                          //后跟每个顶点的索引
...

.off 文件允许每个多边形有任意数量的顶点,这让我想到了我的问题。你怎么知道哪些顶点连接到哪些?例如,如果 .off 文件读取:

标题内容
-0.500000 -0.500000 0.500000
0.500000 -0.500000 0.500000
-0.500000 0.500000 0.500000
0.500000 0.500000 0.500000
-0.500000 0.500000 -0.500000
0.500000 0.500000 -0.500000
-0.500000 -0.500000 -0.500000
0.500000 -0.500000 -0.500000
4 0 1 3 2
4 2 3 5 4
4 4 5 7 6
4 6 7 1 0
4 1 7 5 3
4 6 0 2 4

多边形是四边形,但并非所有顶点都相连。如果您只是简单地将每个顶点连接到其他顶点,您最终会得到四个三边多边形,而不是一个四边多边形。我希望以类似于循环符号的方式列出顶点,但我似乎找不到任何关于此的信息,所以我猜不是。

所以我的问题是:
.off 文件是否使用任何格式来显示这种连接?如果没有,有没有其他方法可以确定 .off 文件中连接了哪些顶点?

4

1 回答 1

1

在 .off 文件中,每个多边形的顶点按其列出的顺序依次连接,最后一个连接回第一个。在您的示例中,第一个多边形有 4 个顶点,列为“0 1 3 2”,这意味着存在从 0 到 1、从 1 到 3、从 3 到 2、从 2 到 0 的连接(即边) .

于 2011-07-14T23:12:53.683 回答