From 0e944bfc16136c0a749fc6022e0dfc7f2b4af010 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期二, 15 十月 2024 18:16:17 +0800
Subject: [PATCH] 工单图片样式调整、取消考核页面人脸和车辆的公安部按钮
---
src/views/screen/components/screen-map-three/experience/camera.js | 50 +++++++++++++++++++++++++++++++++++++-------------
1 files changed, 37 insertions(+), 13 deletions(-)
diff --git a/src/views/screen/components/screen-map-three/experience/camera.js b/src/views/screen/components/screen-map-three/experience/camera.js
index 2135a65..1acbd7c 100644
--- a/src/views/screen/components/screen-map-three/experience/camera.js
+++ b/src/views/screen/components/screen-map-three/experience/camera.js
@@ -1,3 +1,4 @@
+import { MathUtils } from 'three';
import { PerspectiveCamera, CameraHelper } from 'three';
import { OrbitControls } from 'three/examples/jsm/controls/OrbitControls';
@@ -5,35 +6,37 @@
export default class Camera {
constructor(experience) {
this.experience = experience;
- this.scene = this.experience.scene;
- this.canvas = this.experience.canvas;
- this.sizes = this.experience.sizes;
+ this.scene = experience.scene;
+ this.canvas = experience.canvas;
+ this.sizes = experience.sizes;
this.setInstance();
this.setOrbitControls();
-
}
// 璁剧疆閫忚鐩告満
setInstance() {
- this.instance = new PerspectiveCamera(75,this.sizes.width / this.sizes.height, 0.1, 1000);
- this.instance.position.set(0, 2, 2);
+ this.instance = new PerspectiveCamera(45, this.sizes.width / this.sizes.height, 0.1, 200);
+ this.instance.position.set(0,30,25);
this.scene.add(this.instance);
- const help = new CameraHelper(this.instance);
- this.scene.add(help);
+ this.instance.position.z = 10;
+ this.instance.position.x = 0;
+ // const help = new CameraHelper(this.instance);
+ // this.scene.add(help);
}
setOrbitControls() {
this.controls = new OrbitControls(this.instance, this.canvas);
this.controls.target.set(0, 0, 1);
+ this.controls.enableDamping = true;
+ this.controls.minDistance = 20;
+ this.controls.maxDistance = 80;
+ this.controls.maxPolarAngle = MathUtils.degToRad(80);
+ // this.controls.maxPolarAngle = (-Math.PI / 2);
}
resize() {
// 閲嶆柊璁$畻姣斾緥
- this.cameraAspect = (this.sizes.width / this.sizes.height) * this.frustrum;
- this.instance.left = -this.cameraAspect / 2;
- this.instance.right = this.cameraAspect / 2;
- this.instance.top = this.frustrum / 2;
- this.instance.bottom = -this.frustrum / 2;
+ this.cameraAspect = this.sizes.width / this.sizes.height;
this.instance.updateProjectionMatrix();
}
@@ -41,4 +44,25 @@
update() {
this.controls.update();
}
+
+ destroy() {
+ this.disposeObject();
+ this.removeObject();
+ this.resetObject();
+ }
+
+ disposeObject() {
+ this.controls.dispose();
+ }
+
+ removeObject() {
+ this.scene.remove(this.instance);
+ }
+ resetObject() {
+ this.controls = null;
+ this.instance = null;
+ this.scene = null;
+ this.canvas = null;
+ this.sizes = null;
+ }
}
\ No newline at end of file
--
Gitblit v1.8.0