所以我执行了一个简单的操作,我生成了一个文本网格(单词TEST),将它的顶点,法线和面放入一个json对象,然后让我的服务器将它保存到STL。问题是它似乎缺少其他所有的脸/三角形。它在浏览器中正确呈现,但每当我将其导出到STL时它看起来像this。我不确定为什么。
我获取所有相关信息的代码很简单,所以我不明白为什么它似乎缺少一半的面/三角形
// 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};
}
答案 0 :(得分:1)
Bah,事实证明TextGeometry也使用Face4作为面孔。我以为它只使用了三角形(Face3)。通过调用
可以轻松解决这个问题THREE.GeometryUtils.triangulateQuads(textGeo);
为文本
创建几何体后