From 4846dd5a2fdf80538d440e113f8cd7296b9c4d93 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期四, 28 三月 2024 09:23:01 +0800 Subject: [PATCH] # --- zy-asrs-flow/src/pages/map/drawer/shelf/shelfThree.js | 29 ++++++++++++++++------------- 1 files changed, 16 insertions(+), 13 deletions(-) diff --git a/zy-asrs-flow/src/pages/map/drawer/shelf/shelfThree.js b/zy-asrs-flow/src/pages/map/drawer/shelf/shelfThree.js index d09eb65..459d919 100644 --- a/zy-asrs-flow/src/pages/map/drawer/shelf/shelfThree.js +++ b/zy-asrs-flow/src/pages/map/drawer/shelf/shelfThree.js @@ -4,11 +4,6 @@ import TWEEN from '@tweenjs/tween.js'; const help = false; -const debugCamera = { - x: 200, - y: 200, - z: 200 -} export default class ShelfThree { @@ -34,12 +29,13 @@ } animate = () => { - requestAnimationFrame(this.animate); + this.animationFrame = requestAnimationFrame(this.animate); this.render(); TWEEN.update(); } render = () => { + console.log(1); this.renderer.shadowMap.enabled = true; this.renderer.render(this.scene, this.camera); this.stats.update(); @@ -65,7 +61,7 @@ initCamera = () => { const camera = new THREE.PerspectiveCamera(70, this.fullWidth / this.fullHeight, 1, 60000); - camera.position.set(debugCamera.x, debugCamera.y, debugCamera.z); + camera.position.set(200, 200, 200); this.scene.add(camera); return camera; } @@ -112,12 +108,12 @@ } windowResize = () => { - let that = this; - window.addEventListener('resize', function () { - that.camera.aspect = this.fullWidth / this.fullHeight; - that.camera.updateProjectionMatrix(); - that.renderer.setSize(that.fullWidth, that.fullHeight); - }, false); + this.resizeHandler = () => { + this.camera.aspect = this.fullWidth / this.fullHeight; + this.camera.updateProjectionMatrix(); + this.renderer.setSize(this.fullWidth, this.fullHeight); + }; + window.addEventListener('resize', this.resizeHandler, false); } initRaycaster = (container) => { @@ -167,6 +163,13 @@ handleClick = () => { } + + destroy = () => { + cancelAnimationFrame(this.animationFrame); + window.removeEventListener('resize', this.resizeHandler); + this.renderer.dispose(); + this.controls.dispose(); + } }; const initLight = (scene) => { -- Gitblit v1.9.1