three.js应用之二—— 一些刚接触可能不会注意到的常见场景和问题【可能就有你遇到的问题哦】
1. 开启模型自动旋转
2. 将模型移动到世界系原点
因为有时候模型师并不一定都把模型给你定位好,位于中心点位置所以就需要去调整到坐标系原点,也是将模型在盒子中居中,美观一些。
在加载模型new xxxLoader().load(url,onload, onprogress, onError)的第二个参数,也就是模型加载完之后的回调中执行:
onload = (object)=> {
let box = new THREE.Box3().setFromObject(object);
let mdlen = box.max.x - box.min.x;
let mdwid = box.max.z - box.min.z;
let mdhei = box.max.y - box.min.y;
let x1 = box.min.x + mdlen / 2;
let y1 = box.min.y + mdhei / 2;
let z1 = box.min.z + mdwid / 2;
object.position.set(-x1, -y1, -z1);
}
亲测有用,原理之后研究再补上,先留白
【原理】
3.找到空间系原点
threejs 官方提供了一个辅助类---AxesHelper,用于去简单模拟3个坐标轴的对象.这个坐标轴是一个右手系,并且原点就是模型所处的三维空间系坐标系原点(0,0,0),
添加到场景中就可以看到
红色代表 X 轴. 绿色代表 Y 轴. 蓝色代表 Z 轴.
本文作者:CV攻城狮中的一员
本文链接:https://www.cnblogs.com/Hijacku/p/15897892.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律