From c087c4b39244d8da62aa4119258500b411b79ffc Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期五, 17 十二月 2021 14:58:38 +0800
Subject: [PATCH] #

---
 static/js/app.js |  218 ++++++++++++++++++++++--------------------------------
 1 files changed, 89 insertions(+), 129 deletions(-)

diff --git a/static/js/app.js b/static/js/app.js
index 6bede19..9911ce3 100644
--- a/static/js/app.js
+++ b/static/js/app.js
@@ -2,6 +2,8 @@
 import Stats from './lib/stats.module.js';
 import {MTLLoader} from './lib/MTLLoader.js';
 import {OBJLoader} from './lib/OBJLoader.js';
+import {StoreShelf} from './object/StoreShelf.js';
+import {StoreCrn} from './object/StoreCrn.js';
 
 var APP = {
 
@@ -14,6 +16,10 @@
 		this.firstTime = 1;
 		this.stats = null;
 		this.goodTypes=[];//瀛樺偍鎵�鏈夌殑搴撲綅绫诲瀷
+		this.wrkTasks = [];// 浠诲姟鍒楄〃
+		this.crnTasks = [];// 鍫嗗灈鏈哄垪琛�
+		this.time = 0;//鏍囪鍫嗗灈鏈鸿繍琛岀殑鏃堕棿
+		this.progress = 0;
 
 		this.start = function () {
 			this.initMain();
@@ -29,7 +35,6 @@
 			this.initLight();
 			this.initFloor();
 			this.initModel();
-			this.initModel0();
 			this.initStoreObjects(this);
 		}
 		this.animate = function () {
@@ -37,7 +42,8 @@
 			this.stats.begin();
 			this.renderer.render(this.scene, this.camera);
 			this.stats.end();
-			this.modelMove();
+			this.queryCrn();
+			this.crnMove();
 		}
 		this.initScene = function () {
 			this.scene = new THREE.Scene();
@@ -173,20 +179,23 @@
 			// plane.position.y = - 200;
 			// plane.receiveShadow = true;
 			// this.addObject(plane);
-			//
+
 			// const helper = new THREE.PolarGridHelper( 2000, 100 );
+
 			const helper = new THREE.GridHelper( 8000, 300 );
 			helper.position.y = - 0;
 			helper.material.opacity = 0.25;
 			helper.material.transparent = true;
 			this.addObject( helper );
+
+			// this.addObject(new Floor({position: {}}))
 		}
 		this.initStoreObjects = function (object) {
 			if (this.firstTime === 1) {
 				initStore();
 				if (Store3DData !== null) {
 					for(var group of Store3DData.data.store.groups) {
-						let crn = new StoreCrn(group.crn, object);
+						new StoreCrn(group.crn, object);
 						for (var line of group.lines) {
 							let shelf = new StoreShelf(line);
 							object.addObject(shelf);
@@ -206,62 +215,23 @@
 
 						}
 					}
-
-
-
-
-
-
-
-
-
-
-
-
-
-					//鏄剧ず浠撳簱鍖哄煙
-					// for (let i = 0; i < Store3DData.Areas.length; i++) {
-					// 	let optionArea = Store3DData.Areas[i];
-					// 	let area = new StoreArea(optionArea);
-					// 	object.addObject(area);
-					// 	//鏄剧ず浠撳簱
-					// 	for (let j = 0; j < optionArea.Stores.length; j++) {
-					// 		let optionStore = optionArea.Stores[j];
-					// 		optionStore.Position = CommonFunction.transPosition(optionStore.Position, optionArea.Position);
-					// 		let store = new Store(optionStore);
-					// 		// object.addObject(store);
-					// 		//鏄剧ず姣忚淇℃伅
-					// 		for (let k = 0; k < optionStore.Groups.length; k++) {
-					// 			let optionGroup = optionStore.Groups[k];
-					// 			optionGroup.Position = CommonFunction.transPosition(optionGroup.Position, optionStore.Position);
-					// 			let shelf = new StoreShelf(optionGroup);
-					// 			let group=new StoreGroup(optionGroup,1);
-					// 			object.addObject(shelf);
-					// 			// object.addObject(group);
-					// 			//鏄剧ず搴撲綅涓婄殑璐х墿
-					// 			for (let m = 0; m < optionGroup.Bins.length; m++) {
-					// 			    let optionBin = optionGroup.Bins[m];
-					// 			    let existGoods=this.getExistedGoodType(optionBin.State);
-					// 			    let storeGoods = new StoreGoods(optionGroup, optionBin);
-					// 			    if(existGoods==null) {
-					// 			        let goods=storeGoods.create();
-					// 			        object.addObject(goods);
-					// 			        this.goodTypes.push({type: optionBin.State, object: goods});
-					// 			    } else {
-					// 			        let goods= storeGoods.clone(existGoods);
-					// 			        object.addObject(goods);
-					// 			    }
-					// 			}
-					// 		}
-					//
-					// 	}
-					// }
-					this.firstTime = 0;
 				}
 			}
 		}
-		this.initModel0 = function () {
-
+		this.queryCrn = function () {
+			if (CrnDatas !== null) {
+				for (let crnData of CrnDatas) {
+					let crnTask = getArrVal(this.crnTasks, "crnNo", crnData.crnNo);
+					if (null == crnTask) {
+						this.crnTasks.push(new CrnTask(crnData, this));
+					} else {
+						if(!crnTask.run) {
+							// console.log(2)
+							crnTask.modify(crnData);
+						}
+					}
+				}
+			}
 		}
 		this.getExistedGoodType=function(state){
 			for (let i=0;i<this.goodTypes.length;i++) {
@@ -274,84 +244,74 @@
 		}
 		this.initModel = function () {
 			let that = this;
-			// let object;
-			// const onProgress = function ( xhr ) {
-			// 	if ( xhr.lengthComputable ) {
-			// 		const percentComplete = xhr.loaded / xhr.total * 100;
-			// 		console.log( Math.round( percentComplete, 2 ) + '% downloaded' );
-			// 	}
-			// };
-			// const onError = function () { };
-			// function loadModel() {
-			// 	object.traverse( function ( child ) {
-			// 		if ( child.isMesh ) child.material.map = texture;
-			// 	} );
-			// 	object.position.y = 195;
-			// 	that.addObject( object );
-			// }
-			// const manager = new THREE.LoadingManager(loadModel);
-			// const textureLoader = new THREE.TextureLoader( manager );
-			// const texture = textureLoader.load( '../static/model/obj/uv_grid_opengl.jpg' );
-			// const loader = new OBJLoader( manager );
-			// loader.load( '../static/model/obj/AGV.obj', function ( obj ) {
-			// 	object = obj;
-			// }, onProgress, onError );
 			const manager = new THREE.LoadingManager();
 			// manager.addHandler( /\.dds$/i, new DDSLoader() );
-			new MTLLoader(manager)
-				.setPath( '../static/model/obj/' )
-				.load( '璐у弶.mtl', function ( materials ) {
-					materials.preload();
-					new OBJLoader( manager )
-						.setMaterials( materials )
-						.setPath( '../static/model/obj/' )
-						.load( '璐у弶.obj', function ( object ) {
-							object.position.z = -500;
-							object.position.x = -2060;
-							// object.position.z = 0;
-							// object.position.x = 0;
-							// object.position.y = 0;
-							object.scale.set(0.025, 0.025, 0.025);
-							object.rotateY(- Math.PI / 2)
-							that.addObject( object );
-						}, null, null );
-				});
-			new MTLLoader(manager)
-				.setPath( '../static/model/obj/' )
-				.load( '杞借揣鍙�.mtl', function ( materials ) {
-					materials.preload();
-					new OBJLoader( manager )
-						.setMaterials( materials )
-						.setPath( '../static/model/obj/' )
-						.load( '杞借揣鍙�.obj', function ( object ) {
-							object.position.z = -500;
-							object.position.x = -2060;
-							object.scale.set(0.025, 0.025, 0.025);
-							object.rotateY(- Math.PI / 2)
-							that.addObject( object );
-						}, null, null );
-				});
-			new MTLLoader(manager)
-				.setPath( '../static/model/obj/' )
-				.load( '鍫嗗灈鏈烘湰浣�.mtl', function ( materials ) {
-					materials.preload();
-					new OBJLoader( manager )
-						.setMaterials( materials )
-						.setPath( '../static/model/obj/' )
-						.load( '鍫嗗灈鏈烘湰浣�.obj', function ( object ) {
-							object.position.z = -500;
-							object.position.x = -2060;
-							object.scale.set(0.025, 0.025, 0.025);
-							object.rotateY(- Math.PI / 2)
-							that.addObject( object );
-						}, null, null );
-				});
+			// new MTLLoader(manager)
+			// 	.setPath( '../static/model/obj/' )
+			// 	.load( '璐у弶.mtl', function ( materials ) {
+			// 		materials.preload();
+			// 		new OBJLoader( manager )
+			// 			.setMaterials( materials )
+			// 			.setPath( '../static/model/obj/' )
+			// 			.load( '璐у弶.obj', function ( object ) {
+			// 				object.position.z = -480;
+			// 				object.position.x = -1735;
+			// 				object.scale.set(0.03, 0.03, 0.03);
+			// 				object.rotateY(- Math.PI / 2)
+			// 				that.addObject( object );
+			// 			}, null, null );
+			// 	});
+			// new MTLLoader(manager)
+			// 	.setPath( '../static/model/obj/' )
+			// 	.load( '杞借揣鍙�.mtl', function ( materials ) {
+			// 		materials.preload();
+			// 		new OBJLoader( manager )
+			// 			.setMaterials( materials )
+			// 			.setPath( '../static/model/obj/' )
+			// 			.load( '杞借揣鍙�.obj', function ( object ) {
+			// 				object.position.z = -480;
+			// 				object.position.x = -1735;
+			// 				object.scale.set(0.03, 0.03, 0.03);
+			// 				object.rotateY(- Math.PI / 2)
+			// 				that.addObject( object );
+			// 			}, null, null );
+			// 	});
+			// new MTLLoader(manager)
+			// 	.setPath( '../static/model/obj/' )
+			// 	.load( '鍫嗗灈鏈烘湰浣�.mtl', function ( materials ) {
+			// 		materials.preload();
+			// 		new OBJLoader( manager )
+			// 			.setMaterials( materials )
+			// 			.setPath( '../static/model/obj/' )
+			// 			.load( '鍫嗗灈鏈烘湰浣�.obj', function ( object ) {
+			// 				object.position.z = -480;
+			// 				object.position.x = -1735;
+			// 				// object.position.z = 0;
+			// 				// object.position.x = 0;
+			// 				// object.position.y = 0;
+			// 				object.scale.set(0.03, 0.03, 0.03);
+			// 				object.rotateY(- Math.PI / 2)
+			// 				that.addObject( object );
+			// 			}, null, null );
+			// 	});
 		}
-		this.modelMove = function () {
+		this.initModelMove = function () {
+			console.log(this.crnTasks)
+			// for (var wrkMast of this.wrkTasks) {
+			// 	this.crnBody = getArrVal(this.objects, "name", wrkMast.crnNo + "-body");
+			// 	// 鍙栬揣鐐瑰畾浣�
+			// 	let sourceLocPosition = getBinPosition(wrkMast.sourceLocNo);
+			// 	let points = [new THREE.Vector3(this.crnBody.position.x, this.crnBody.position.y, this.crnBody.position.z), sourceLocPosition];
+			// 	this.curve = new Route(points);
+			// }
 
+		}
+		this.crnMove = function (object) {
+			for (let crnTask of this.crnTasks) {
+				crnTask.move();
+			}
 		}
 	},
-
 
 };
 

--
Gitblit v1.9.1