【发布时间】:2016-09-09 13:26:45
【问题描述】:
我正在使用库 Poly2Tri 进行三角测量。
我的代码:
var swctx = new poly2tri.SweepContext(contour);
swctx.triangulate();
var triangles = swctx.getTriangles();
for (var w = 0; w < triangles.length; w++) {
pts_tri = triangles[w].points_;
index1 = pts2.findIndex(x => x[0] == pts_tri[0].x && x[1] == pts_tri[0].y)
}
for (var k = 0; k < result.length; k++) {
geometry.faces.push(
new THREE.Face3(result[k][0].id, result[k][1].id, result[k][2].id)
);
}
加载库时不会引发错误!
结果:
1.) Mozzila Firefox:工作(没有错误发生)!
2.) 谷歌浏览器:它不工作! (错误信息:无法处理共线点)
我的问题是:
1.)为什么包含相同库的相同代码适用于 Firefox 而不适用于 Chrome?是否依赖浏览器的Javascript引擎?
所以我读到 Chrome 使用 V8 引擎,而 Firefox 使用 Rhino/SpiderMonkey。 但我认为这仅取决于我用于三角测量的库!
2.) 如何在 Chrome 中运行代码(使用相同的库?)是否有可能避免此错误?
3.) 库是否支持共线点?因为在 Firefox 中它可以工作!!!
【问题讨论】:
-
加载库时是否引发错误?因为project has automated test for browswers 包括 Chrome。如果在运行您的代码时失败,请在此处发布您的代码(并向制作 Poly2Tri 的人道歉)。
标签: javascript three.js mesh triangulation