为了账号安全,请及时绑定邮箱和手机立即绑定

Three.js 使用 ColladaLoader 引入外部模型如何居中?

Three.js 使用 ColladaLoader 引入外部模型如何居中?

肥皂起泡泡 2019-02-05 17:52:20
代码如下,使用ColladaLoader引入模型后不知道如何使用Geometry,或者如何得到模型的尺寸...var loader = new THREE.ColladaLoader();var mesh; loader.load("dae/LuckyStrike/luckystrike.dae", function (result) {     mesh = result.scene.children[0].clone();    // 定位     // mesh.position.set(-1.4,-1,-.5)     scene.add(mesh); });
查看完整描述

1 回答

?
慕仙森

TA贡献1827条经验 获得超7个赞

自问自答,找到方法啦!使用 newTHREE.Box3() 函数通过计算max - min可以获取中点。

loader.load( daeUrl, function (result) {
  mesh = result.scene  let scaleNum = 1
  let box = new THREE.Box3().setFromObject(mesh);  // 定位  
  mesh.position.set((-box.max.x - box.min.x) * scaleNum * 20, (-box.max.y - box.min.y) * scaleNum * 20, (-box.max.z - box.min.z) * scaleNum * 20)  // 缩放
  mesh.scale.set(scaleNum, scaleNum, scaleNum);
  scene.add(mesh);
})


查看完整回答
反对 回复 2019-02-05
  • 1 回答
  • 0 关注
  • 1090 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信