1

所以我执行了一个简单的操作,我生成了一个文本网格(TEST 一词),将它的顶点、法线和面放入一个 json 对象中,然后让我的服务器将它保存到一个 STL。问题是它似乎缺少其他所有的脸/三角形。它在浏览器中正确呈现,但每当我将它导出到 STL 时它看起来像这样。我不确定为什么。

我获取所有相关信息的代码很简单,所以我不明白为什么它似乎缺少一半的面孔/三角形

// Pass in textMesh.geometry
function getTextMesh(geometry)
{
    var mfaces = geometry.faces;
    var mvertices = geometry.vertices;

    var i;

    var faces=[],
        vertices=[],
        normals=[];

    for(i=0; i<mfaces.length; i++) {
        var face = mfaces[i];
        var normal = face.normal;

        faces.push([face.a, face.b, face.c]);
        normals.push([normal.x, normal.y, normal.z]);
    }

    for(i=0; i<mvertices.length; i++) {
        var vertex = mvertices[i];
        vertices.push([vertex.x, vertex.y, vertex.z]);
    }

    return {'faces':faces, 'vertices':vertices, 'normals':normals};
}
4

1 回答 1

1

呸,原来的问题是TextGeometry 也使用Face4 的面孔。我以为它只使用三角形(Face3)。这很容易通过调用解决

THREE.GeometryUtils.triangulateQuads(textGeo);

在为文本创建几何图形之后

于 2013-08-28T21:52:51.443 回答