相关疑难解决方法(0)

动态绘制一条带有three.js的行

这是我想要实现的(一个可修改的多边形,其中红色圆圈是顶点),我想动态构建多边形.

在此输入图像描述

在启动几何体时

var geometry = new THREE.Geometry();

geometry.vertices.push(point);
geometry.vertices.push(point);

var line = new THREE.Line(geometry, new THREE.LineBasicMaterial({}));
Run Code Online (Sandbox Code Playgroud)

它运行良好,直到第二次单击,它在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({}));
Run Code Online (Sandbox Code Playgroud)

但这不是一个好的解决方案,因为我不知道用户想要添加多少个顶点,因为我需要多次循环它,所以分配它是没有意义的.

它有什么办法吗?

javascript webgl three.js

14
推荐指数
3
解决办法
3万
查看次数

标签 统计

javascript ×1

three.js ×1

webgl ×1