From 6246e243f2f644989acaff255f407900fd51f9f7 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@63.com> Date: 星期五, 24 十二月 2021 16:51:47 +0800 Subject: [PATCH] # --- static/js/object/StoreConvey.js | 132 +++++++++++++------------------------------ 1 files changed, 40 insertions(+), 92 deletions(-) diff --git a/static/js/object/StoreConvey.js b/static/js/object/StoreConvey.js index f01560d..2548bce 100644 --- a/static/js/object/StoreConvey.js +++ b/static/js/object/StoreConvey.js @@ -1,109 +1,57 @@ import {MTLLoader} from "../lib/MTLLoader.js"; import {OBJLoader} from "../lib/OBJLoader.js"; -import {Color} from "../three.module.js"; +import * as THREE from '../three.module.js'; -const xOffset = 35; -const yOffset = 44; -const zOffset = 28; - -const xOffset0 = -1407; -const yOffset0 = 0; -const zOffset0 = 490; function StoreConvey(object) { + let that = this; + that.no = 0; + that.objectType = null; + that.position = null; - const manager = new THREE.LoadingManager(); + let init = function () { + that.no = object.no; + that.objectType = object.objectType; + that.position = object.position; + }; + init(); - let chain = 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 ( obj ) { - chain = obj; - chain.scale.set(0.03, 0.03, 0.025); - chain.rotateY( -Math.PI / 2); - chain.traverse (function (child) { + that.create = function (scene) { + switch (that.objectType) { + case "chain": + new THREE.ObjectLoader().load( "../static/model/json/閾炬潯杈撻�佹満.json", function (obj) { + obj.traverse (function (child) { if (child instanceof THREE.Mesh) { + child.scale.set(1, 1, 1.8); child.material = new THREE.MeshLambertMaterial({ color: 0xAAAAAA }); } }); + obj.position.x = 0 + that.position.x; + obj.position.y = 0 + that.position.y; + obj.position.z = 0 + that.position.z; + scene.addObject( obj ); + scene.conveyTypes.push({type: that.objectType, object: obj}); + } ); + break; + case "roller": + break; + case "transport": + break; + default: + break; + } + } - for (let i = 0; i<24; i++) { - let clone = chain.clone(); - // roller.name = option.crnNo + "-body"; - let offset = 0; - if (i % 2 === 0) { - offset = 90; - } - clone.position.x = xOffset0 + 56 + offset + Math.floor(i/2)*230; - clone.position.y = yOffset0; - clone.position.z = zOffset0 + 39; - object.addObject( clone ); - } - - for (let i = 0; i<24; i++) { - let clone = chain.clone(); - // roller.name = option.crnNo + "-body"; - let offset = 0; - if (i % 2 === 0) { - offset = 90; - } - clone.position.x = xOffset0 + 56 + offset + Math.floor(i/2)*230; - clone.position.y = yOffset0; - clone.position.z = zOffset0 + 39 + 82; - object.addObject( clone ); - } - - for (let i = 0; i<24; i++) { - var clone = chain.clone(); - // roller.name = option.crnNo + "-body"; - let offset = 0; - if (i % 2 === 0) { - offset = 90; - } - clone.position.x = xOffset0 + 56 + offset + Math.floor(i/2)*230; - clone.position.y = yOffset0 + 310; - clone.position.z = zOffset0 + 39; - object.addObject( clone ); - } - - }, null, null ); - }); - - let roller = null; - new MTLLoader(manager) - .setPath( '../static/model/obj/' ) - .load( '123.mtl', function ( materials ) { - materials.preload(); - new OBJLoader( manager ) - .setMaterials( materials ) - .setPath( '../static/model/obj/' ) - .load( '123.obj', function ( obj ) { - roller = obj; - roller.traverse (function (child) { - if (child instanceof THREE.Mesh) { - child.material = new THREE.MeshLambertMaterial({ - color: 0xAAAAAA - }); - } - }); - - roller.scale.set(55, 45, 55); - // roller.rotateY(- Math.PI / 2); - // roller.name = option.crnNo + "-body"; - roller.position.x = xOffset + 60; - roller.position.y = yOffset; - roller.position.z = zOffset + 140; - // object.addObject( roller ); - - }, null, null ); - }); + this.clone = function (param) { + let goods=param.clone(); + goods.position.set(this.positionX,this.positionY,this.positionZ); + goods.uuid=this.no; + goods.name=this.name; + goods.type="StoreGoods"; + return goods; + } } -- Gitblit v1.9.1