From 35ddaca1fe74191a9861f42b1d6d5f1ed93651a5 Mon Sep 17 00:00:00 2001
From: ZhangXianQiang <1135831638@qq.com>
Date: 星期三, 17 四月 2024 15:33:47 +0800
Subject: [PATCH] feat:添加角度限制
---
src/views/screen/components/screen-map-three/experience/camera.js | 5 +++++
src/views/screen/components/screen-map-three/experience/world/enviroment.js | 4 ++--
src/views/screen/components/screen-map-three/experience/world/map.js | 2 +-
3 files changed, 8 insertions(+), 3 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 792beeb..8a541f2 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';
@@ -26,6 +27,10 @@
this.controls = new OrbitControls(this.instance, this.canvas);
this.controls.target.set(0, 0, 5);
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() {
diff --git a/src/views/screen/components/screen-map-three/experience/world/enviroment.js b/src/views/screen/components/screen-map-three/experience/world/enviroment.js
index 9fb8d80..6ee6381 100644
--- a/src/views/screen/components/screen-map-three/experience/world/enviroment.js
+++ b/src/views/screen/components/screen-map-three/experience/world/enviroment.js
@@ -36,7 +36,7 @@
width: 48,
height: 48,
texture: rotatingApertureTexture,
- positionList: [0, 0.4, 0.3],
+ positionList: [0, 0.4, 0],
scaleList: [1, 1, 1],
rotateList: [-Math.PI / 2, 0, 0]
};
@@ -44,7 +44,7 @@
width: 40,
height: 40,
texture: rotatingPointTexture,
- positionList: [0, 0.3, 0.3],
+ positionList: [0, 0.3, 0],
scaleList: [1, 1, 1],
rotateList: [-Math.PI / 2, 0, 0]
};
diff --git a/src/views/screen/components/screen-map-three/experience/world/map.js b/src/views/screen/components/screen-map-three/experience/world/map.js
index 5620c65..d7da5f6 100644
--- a/src/views/screen/components/screen-map-three/experience/world/map.js
+++ b/src/views/screen/components/screen-map-three/experience/world/map.js
@@ -80,7 +80,7 @@
}
this.map.add(province);
});
- this.map.position.set(1, 1, 0.15);
+ this.map.position.set(1, 1, -2);
this.map.scale.set(10, 10, 10);
this.map.rotation.set(THREE.MathUtils.degToRad(-90), 0, THREE.MathUtils.degToRad(20));
this.container = new THREE.Object3D();
--
Gitblit v1.8.0