使用 3 .js加载 STL 文件时出错



我想使用三个.js显示 STL 文件的预览。我遵循了以下教程,因为这正是我所需要的:

教程

我在以下行中收到一个名为 undefined is not a function (near '...loader.addEventListener...') 的错误:

    var loader=new THREE.STLLoader();
    loader.addEventListener('load', function (event){
    var geometry=event.content;
    var material=new THREE.MeshLambertMaterial({ ambient: 0xFBB917,color: 0xfdd017 });
    var mesh=new THREE.Mesh(geometry, material);
    scene.add(mesh);});

我还正确包含了所有文件,我的代码有什么问题,或者使用 javascript 简单预览 STL 文件是否有其他选择?

看起来该教程是用旧版本的 three.js 编写的。对于较新版本,在加载 STL(和其他模型格式(时,必须使用 .load 函数:

var material = new THREE.MeshLambertMaterial({ ambient: 0xFBB917,color: 0xfdd017 });
var loader = new THREE.STLLoader();
loader.load( './models/stl/slotted_disk.stl', function ( geometry ) {
  scene.add( new THREE.Mesh( geometry, material ) );
});

STLoader.js:L18-30

最新更新