多模型坐标转化的思路:生成一个容器盒子,包裹全部模型,再对盒子对坐标进行转换。
伪代码
模型加载:
var group = new THREE.Group();
loader.load("./data/1.stl", stlMesh);
loader.load("./data/2.stl", stlMesh);
loader.load("./data/3.stl", stlMesh);
函数:
function stlMesh(stlGeometry) {
var mesh = new THREE.Mesh( stlGeometry, material );
mesh.scale.multiplyScalar( 0.2 );
group.add(mesh);
}
setTimeout(function(){
var bbox = new THREE.Box3().setFromObject(group)
var mdlen=bbox.max.x-bbox.min.x;
var mdwid=bbox.max.z-bbox.min.z;
var mdhei=bbox.max.y-bbox.min.y;
var x1=bbox.min.x+mdlen/2;
var y1=bbox.min.y+mdhei/2;
var z1=bbox.min.z+mdwid/2;
group.position.set(-x1,-y1,-z1);
scene.add(group);
},2000);
初学webgl,请多指教。