three.js相机调用reset方法复原但无法完全复原

这篇具有很好参考价值的文章主要介绍了three.js相机调用reset方法复原但无法完全复原。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、问题

二、原因

三、总结


一、问题

需求:经过多次旋转、平移等变换后,希望恢复到初次渲染的角度、位置。结果发现:

 three.js oribtControls调用  一次reset方法 无法完全复原;需要多次调用后才能复原

     this.orbitControls.reset()

二、原因

1.设置了阻尼系数:注释掉阻尼系数就好了

        // this.cameraControls.enableDamping=true;
        // this.cameraControls.dampingFactor=0.25;

2.为什么会设置呢?

   呜呜呜,我当时只是用来测试的而且不知道它有什么作用(没想到忘记注释了),现在知道了:相当于手动增加了摩擦力,能调节场景中的模型旋转、拖动的流畅度

三、总结

1.诶,是bug,也是学习!不过自己给自己挖坑是真的害怕呀,找了很久都不知道为什么@_@

2.终于好了!

/*

希望对你有帮助!

如有错误,欢迎指正,非常感谢!

*/文章来源地址https://www.toymoban.com/news/detail-753692.html

到了这里,关于three.js相机调用reset方法复原但无法完全复原的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Three.js设置相机lookAt无效

    原因:代码中使用了OrbitControls轨道控件来控制相机,这个目标默认为THREE.Vector3(),也就是(0, 0, 0)世界坐标的原点。使用camera.lookAt会无效。 源代码片段: 解决方法: 将 camera.lookAt(100, 0, 100) 改为: 这篇博文写的很详细: https://blog.csdn.net/ithanmang/article/details/82735273

    2024年02月06日
    浏览(48)
  • Three.js第三章——透视投影相机

            Threejs提供了正投影相机 OrthographicCamera (opens new window) 和透视投影相机 PerspectiveCamera (opens new window) 。         透视投影相机  PerspectiveCamera  本质上就是在模拟人眼观察这个世界的规律。         生活中用相机拍照,你相机位置不同,拍照结果也不同,

    2024年04月29日
    浏览(45)
  • three.js从入门到精通系列教程004 - three.js透视相机(PerspectiveCamera)滚动浏览全景大图

    源码下载地址 three.js从入门到精通系列教程004 - three.js透视相机(PerspectiveCamera)滚动浏览全景大图

    2024年01月23日
    浏览(60)
  • three.js入门二:相机的zoom参数

    环境: threejs:129 (在浏览器的控制台下输入: window.__THREE__即可查看版本) vscode window edge 透视相机或正交相机都有一个zoom参数,它可以用来将相机排到的内容在canvas上缩放显示。 要点: 设置zoom后要调用 camera.updateProjectionMatrix(); zoom默认是1,它的取值就像是手机拍照一样

    2024年02月15日
    浏览(51)
  • Three.JS教程1 环境搭建、场景与相机

    Three.js 是一款基于JavaScript的开源3D图形库,它简化了在Web上创建复杂的3D场景和动画的过程。 Three.js 由Ricardo Cabello(也称为mr.doob)于2010年创建,最初是为了填补WebGL技术在那个时候的不足而设计的。随着WebGL的普及和浏览器性能的提升,Three.js逐渐成为Web上3D图形编程的事实标

    2024年01月25日
    浏览(49)
  • three.js 使用 tweenjs绘制相机运动动画

    效果: 代码:  

    2024年01月18日
    浏览(53)
  • three.js 点按钮,相机飞行靠近观察设备

    效果: 点击按钮或直接点击模型都可以实现运动效果  代码:

    2024年01月18日
    浏览(40)
  • Three.js之相机、渲染器、光源、动画、性能监测

    第一个3D案例—透视投影相机 第一个3D案例—渲染器 … Canvas画布布局和全屏 透视投影相机PerspectiveCamera WebGL渲染器WebGLRenderer 辅助观察坐标系AxesHelper 漫反射网格材质MeshLambertMaterial 点光源PointLight 点光源辅助观察PointLightHelper 环境光AmbientLight 平行光DirectionalLight 平行光辅助观

    2024年02月13日
    浏览(41)
  • Three.js教程:阵列立方体和相机适配体验

    推荐:将NSDT场景编辑器加入你的3D工具链 其他系列工具:NSDT简石数字孪生 本节课通过阵列一片立方体,进一步体验下透视投影相机的投影规律。 for循环创建一列模型 双层for循环创建阵列模型 相机位置拉远,可以看到更大的观察范围 超出视锥体远裁界面的范围的会被剪裁掉

    2024年02月11日
    浏览(52)
  • Three.js教程:相机控件轨道控制器OrbitControls

    推荐:将 NSDT场景编辑器 加入你的3D工具链 其他系列工具: NSDT简石数字孪生 平时开发调试代码,或者展示模型的时候,可以通过相机控件OrbitControls实现旋转缩放预览效果。 OrbitControls使用 你可以打开课件案例源码测试下效果。 旋转:拖动鼠标左键 缩放:滚动鼠标中键 平移

    2024年02月09日
    浏览(65)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包