【问题标题】:.vertices array does not give the vertices in THREE.js.vertices 数组没有给出 THREE.js 中的顶点
【发布时间】:2015-06-01 18:51:17
【问题描述】:

我正在使用 OBJloader 在 WEBGL Three.js 中加载一个 .obj 文件。 我想访问对象的顶点和面,但 geometry.vertices 不返回顶点位置,它给了我未定义的。

这是一段代码:

 var tool= new THREE.OBJLoader();
 tool.load( '../obj/tool.obj', function ( object ) {
            var material = new THREE.MeshLambertMaterial({color:0xA0A0A0});             
            object.traverse( function ( child ) {
                if ( child instanceof THREE.Mesh ) {
                   child.material = material;
                   console.log( "child" + child.geometry.vertices);} }

r.70

提前感谢您的帮助。

【问题讨论】:

  • 加载程序正在返回BufferGeometry
  • 我已经使用geometry.vertices和OBJloader检查了一些样本,但它在我的代码中不起作用。此外,我需要稍后移动对象并更新顶点位置并访问面。但它无法访问 buffergeometry 属性中的面。
  • 谢谢,非常感谢,效果很好。
  • 好。已发布答案。

标签: three.js vertices


【解决方案1】:

此答案仅适用于 r.125 之前的 three.js 版本。

如果您使用的加载器返回BufferGeometry,您可以在加载器回调中使用如下模式将返回的几何转换为Geometry

var geometry = new THREE.Geometry().fromBufferGeometry( bufferGeometry );

three.js r.124

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-17
    • 2019-03-30
    • 2018-10-20
    相关资源
    最近更新 更多