2014-12-31 17 views
6

Próbuję załadować plik .stl do pliku three.js. Wszystko działa poprawnie i pojawia się model jako BufferGeometry użyciu tego kodu:Ładowanie obiektu jako geometrii zamiast BufferGeometry w threejs

var loader = new THREE.STLLoader(); 
    loader.addEventListener('load', function (event) 
    { 

     var material = new THREE.MeshLambertMaterial({ 
      color: 0x888888, 
      side: THREE.DoubleSide 
     }); 

     var bufferGeometry = event.content; 
     var mesh = new THREE.Mesh(geometry, material); 
     scene.add(mesh); 
    }); 
    loader.load('model.stl'); 

Aby ułatwić dalsze manipulować model chciałbym mieć geometrię jak regularne THREE.Geometry zamiast THREE.BufferGeometry. Czy jest możliwe załadowanie .stl w taki sposób, że otrzymam go jako THREE.Geometry, czy można go przekonwertować z THREE.BufferGeometry na THREE.Geometry? Czy jest to możliwe przy użyciu pliku .obj lub czegoś innego?

Odpowiedz

16

STLLoader teraz zwraca obiekt BufferGeometry.

można przekonwertować do THREE.Geometry tak:

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

Three.js r.69