【发布时间】:2015-10-02 16:34:33
【问题描述】:
这就是我想要实现的(一个可修改的多边形,其中红色圆圈是顶点)并且我想动态构建多边形。
当初始化几何时
var geometry = new THREE.Geometry();
geometry.vertices.push(point);
geometry.vertices.push(point);
var line = new THREE.Line(geometry, new THREE.LineBasicMaterial({}));
在第二次单击之前它运行良好,它在 1 和 2 之间建立一条直线,但在将其推送到数组时不会添加第三条线。 WebGL 似乎需要缓冲点。
当我像这样预定义顶点时,我可以画两条线(第三次点击)
var geometry = new THREE.Geometry();
for (var i = 0; i < 4; i++) {
geometry.vertices.push(point);
}
var line = new THREE.Line(geometry, new THREE.LineBasicMaterial({}));
但这不是一个好的解决方案,因为我不知道用户想要添加多少个顶点,并且给它分配一个大数字是没有意义的,因为我必须循环多次。
有什么办法吗?
【问题讨论】:
标签: javascript three.js webgl