根据点和边缘生成3D对象的面

时间:2018-03-15 13:39:14

标签: c++ qt 3d face 3d-rendering

我有一个由3D点和边缘组成的3D线框。如何识别形成3D对象面的顶点集?

我正在使用<select name ="categorieProduit" required> <option value ="cellulaire" <c:if test ="${theProduct.categorie == "cellulaire"}">selected</c:if>Cellulaire</option> <option value ="tablette" <c:if test ="${theProduct.categorie == "tablette"}">selected</c:if>>Tablette</option> <option value ="portable" <c:if test ="${theProduct.categorie == "portable"}">selected</c:if>>Ordinateur Portable</option> <option value ="tv" <c:if test ="${theProduct.categorie == "tv"}">selected</c:if>>Televiseur</option> </select>并希望在给定其点集和边集的情况下渲染3D对象。我能做的最好的是三个点形成一个三角形的脸,我能够用3D渲染它。但是如果给出更多的点和边缘,如何做同样的事情呢?或者,或者,如何在形成三角形面的3个点的集合中分解集合?

1 个答案:

答案 0 :(得分:0)

  • 只需抓住你的第一条边和它的顶点(V1和V2)。
  • 查找使用V2的所有边 - 他们的第二个顶点是您的潜在V3。
  • 对于每个潜在的V3检查您是否有V1-V3边缘 - 如果是,那么您已经找到了一个三角形V1-V2-V3。对于大多数网格,您应该有一个或两个这样的三角形。当您添加新三角形时,请始终检查是否已找到。
  • 对使用V1的边缘执行相同操作。
  • 采取下一个边缘并重复。

根据您的确切数据,边缘方向等,可能需要稍作修改,但您应该明白这一点。