我将多边形的顶点(x,y,z坐标)作为输入。如何在three.js?
中渲染具有这些顶点的多边形有this文档。但它似乎涉及bezier。我需要简单的直边多边形。
答案 0 :(得分:2)
您可以使用以下代码从顶点创建多边形:
var geom = new THREE.Geometry();
var v1 = new THREE.Vector3(0,0,0);
var v2 = new THREE.Vector3(0,500,0);
var v3 = new THREE.Vector3(0,500,500);
geom.vertices.push(v1);
geom.vertices.push(v2);
geom.vertices.push(v3);
geom.faces.push( new THREE.Face3( 0, 1, 2 ) );
geom.computeFaceNormals();
var object = new THREE.Mesh( geom, new THREE.MeshNormalMaterial() );
scene.add(object);
复制并粘贴此代码,然后将v1,v2和v3的x,y和z坐标(或者您需要的多个顶点)更改为顶点的坐标。
基本上,您使用THREE.Vector3
创建顶点以提供坐标,然后将它们推送到空THREE.Geometry()
的顶点属性;
代码来自this回答