4

使用代码后如何找到网格的顶点位置.fromGeometry();?我从用于网格的几何体创建了缓冲几何体。这是一个例子。

var geom = new THREE.BoxGeometry(1,1,1);
var buffgeom = new THREE.BufferGeometry();
buffgeom.fromGeometry(geom);
var mat = new THREE.MeshBasicMaterial({ color: 0x0000ff });
var cube = new THREE.Mesh(buffgeom, mat);

geometryvertices.vertices = buffgeom.vertices;

geometryvertices.vertices = buffgeom.vertices;代码不适用于buffgeom. 如何找到 的顶点位置buffgeom?有人可以帮忙吗?

之后,我想将几​​何的顶点推入THREE.Vector3. 这就是它与几何图形一起工作的方式。

geom.vertices.push(Vector3);

它不适用于缓冲几何。

4

1 回答 1

1
var tempGeo = new THREE.Geometry().fromBufferGeometry(myMesh.geometry);
for (var i= 0; i< tempGeo.vertices.length; i++) {
  var pos = tempGeo.vertices[i].applyMatrix4(myMesh.matrix);
}
于 2018-02-17T06:12:18.813 回答