如何获取三角形的数组,3D对象是从哪个构建的?

时间:2012-07-12 15:55:21

标签: javascript webgl three.js

我想得到三角形的数组,但我无法在几何对象中找到它。


.faces不是三角形。如果我创建一个立方体,那么面部看起来像这样:

"faces": [{
    "a": 0,
    "b": 2,
    "c": 3,
    "d": 1,
    ...

这些是多边形,而不是面孔。 faces

2 个答案:

答案 0 :(得分:1)

这不是“.faces”的工作吗?请参阅here

答案 1 :(得分:1)

如果你将Face4推入faces,那么在调用面孔时你最终会得到一个四边形。如果您将Face3推入faces,那么您将获得一个三角形。如果您在d来电时收到faces,则推送Face4

如果你问如何从四边形中获得tris,这是一个不同的问题。

基本上,知道四元组的“顺序”为A B C D,您通常可以说A B CA C D是三角形,它们将共享四边形的近似法线。 (我看到近似因为四边形可能略微倾斜。点的共面越小,歪斜越明显,法线的差异就越大。)

现在,还有其他组合可行。最简单的方法是在某些纸张上画出A B C D,并注意方向(顺时针或逆时针)。只要你的tris也是同一个方向(它曾经是那样)那么你就会好起来的。显然,如果A B C是有效的tri,那么B C AC A B也是如此。 A C D C D AD A C也是如此。但是如果你想要的话,你可以将它分成另一个对角线,并形成A B DB C D。按照先前的逻辑,为这些逻辑创建其他相同的三角形。