From cc6d5f5fb6bbb23e88a95752a6e5265323d1c7d9 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@63.com> Date: 星期五, 17 十二月 2021 09:00:03 +0800 Subject: [PATCH] # --- static/js/app.js | 68 +++++++++++++++++++++++----------- 1 files changed, 46 insertions(+), 22 deletions(-) diff --git a/static/js/app.js b/static/js/app.js index 796ffe3..d21848e 100644 --- a/static/js/app.js +++ b/static/js/app.js @@ -15,7 +15,9 @@ this.stats = null; this.goodTypes=[];//瀛樺偍鎵�鏈夌殑搴撲綅绫诲瀷 this.wrkTasks = [];// 浠诲姟鍒楄〃 + this.crnTasks = [];// 鍫嗗灈鏈哄垪琛� this.time = 0;//鏍囪鍫嗗灈鏈鸿繍琛岀殑鏃堕棿 + this.progress = 0; this.start = function () { this.initMain(); @@ -38,8 +40,10 @@ this.stats.begin(); this.renderer.render(this.scene, this.camera); this.stats.end(); - this.queryTask(); + // this.queryTask(); + this.queryCrn(); // this.modelMove(); + this.crnMove(); } this.initScene = function () { this.scene = new THREE.Scene(); @@ -188,7 +192,7 @@ 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); @@ -272,6 +276,21 @@ } } } + 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++) { let type=this.goodTypes[i]; @@ -350,6 +369,9 @@ .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 ); @@ -357,30 +379,32 @@ }); } this.initModelMove = function () { - console.log(this.wrkTasks) - for (var wrkMast of this.wrkTasks) { - let crnBody = getArrVal(this.objects, "name", wrkMast.crnNo + "-body"); - console.log(crnBody) - // 鍙栬揣鐐瑰畾浣� - let sourceLocPosition = getBinPosition(wrkMast.sourceLocNo); - let points = [crnBody.position, sourceLocPosition]; - this.curve = new Route(points); - console.log(this.curve); - } + 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.modelMove = function () { if (this.curve) { - this.time = this.time + 1; - let points = this.curve.getPoints(2000); - let point = points[this.time]; - let point1 = points[this.time+1]; - if(this.time >= 2000) { - this.time = 0; + this.progress += 0.001; + if (this.progress>1.0) { + this.curve = null; + } else { + let point = this.curve.getPoint(this.progress); + if(point&&point.x){ + this.crnBody.position.set(point.x,point.y,point.z); + } } - if(point&&point.x){ - this.AgvCar.position.set(point.x,40,point.z); - this.AgvCar.lookAt(point1.x,40,point1.z); - } + } + } + this.crnMove = function (object) { + for (let crnTask of this.crnTasks) { + crnTask.move(); } } }, -- Gitblit v1.9.1