From 4b3467e05cb0e2b68bc3e8ef08827e9e874562c8 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@63.com> Date: 星期一, 13 十二月 2021 10:43:39 +0800 Subject: [PATCH] # --- static/js/object/Route.js | 20 ++++++++++ static/js/app.js | 11 ++++- /dev/null | 10 ----- static/js/data/Task.js | 2 views/index.html | 11 +++++ static/js/object/RouteLine.js | 17 ++++++++ static/js/utils.js | 13 ++++++ static/js/object/StoreCrn.js | 3 + 8 files changed, 72 insertions(+), 15 deletions(-) diff --git a/static/js/app.js b/static/js/app.js index 9b020f1..6af6ee1 100644 --- a/static/js/app.js +++ b/static/js/app.js @@ -14,6 +14,7 @@ this.firstTime = 1; this.stats = null; this.goodTypes=[];//瀛樺偍鎵�鏈夌殑搴撲綅绫诲瀷 + this.wrkNo = 0; this.start = function () { this.initMain(); @@ -37,7 +38,7 @@ this.stats.begin(); this.renderer.render(this.scene, this.camera); this.stats.end(); - this.modelMove(); + // this.modelMove(); } this.initScene = function () { this.scene = new THREE.Scene(); @@ -263,7 +264,9 @@ this.queryTask = function () { if (this.firstTime === 1) { queryTaskCurrent(); - console.log(TaskData); + if (this.wrkNo !== TaskData.wrkNo) { + this.wrkNo = TaskData.wrkNo; + } } } this.getExistedGoodType=function(state){ @@ -351,7 +354,9 @@ }); } this.modelMove = function () { - + // console.log(1) + let crnBody = getArrVal(this.objects, "name", "1-body"); + console.log(crnBody.position) } }, diff --git a/static/js/data/Task.js b/static/js/data/Task.js index 5a46531..cf108a8 100644 --- a/static/js/data/Task.js +++ b/static/js/data/Task.js @@ -8,7 +8,7 @@ data: {}, async: false, success: function (res) { - TaskData = res; + TaskData = res.data; } }) } diff --git a/static/js/object/Route.js b/static/js/object/Route.js new file mode 100644 index 0000000..b27209b --- /dev/null +++ b/static/js/object/Route.js @@ -0,0 +1,20 @@ +/** + * points:[ + {x:-100,y:1,z:50}, + {x:-500,y:1,z:50}, + {x:-800,y:1,z:50}, + {x:-800,y:1,z:420}, + {x:-1400,y:1,z:420}, + {x:-1400,y:1,z:480}, + {x:-100,y:1,z:480}, + {x:-100,y:1,z:50} + ] + */ +function Route(option) { + let curvePoints=[]; + for(let i=0;i<option.points.length;i++) { + let point=option.points[i]; + curvePoints.push(new THREE.Vector3(point.x, point.y, point.z)); + } + return new THREE.CatmullRomCurve3(curvePoints,false/*鏄惁闂悎*/,'catmullrom',0.000000001); +} diff --git a/static/js/object/RouteLine.js b/static/js/object/RouteLine.js new file mode 100644 index 0000000..4056340 --- /dev/null +++ b/static/js/object/RouteLine.js @@ -0,0 +1,17 @@ + +// 灏嗘洸绾挎樉绀哄嚭鏉� +function RouteLine(curve,option) { + let points = curve.getPoints(100); + let geometry = new THREE.Geometry(); + //geometry.vertices = curve.getSpacedPoints(100); + // 鎶婁粠鏇茬嚎杞ㄨ抗涓婅幏寰楃殑椤剁偣鍧愭爣璧嬪�肩粰鍑犱綍浣� + geometry.vertices = points; + var material = new THREE.LineBasicMaterial({ + color: 0x4488ff + }); + let line = new THREE.Line(geometry, material); + line.uuid=option.No; + line.name=option.Name; + line.type="Route"; + return line; +} diff --git a/static/js/object/StoreCrn.js b/static/js/object/StoreCrn.js index 829dd1c..fa10a4c 100644 --- a/static/js/object/StoreCrn.js +++ b/static/js/object/StoreCrn.js @@ -15,6 +15,7 @@ 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; @@ -25,6 +26,7 @@ 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; @@ -35,6 +37,7 @@ 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; diff --git a/static/js/object/baobiao1.html b/static/js/object/baobiao1.html deleted file mode 100644 index 566549b..0000000 --- a/static/js/object/baobiao1.html +++ /dev/null @@ -1,10 +0,0 @@ -<!DOCTYPE html> -<html lang="en"> -<head> - <meta charset="UTF-8"> - <title>Title</title> -</head> -<body> - -</body> -</html> \ No newline at end of file diff --git a/static/js/utils.js b/static/js/utils.js index e69de29..2999835 100644 --- a/static/js/utils.js +++ b/static/js/utils.js @@ -0,0 +1,13 @@ + +function getArrVal(arrObj, key, condition) { + if (!arrObj instanceof Array) { + return null; + } + for (var i = 0;i<arrObj.length;i++) { + let element = arrObj[i]; + if (element[key] === condition) { + return element; + } + } + return null; +} diff --git a/views/index.html b/views/index.html index 9f88b44..7d41ee1 100644 --- a/views/index.html +++ b/views/index.html @@ -8,6 +8,7 @@ <link rel="stylesheet" href="../static/css/main.css"> <script type="text/javascript" src="../static/js/lib/jquery-3.3.1.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/echarts@5.2.2/dist/echarts.min.js"></script> + <script type="text/javascript" src="../static/js/utils.js"></script> <script type="text/javascript" src="../static/js/common.js"></script> <script type="text/javascript" src="../static/js/data/Warehouse.js"></script> <script type="text/javascript" src="../static/js/data/Task.js"></script> @@ -18,9 +19,14 @@ <script type="text/javascript" src="../static/js/object/StoreCrn.js"></script> <script type="text/javascript" src="../static/js/object/StoreShelf.js"></script> <script type="text/javascript" src="../static/js/object/StoreGoods.js"></script> + <script type="text/javascript" src="../static/js/object/Route.js"></script> + <script type="text/javascript" src="../static/js/object/RouteLine.js"></script> <script type="text/javascript" src="../static/js/lib/btnHide.js"></script> </head> <body style="position: relative"> + <div style="position: absolute;top: 0;right: 0"> + <button id="print">鎵撳嵃</button> + </div> <div id="groundglass"></div> <div id="sidebar"> <p1>涓壃-鏅鸿兘绔嬩綋浠撳簱</p1> @@ -59,7 +65,6 @@ </div> </div> <div id="container"></div> - <script type="module"> import * as THREE from '../static/js/three.module.js'; @@ -75,6 +80,10 @@ // player.setSize( window.innerWidth, window.innerHeight ); // } ); + document.getElementById("print").addEventListener('click', function () { + console.log(player.objects); + player.modelMove(); + }, false); </script> <script type="text/javascript"> -- Gitblit v1.9.1