#
luxiaotao1123
2024-03-28 7bc4ada035d823e82571d9fff5f7fc13c8f7d448
#
2个文件已修改
44 ■■■■■ 已修改文件
zy-asrs-flow/src/pages/map/drawer/shelf/shelfThree.js 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-flow/src/pages/map/drawer/shelf/view.jsx 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-flow/src/pages/map/drawer/shelf/shelfThree.js
@@ -3,7 +3,7 @@
import { OrbitControls } from 'three/examples/jsm/controls/OrbitControls'
import TWEEN from '@tweenjs/tween.js';
const help = false;
const help = true;
const debugCamera = {
    x: 200,
    y: 200,
@@ -23,7 +23,7 @@
        this.stats = this.initStats(container);
        this.windowResize();
        this.initRaycaster(container);
        initLight(this.scene);
        // initLight(this.scene);
        this.objects = [];
    }
@@ -56,7 +56,7 @@
    initScene = () => {
        const scene = new THREE.Scene();
        // scene.background = new THREE.Color(0xf0f0f0);
        // scene.background = new THREE.Color(0x333333);
        scene.background = new THREE.Color(0x333333);
        if (help) {
            scene.add(new THREE.AxesHelper(1000));
        }
@@ -64,7 +64,7 @@
    }
    initCamera = () => {
        const camera = new THREE.PerspectiveCamera(70, window.innerWidth / window.innerHeight, 1, 10000);
        const camera = new THREE.PerspectiveCamera(70, this.fullWidth / this.fullHeight, 1, 10000);
        camera.position.set(debugCamera.x, debugCamera.y, debugCamera.z);
        this.scene.add(camera);
        return camera;
@@ -79,7 +79,7 @@
        // this.renderer.toneMapping = THREE.ReinhardToneMapping;
        renderer.toneMapping = THREE.ACESFilmicToneMapping;
        renderer.setPixelRatio(window.devicePixelRatio);
        renderer.setSize(300, 500);
        renderer.setSize(this.fullWidth, this.fullHeight);
        container.appendChild(renderer.domElement);
        return renderer;
    }
@@ -114,7 +114,7 @@
    windowResize = () => {
        let that = this;
        window.addEventListener('resize', function () {
            that.camera.aspect = window.innerWidth / window.innerHeight;
            that.camera.aspect = this.fullWidth / this.fullHeight;
            that.camera.updateProjectionMatrix();
            that.renderer.setSize(that.fullWidth, that.fullHeight);
        }, false);
@@ -161,8 +161,7 @@
    }
    build = () => {
        // 1.build floor
        buildFloor(this.scene);
        buildDemo(this.scene);
    }
    handleClick = () => {
@@ -171,7 +170,6 @@
};
const initLight = (scene) => {
    const directionalLight = new THREE.DirectionalLight(0xffffff, 0.6); // 光颜色,强度
    directionalLight.position.set(1, 1, 1).normalize();
    scene.add(directionalLight);
@@ -180,7 +178,7 @@
    scene.add(ambientLight);
    const spotLight = new THREE.SpotLight(0xffffff, 8);
    spotLight.position.set(1617, 2500, 4022);
    spotLight.position.set(0, 300, 0);
    spotLight.angle = Math.PI * 1;
    spotLight.decay = 0;
    spotLight.castShadow = true;
@@ -189,32 +187,18 @@
    spotLight.shadow.bias = - 0.000222;
    spotLight.shadow.mapSize.width = 1024;
    spotLight.shadow.mapSize.height = 1024;
    const targetObject = new THREE.Object3D();
    targetObject.position.set(1617, 0, 4022);
    spotLight.target = targetObject;
    scene.add(spotLight);
    if (help) {
        scene.add(new THREE.SpotLightHelper(spotLight));
    }
}
const buildFloor = (scene) => {
    const boxGeometry = new THREE.BoxGeometry(100, 100, 100); // 216为长度,10为宽度,10为高度
const buildDemo = (scene) => {
    const boxGeometry = new THREE.BoxGeometry(100, 100, 100);
    const boxMaterial = new THREE.MeshBasicMaterial({ color: 0x40739e });
    const boxMesh = new THREE.Mesh(boxGeometry, boxMaterial);
    boxMesh.position.set(0, 0, 0); // 根据你的需求设置位置
    boxMesh.position.set(0, 0, 0);
    scene.add(boxMesh)
    return boxMesh;
    const size = 100;
    const divisions = 100;
    const helper = new THREE.GridHelper(size, divisions);
    helper.position.x = size / 2;
    helper.position.z = size / 2;
    helper.material.opacity = 0.25;
    helper.material.transparent = true;
    scene.add(helper);
    return helper;
}
zy-asrs-flow/src/pages/map/drawer/shelf/view.jsx
@@ -10,8 +10,8 @@
    return {
        threeContainer: {
            zIndex: 99,
            width: '300px',
            height: '500px',
            width: '500px',
            height: '600px',
        }
    }
})