将WireframeHelper与加载的对象一起使用

时间:2016-01-07 06:37:00

标签: javascript three.js

在我的三个JS应用程序中,我从clara.io下载了一些对象的JSON文件。我用THREE.ObjectLoader将它们加载到一个对象变量中。我把它添加到场景中,一切正常。

但是,当我尝试使用THREE.WireframeHelper显示对象的线框时,出现以下错误:

Uncaught TypeError: Cannot read property 'array' of undefined

显然,对象的几何形状是未定义的。

所以问题是:以这种方式加载的自定义形状是否总是具有空几何?如果不是,我怎样才能获得一个物体的几何形状“完整”?

1 个答案:

答案 0 :(得分:4)

加载的对象可能包含子对象和子网格物体。

在您的加载程序回调中,使用以下模式:

object.traverse( function( child ) {

    if ( child instanceof THREE.Mesh ) {

        var wh = new THREE.WireframeHelper( child, 0xffffff );
        scene.add( wh );

    }

} );

three.js r.73