使用三个.js中的输入顶点渲染多边形

时间:2018-05-04 09:43:30

标签: three.js

我将多边形的顶点(x,y,z坐标)作为输入。如何在three.js?

中渲染具有这些顶点的多边形

this文档。但它似乎涉及bezier。我需要简单的直边多边形。

1 个答案:

答案 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回答