From 03421f49b51b92f675d0bd0cae9d0ba341001b92 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期三, 22 六月 2022 10:50:03 +0800
Subject: [PATCH] #

---
 static/js/object/StoreCrn.js |   78 ++++++++++++++++++++------------------
 1 files changed, 41 insertions(+), 37 deletions(-)

diff --git a/static/js/object/StoreCrn.js b/static/js/object/StoreCrn.js
index f7751a3..e0d70f9 100644
--- a/static/js/object/StoreCrn.js
+++ b/static/js/object/StoreCrn.js
@@ -6,11 +6,11 @@
 const zOffset = -480;
 
 const xOffset0 = -1735;
-const yOffset0 = -108;
+const yOffset0 = -117;
 const zOffset0 = -480;
 
 const xOffset1 = -1735;
-const yOffset1 = -107;
+const yOffset1 = -116;
 const zOffset1 = -475;
 
 function StoreCrn(option, object) {
@@ -25,41 +25,6 @@
     this.crnForkWidth = option.crnFork.width||20;//搴撲綅瀹�
     this.crnForkHeight = option.crnFork.height||30;//搴撲綅楂�
 
-    // 绔嬫煴
-    // var a = new THREE.Mesh(new THREE.BoxBufferGeometry(this.crnBodyLength, this.crnBodyHeight, this.crnBodyWidth), new THREE.MeshBasicMaterial({
-    //     color: 0xff0000,
-    //     transparent: true,
-    //     opacity: .3
-    // }))
-    // a.name = option.crnNo + "-body";
-    // a.position.x = option.crnBody.position.x;
-    // a.position.y = option.crnBody.position.y + this.crnBodyHeight/2;
-    // a.position.z = option.crnBody.position.z - this.crnBodyWidth/2;
-    // object.addObject(a);
-    // 杞借揣鍙�
-    // var b = new THREE.Mesh(new THREE.BoxBufferGeometry(this.crnLoadLength, this.crnLoadHeight, this.crnLoadWidth), new THREE.MeshBasicMaterial({
-    //     color: 0x00ff00,
-    //     transparent: true,
-    //     opacity: .5
-    // }))
-    // b.name = option.crnNo + "-load";
-    // b.position.x = option.crnLoad.position.x;
-    // b.position.y = option.crnLoad.position.y + this.crnLoadHeight/2;
-    // b.position.z = option.crnLoad.position.z - this.crnLoadWidth/2 + 5;
-    // object.addObject(b);
-    // 鍙夌墮
-    // var c = new THREE.Mesh(new THREE.BoxBufferGeometry(this.crnForkLength, this.crnForkWidth, this.crnForkHeight), new THREE.MeshBasicMaterial({
-    //     color: 0xff00ff,
-    //     transparent: true,
-    //     opacity: 1
-    // }))
-    // c.name = option.crnNo + "-fork";
-    // c.position.x = option.crnFork.position.x;
-    // c.position.y = option.crnFork.position.y + this.crnLoadHeight/2;
-    // c.position.z = option.crnFork.position.z - this.crnLoadWidth/2;
-    // object.addObject(c);
-
-
     const manager = new THREE.LoadingManager();
     new MTLLoader(manager)
         .setPath( '../static/model/obj/' )
@@ -69,12 +34,25 @@
                 .setMaterials( materials )
                 .setPath( '../static/model/obj/' )
                 .load( '鍫嗗灈鏈烘湰浣�.obj', function ( obj ) {
+                    obj.traverse (function (child) {
+                        child.castShadow = true;
+                        // child.receiveShadow = true;
+                        if (child instanceof THREE.Mesh) {
+                            child.material = new THREE.MeshLambertMaterial({
+                                color: 0xCD6839
+                            });
+                        }
+                    });
+
                     obj.scale.set(0.03, 0.03, 0.03);
                     obj.rotateY(- Math.PI / 2);
                     obj.name = option.crnNo + "-body";
                     obj.position.x = option.crnBody.position.x + xOffset;
                     obj.position.y = option.crnBody.position.y + that.crnBodyHeight/2 + yOffset;
                     obj.position.z = option.crnBody.position.z - that.crnBodyWidth/2 + zOffset;
+                    obj.userData['crnBodyLength'] = that.crnBodyLength;
+                    obj.userData['crnBodyWidth'] = that.crnBodyWidth;
+                    obj.userData['crnBodyHeight'] = that.crnBodyHeight;
                     object.addObject( obj );
                 }, null, null );
         });
@@ -86,12 +64,25 @@
                 .setMaterials( materials )
                 .setPath( '../static/model/obj/' )
                 .load( '杞借揣鍙�.obj', function ( obj ) {
+                    obj.traverse (function (child) {
+                        if (child instanceof THREE.Mesh) {
+                            child.castShadow = true;
+                            // child.receiveShadow = true;
+                            child.material = new THREE.MeshLambertMaterial({
+                                color: 0xD2691E
+                            });
+                        }
+                    });
+
                     obj.scale.set(0.03, 0.03, 0.03);
                     obj.rotateY(- Math.PI / 2);
                     obj.name = option.crnNo + "-load";
                     obj.position.x = option.crnLoad.position.x + xOffset0;
                     obj.position.y = option.crnLoad.position.y + that.crnLoadHeight/2 + yOffset0;
                     obj.position.z = option.crnLoad.position.z - that.crnLoadWidth/2 + 5 + zOffset0;
+                    obj.userData['crnLoadLength'] = that.crnLoadLength;
+                    obj.userData['crnLoadWidth'] = that.crnLoadWidth;
+                    obj.userData['crnLoadHeight'] = that.crnLoadHeight;
                     object.addObject( obj );
                 }, null, null );
         });
@@ -103,12 +94,25 @@
                 .setMaterials( materials )
                 .setPath( '../static/model/obj/' )
                 .load( '璐у弶.obj', function ( obj ) {
+                    obj.traverse (function (child) {
+                        if (child instanceof THREE.Mesh) {
+                            child.castShadow = true;
+                            // child.receiveShadow = true;
+                            child.material = new THREE.MeshLambertMaterial({
+                                color: 0x363636
+                            });
+                        }
+                    });
+
                     obj.scale.set(0.03, 0.03, 0.03);
                     obj.rotateY(- Math.PI / 2);
                     obj.name = option.crnNo + "-fork";
                     obj.position.x = option.crnFork.position.x + xOffset1;
                     obj.position.y = option.crnFork.position.y + that.crnLoadHeight/2 + yOffset1;
                     obj.position.z = option.crnFork.position.z - that.crnLoadWidth/2 + zOffset1;
+                    obj.userData['crnForkLength'] = that.crnForkLength;
+                    obj.userData['crnForkWidth'] = that.crnForkWidth;
+                    obj.userData['crnForkHeight'] = that.crnForkHeight;
                     object.addObject( obj );
                 }, null, null );
         });

--
Gitblit v1.9.1