Merge branch 'test' of https://git.code.tencent.com/lian-cbtc/jl-client into test
@ -68,7 +68,6 @@ export function Jlmap3ddata(mapid,scope){
|
||||
//
|
||||
jlmap3ddata.raillist = new RailList();
|
||||
jlmap3ddata.raillist.setrail();
|
||||
console.log(mapdata);
|
||||
assetloader.assetinit(scene)
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
@ -100,7 +99,6 @@ export function Jlmap3ddata(mapid,scope){
|
||||
console.log(netdata);
|
||||
// console.log(netdata)
|
||||
getMapDetail(mapid).then(data => {
|
||||
console.log(data);
|
||||
jlmap3ddata.id = netdata.id;
|
||||
jlmap3ddata.mapId = mapid;
|
||||
let mapdata = data.data;
|
||||
@ -121,7 +119,7 @@ export function Jlmap3ddata(mapid,scope){
|
||||
let signaldata = JSON.parse(netdata.signals);
|
||||
let standsdata = JSON.parse(netdata.stands);
|
||||
// console.log(mapdata);
|
||||
assetloader.setmodellist(netdata.assets,5);
|
||||
assetloader.setmodellistnew(netdata.assets,5);
|
||||
assetloader.assetpromise(scene)
|
||||
.then(function(data){
|
||||
// return jlmap3ddata.stationstandlist.initpromise(jlmap3ddata,mapdata.stationList,mapdata.stationStandList,scene,assetloader);
|
||||
|
@ -148,6 +148,7 @@ export function getmodels(data) {
|
||||
position:data.mapdata.stationstandlist.list[i].mesh.position,
|
||||
rotation:data.mapdata.stationstandlist.list[i].mesh.rotation,
|
||||
scale:data.mapdata.stationstandlist.list[i].mesh.scale,
|
||||
inside:data.mapdata.stationstandlist.list[i].inside,
|
||||
direction1:{
|
||||
name:data.mapdata.stationstandlist.list[i].direction1.name,
|
||||
code:data.mapdata.stationstandlist.list[i].direction1.code
|
||||
|
@ -873,7 +873,6 @@ export function SectionList() {
|
||||
autorail.leftlist = leftlist;
|
||||
scene.add(scope.sectiongroup);
|
||||
return new Promise(function(resolve, reject){
|
||||
console.log(sectiondata);
|
||||
for(let i=0,leni = sectiondata.length;i<leni;i++){
|
||||
let newsection = {
|
||||
code:sectiondata[i].code,
|
||||
|
@ -29,10 +29,8 @@ export function SignalList() {
|
||||
}
|
||||
}
|
||||
for(let i=0;i<data.length;i++){
|
||||
console.log(data[i]);
|
||||
if(data[i].virtual == false){
|
||||
let newsignal = new SignalModel(data[i]);
|
||||
console.log();
|
||||
if(haddata == false){
|
||||
// console.log(data[i])
|
||||
let newmesh = assetloader.modellist[num].mesh.clone(true);
|
||||
@ -132,8 +130,6 @@ export function SignalList() {
|
||||
|
||||
this.loadpromise = function(signaldata,scene,assetloader,data){
|
||||
return new Promise(function(resolve, reject){
|
||||
console.log("+++++++++++++++++++++++++++++++++++++");
|
||||
console.log(signaldata);
|
||||
let num;
|
||||
for(let j=0;j<assetloader.modellist.length;j++){
|
||||
if(assetloader.modellist[j].id == signaldata[0].modelid){
|
||||
@ -177,7 +173,6 @@ export function SignalList() {
|
||||
}
|
||||
|
||||
}
|
||||
console.log(scope.group.children);
|
||||
scene.add(scope.group);
|
||||
resolve("loadedsignal");
|
||||
});
|
||||
|
@ -157,10 +157,14 @@ export function StationStandList() {
|
||||
}
|
||||
this.loadpromise = function(jlmap3ddata,standsdata,jlmapstanddata,scene,assetloader){
|
||||
return new Promise(function(resolve, reject){
|
||||
|
||||
console.log("............");
|
||||
console.log(jlmap3ddata);
|
||||
console.log(standsdata);
|
||||
console.log(jlmapstanddata);
|
||||
let stations = jlmap3ddata.stationstandlist.list;
|
||||
let num;
|
||||
let num2;
|
||||
let num3;
|
||||
for(let j=0;j<assetloader.modellist.length;j++){
|
||||
if(assetloader.modellist[j].deviceType == "stand"){
|
||||
num = j;
|
||||
@ -169,6 +173,10 @@ export function StationStandList() {
|
||||
num2 = j;
|
||||
// assetloader.modellist[num2].mesh.rotation.y = Math.PI/2;
|
||||
}
|
||||
if(assetloader.modellist[j].deviceType == "station3"){
|
||||
num3 = j;
|
||||
// assetloader.modellist[num2].mesh.rotation.y = Math.PI/2;
|
||||
}
|
||||
}
|
||||
// console.log("+++++++++++++");
|
||||
// console.log(jlmapstanddata);
|
||||
@ -177,11 +185,13 @@ export function StationStandList() {
|
||||
let newstationstand = new StationStandModel(standsdata[i]);
|
||||
let newstationmesh;
|
||||
for(let j=0;j<jlmapstanddata.length;j++){
|
||||
|
||||
|
||||
if(jlmapstanddata[j].code == standsdata[i].direction1.code){
|
||||
if(standsdata[i].code != "Station96090"){
|
||||
if(jlmapstanddata[j].inside == true){
|
||||
newstationmesh = assetloader.modellist[num].mesh.clone(true);
|
||||
}else{
|
||||
console.log(jlmapstanddata[j]);
|
||||
newstationmesh = assetloader.modellist[num2].mesh.clone(true);
|
||||
}
|
||||
// console.log(jlmapstanddata[j]);
|
||||
@ -191,6 +201,7 @@ export function StationStandList() {
|
||||
newstationstand.direction1.name = standsdata[i].direction1.name;
|
||||
newstationstand.direction2.code = standsdata[i].direction2.code;
|
||||
newstationstand.direction2.name = standsdata[i].direction2.name;
|
||||
newstationstand.inside = jlmapstanddata[j].inside;
|
||||
// console.log(standsdata[i]);
|
||||
newstationmesh.position.x = standsdata[i].position.x;
|
||||
newstationmesh.position.y = standsdata[i].position.y;
|
||||
@ -202,6 +213,32 @@ export function StationStandList() {
|
||||
scope.group.add(newstationmesh);
|
||||
scope.list.push(newstationstand);
|
||||
j = jlmapstanddata.length;
|
||||
}else{
|
||||
if(jlmapstanddata[j].code == standsdata[i].direction1.code){
|
||||
|
||||
newstationmesh = assetloader.modellist[num3].mesh.clone(true);
|
||||
// console.log(jlmapstanddata[j]);
|
||||
newstationstand.code = standsdata[i].code;
|
||||
newstationstand.name = standsdata[i].name;
|
||||
newstationstand.direction1.code = standsdata[i].direction1.code;
|
||||
newstationstand.direction1.name = standsdata[i].direction1.name;
|
||||
newstationstand.direction2.code = standsdata[i].direction2.code;
|
||||
newstationstand.direction2.name = standsdata[i].direction2.name;
|
||||
newstationstand.inside = jlmapstanddata[j].inside;
|
||||
// console.log(standsdata[i]);
|
||||
newstationmesh.position.x = standsdata[i].position.x;
|
||||
newstationmesh.position.y = standsdata[i].position.y;
|
||||
newstationmesh.position.z = standsdata[i].position.z;
|
||||
// newstationmesh.rotation.x = standsdata[i].rotation._x;
|
||||
// newstationmesh.rotation.y = standsdata[i].rotation._y;
|
||||
// newstationmesh.rotation.z = standsdata[i].rotation._z;
|
||||
newstationstand.mesh = newstationmesh;
|
||||
scope.group.add(newstationmesh);
|
||||
scope.list.push(newstationstand);
|
||||
j = jlmapstanddata.length;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -90,7 +90,6 @@ export function SwitchList() {
|
||||
|
||||
}
|
||||
|
||||
console.log(scope.switchs.modellist);
|
||||
resolve("loadedswitch");
|
||||
});
|
||||
|
||||
|
@ -74,6 +74,8 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
this.assetloader = new AssetLoader();
|
||||
// 替换材质组,例:信号机不同灯光
|
||||
this.materiallist = [];
|
||||
//替换材质组(站台的)
|
||||
this.stationtexture = [];
|
||||
// 初始化场景线框和灯光 暂时
|
||||
SetLights(scene);
|
||||
// 点击选中的模型
|
||||
@ -138,7 +140,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
|
||||
// controls3.getObject().rotation.x = Math.PI/2;
|
||||
scene.add(controls3.getObject());
|
||||
|
||||
let cameracctv = new THREE.PerspectiveCamera(70, dom.clientWidth/dom.clientHeight, 1, 50);
|
||||
let cameracctv = new THREE.PerspectiveCamera(60, dom.clientWidth/dom.clientHeight, 1, 40);
|
||||
cameracctv.position.set( 2, -1,27 );
|
||||
|
||||
cameracctv.rotation.y = Math.PI/2;
|
||||
|
@ -365,38 +365,18 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,sta
|
||||
function traindoorupdate(data){
|
||||
|
||||
if(trainmodel.code == data.code){
|
||||
|
||||
if(data.doorCode == "0"){
|
||||
if(trainmodel.right == "0"){
|
||||
if(data.doorCode == "2"){
|
||||
|
||||
if(trainmodel.open != data.open && data.open == "0"){
|
||||
trainmodel.open = "0";
|
||||
for(let an=actions["traindoor"].down.length-1;an>=0;an--){
|
||||
actions["traindoor"].down[an].reset();
|
||||
actions["traindoor"].down[an].time = actions["traindoor"].top[an]._clip.duration;
|
||||
actions["traindoor"].down[an].timeScale = -1;
|
||||
actions["traindoor"].down[an].play();
|
||||
}
|
||||
}else if(trainmodel.open != data.open && data.open == "1"){
|
||||
trainmodel.open = "1";
|
||||
for(let an=actions["traindoor"].down.length-1;an>=0;an--){
|
||||
actions["traindoor"].down[an].reset();
|
||||
actions["traindoor"].down[an].time = 0;
|
||||
actions["traindoor"].down[an].timeScale = 1;
|
||||
actions["traindoor"].down[an].play();
|
||||
}
|
||||
}
|
||||
}else{
|
||||
|
||||
|
||||
if (trainmodel.open != data.open && data.open == '0') {
|
||||
trainmodel.open = '0';
|
||||
for (let an=actions["traindoor"].top.length-1; an>=0; an--) {
|
||||
for(let an=actions["traindoor"].top.length-1;an>=0;an--){
|
||||
actions["traindoor"].top[an].reset();
|
||||
actions["traindoor"].top[an].time = actions["traindoor"].top[an]._clip.duration;
|
||||
actions["traindoor"].top[an].timeScale = -1;
|
||||
actions["traindoor"].top[an].play();
|
||||
}
|
||||
} else if (trainmodel.open != data.open && data.open == '1') {
|
||||
}else if(trainmodel.open != data.open && data.open == "1"){
|
||||
trainmodel.open = "1";
|
||||
for(let an=actions["traindoor"].top.length-1;an>=0;an--){
|
||||
actions["traindoor"].top[an].reset();
|
||||
@ -405,8 +385,72 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,sta
|
||||
actions["traindoor"].top[an].play();
|
||||
}
|
||||
}
|
||||
}else{
|
||||
|
||||
|
||||
if (trainmodel.open != data.open && data.open == '0') {
|
||||
trainmodel.open = '0';
|
||||
for (let an=actions["traindoor"].down.length-1; an>=0; an--) {
|
||||
actions["traindoor"].down[an].reset();
|
||||
actions["traindoor"].down[an].time = actions["traindoor"].down[an]._clip.duration;
|
||||
actions["traindoor"].down[an].timeScale = -1;
|
||||
actions["traindoor"].down[an].play();
|
||||
}
|
||||
} else if (trainmodel.open != data.open && data.open == '1') {
|
||||
trainmodel.open = "1";
|
||||
for(let an=actions["traindoor"].down.length-1;an>=0;an--){
|
||||
actions["traindoor"].down[an].reset();
|
||||
actions["traindoor"].down[an].time = 0;
|
||||
actions["traindoor"].down[an].timeScale = 1;
|
||||
actions["traindoor"].down[an].play();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}else{
|
||||
if(data.doorCode == "1"){
|
||||
|
||||
if(trainmodel.open != data.open && data.open == "0"){
|
||||
trainmodel.open = "0";
|
||||
for(let an=actions["traindoor"].top.length-1;an>=0;an--){
|
||||
actions["traindoor"].top[an].reset();
|
||||
actions["traindoor"].top[an].time = actions["traindoor"].top[an]._clip.duration;
|
||||
actions["traindoor"].top[an].timeScale = -1;
|
||||
actions["traindoor"].top[an].play();
|
||||
}
|
||||
}else if(trainmodel.open != data.open && data.open == "1"){
|
||||
trainmodel.open = "1";
|
||||
for(let an=actions["traindoor"].top.length-1;an>=0;an--){
|
||||
actions["traindoor"].top[an].reset();
|
||||
actions["traindoor"].top[an].time = 0;
|
||||
actions["traindoor"].top[an].timeScale = 1;
|
||||
actions["traindoor"].top[an].play();
|
||||
}
|
||||
}
|
||||
}else{
|
||||
|
||||
|
||||
if (trainmodel.open != data.open && data.open == '0') {
|
||||
trainmodel.open = '0';
|
||||
for (let an=actions["traindoor"].down.length-1; an>=0; an--) {
|
||||
actions["traindoor"].down[an].reset();
|
||||
actions["traindoor"].down[an].time = actions["traindoor"].down[an]._clip.duration;
|
||||
actions["traindoor"].down[an].timeScale = -1;
|
||||
actions["traindoor"].down[an].play();
|
||||
}
|
||||
} else if (trainmodel.open != data.open && data.open == '1') {
|
||||
trainmodel.open = "1";
|
||||
for(let an=actions["traindoor"].down.length-1;an>=0;an--){
|
||||
actions["traindoor"].down[an].reset();
|
||||
actions["traindoor"].down[an].time = 0;
|
||||
actions["traindoor"].down[an].timeScale = 1;
|
||||
actions["traindoor"].down[an].play();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
@ -150,7 +150,7 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
if(trainlisttest.list[code].dispose == "0"){
|
||||
if(trainlisttest.list[code].curve == null){
|
||||
if (data.right == '1') { // 向右
|
||||
|
||||
trainlisttest.list[code].right = '1';
|
||||
trainlisttest.list[code].progress = data.offset;
|
||||
trainlisttest.list[code].isstandsection = rails.sectionrail[data.section].standTrack;
|
||||
if(rails.sectionrail[data.section].standTrack){
|
||||
@ -175,6 +175,7 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
trainlisttest.list[code].status = '1';
|
||||
|
||||
} else if (data.right == '0') { // 向左
|
||||
trainlisttest.list[code].right = '0';
|
||||
trainlisttest.list[code].progress = 1-data.offset;
|
||||
trainlisttest.list[code].isstandsection = rails.sectionrail[data.section].standTrack;
|
||||
if(rails.sectionrail[data.section].standTrack){
|
||||
@ -205,6 +206,7 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
//后端数据驱动车的位置更新与代码驱动车的移动相结合
|
||||
if(data.code != trainlisttest.list[code].code){
|
||||
if (data.right == '1') { // 向右
|
||||
trainlisttest.list[code].right = '1';
|
||||
trainlisttest.list[code].nowcode = data.code;
|
||||
trainlisttest.list[code].curve = rails.sectionrail[data.section].lineleft;
|
||||
trainlisttest.list[code].progress = data.offset;
|
||||
@ -213,6 +215,7 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
trainlisttest.list[code].nextlen = rails.sectionrail[data.next].lengthfact;
|
||||
trainlisttest.list[code].nextissection = rails.sectionrail[data.next].standTrack;
|
||||
} else if (data.right == '0') { // 向左
|
||||
trainlisttest.list[code].right = '0';
|
||||
trainlisttest.list[code].nowcode = data.code;
|
||||
trainlisttest.list[code].curve = rails.sectionrail[data.section].lineright;
|
||||
trainlisttest.list[code].progress = 1-data.offset;
|
||||
@ -251,7 +254,6 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
}
|
||||
|
||||
function DeviceDestroy(data){
|
||||
console.log(data);
|
||||
for(let i=0,leni=data.body.length;i<leni;i++){
|
||||
|
||||
if(data.body[i].type == "TRAIN"){
|
||||
@ -311,35 +313,18 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
|
||||
function traindoorupdate(data){
|
||||
let code = data.code;
|
||||
if(data.doorCode == "0"){
|
||||
if(trainlisttest.list[code].right == "0"){
|
||||
if(data.doorCode == "2"){
|
||||
|
||||
if(trainlisttest.list[code].open != data.open && data.open == "0"){
|
||||
trainlisttest.list[code].open = "0";
|
||||
for(let an=actions[code].down.length-1;an>=0;an--){
|
||||
actions[code].down[an].reset();
|
||||
actions[code].down[an].time = actions[code].top[an]._clip.duration;
|
||||
actions[code].down[an].timeScale = -1;
|
||||
actions[code].down[an].play();
|
||||
}
|
||||
}else if(trainlisttest.list[code].open != data.open && data.open == "1"){
|
||||
trainlisttest.list[code].open = "1";
|
||||
for(let an=actions[code].down.length-1;an>=0;an--){
|
||||
actions[code].down[an].reset();
|
||||
actions[code].down[an].time = 0;
|
||||
actions[code].down[an].timeScale = 1;
|
||||
actions[code].down[an].play();
|
||||
}
|
||||
}
|
||||
}else{
|
||||
if (trainlisttest.list[code].open != data.open && data.open == '0') {
|
||||
trainlisttest.list[code].open = '0';
|
||||
for (let an=actions[code].top.length-1; an>=0; an--) {
|
||||
for(let an=actions[code].top.length-1;an>=0;an--){
|
||||
actions[code].top[an].reset();
|
||||
actions[code].top[an].time = actions[code].top[an]._clip.duration;
|
||||
actions[code].top[an].timeScale = -1;
|
||||
actions[code].top[an].play();
|
||||
}
|
||||
} else if (trainlisttest.list[code].open != data.open && data.open == '1') {
|
||||
}else if(trainlisttest.list[code].open != data.open && data.open == "1"){
|
||||
trainlisttest.list[code].open = "1";
|
||||
for(let an=actions[code].top.length-1;an>=0;an--){
|
||||
actions[code].top[an].reset();
|
||||
@ -348,7 +333,70 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
|
||||
actions[code].top[an].play();
|
||||
}
|
||||
}
|
||||
}else{
|
||||
|
||||
|
||||
if (trainlisttest.list[code].open != data.open && data.open == '0') {
|
||||
trainlisttest.list[code].open = '0';
|
||||
for (let an=actions[code].down.length-1; an>=0; an--) {
|
||||
actions[code].down[an].reset();
|
||||
actions[code].down[an].time = actions[code].down[an]._clip.duration;
|
||||
actions[code].down[an].timeScale = -1;
|
||||
actions[code].down[an].play();
|
||||
}
|
||||
} else if (trainlisttest.list[code].open != data.open && data.open == '1') {
|
||||
trainlisttest.list[code].open = "1";
|
||||
for(let an=actions[code].down.length-1;an>=0;an--){
|
||||
actions[code].down[an].reset();
|
||||
actions[code].down[an].time = 0;
|
||||
actions[code].down[an].timeScale = 1;
|
||||
actions[code].down[an].play();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}else{
|
||||
if(data.doorCode == "1"){
|
||||
|
||||
if(trainlisttest.list[code].open != data.open && data.open == "0"){
|
||||
trainlisttest.list[code].open = "0";
|
||||
for(let an=actions[code].top.length-1;an>=0;an--){
|
||||
actions[code].top[an].reset();
|
||||
actions[code].top[an].time = actions[code].top[an]._clip.duration;
|
||||
actions[code].top[an].timeScale = -1;
|
||||
actions[code].top[an].play();
|
||||
}
|
||||
}else if(trainlisttest.list[code].open != data.open && data.open == "1"){
|
||||
trainlisttest.list[code].open = "1";
|
||||
for(let an=actions[code].top.length-1;an>=0;an--){
|
||||
actions[code].top[an].reset();
|
||||
actions[code].top[an].time = 0;
|
||||
actions[code].top[an].timeScale = 1;
|
||||
actions[code].top[an].play();
|
||||
}
|
||||
}
|
||||
}else{
|
||||
|
||||
|
||||
if (trainlisttest.list[code].open != data.open && data.open == '0') {
|
||||
trainlisttest.list[code].open = '0';
|
||||
for (let an=actions[code].down.length-1; an>=0; an--) {
|
||||
actions[code].down[an].reset();
|
||||
actions[code].down[an].time = actions[code].down[an]._clip.duration;
|
||||
actions[code].down[an].timeScale = -1;
|
||||
actions[code].down[an].play();
|
||||
}
|
||||
} else if (trainlisttest.list[code].open != data.open && data.open == '1') {
|
||||
trainlisttest.list[code].open = "1";
|
||||
for(let an=actions[code].down.length-1;an>=0;an--){
|
||||
actions[code].down[an].reset();
|
||||
actions[code].down[an].time = 0;
|
||||
actions[code].down[an].timeScale = 1;
|
||||
actions[code].down[an].play();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -56,13 +56,15 @@ export function JLmap3d(dom, data,skinCode,storemod,routegroup,project) {
|
||||
//定义镜头操作
|
||||
let controls = new THREE.OrbitControls(camera);
|
||||
controls.maxPolarAngle = Math.PI/2;
|
||||
controls.screenSpacePanning = true;
|
||||
// controls.screenSpacePanning = true;
|
||||
//controls.minPolarAngle = Math.PI/8;
|
||||
controls.maxDistance = 2000;
|
||||
controls.maxDistance = 1000;
|
||||
//模型加载器
|
||||
this.assetloader = new AssetLoader();
|
||||
//替换材质组,例:信号机不同灯光
|
||||
this.materiallist = [];
|
||||
//替换材质组(站台的)
|
||||
this.stationtexture = [];
|
||||
//初始化场景线框和灯光 暂时
|
||||
SetLights(scene);
|
||||
//点击选中的模型
|
||||
|
@ -37,7 +37,7 @@ let defaultstation = {
|
||||
type:"num4",
|
||||
picUrl:"",
|
||||
assetUrl:"../../static/model/station/fuzhou.FBX"
|
||||
}//modelurl+"/station/fuzhou/fuzhou.FBX"
|
||||
}//"../../static/model/station/fuzhou/fuzhou.FBX"
|
||||
let waicestation = {
|
||||
id:"10",
|
||||
name:"外侧车站",
|
||||
@ -46,15 +46,15 @@ let waicestation = {
|
||||
picUrl:"",
|
||||
assetUrl:"../../static/model/station/waicestation.FBX"
|
||||
}
|
||||
let defaulttopstation = {
|
||||
id:"104",
|
||||
name:"福州车站1",
|
||||
deviceType:"topstand",
|
||||
type:"num5",
|
||||
let station3 = {
|
||||
id:"10000",
|
||||
name:"三站台",
|
||||
deviceType:"station3",
|
||||
type:"num4",
|
||||
picUrl:"",
|
||||
assetUrl:modelurl+"/station/fuzhou/topstation.FBX"
|
||||
assetUrl:"../../static/model/station/station3.FBX"
|
||||
}
|
||||
//modelurl+"/station/fuzhou/fuzhou.FBX"
|
||||
//"../../static/model/station/fuzhou/fuzhou.FBX"
|
||||
//https://test.joylink.club/oss/station/fuzhou/fuzhou.FBX
|
||||
//https://joylink.club/oss/station/fuzhou/fuzhou.FBX
|
||||
//../../static/model/station/zhantai715(2).FBX
|
||||
@ -65,17 +65,9 @@ let defaultswitch = {
|
||||
deviceType:"switch",
|
||||
type:"fuzhou",
|
||||
picUrl:"",
|
||||
assetUrl:modelurl+"/daocha/daocha.FBX"
|
||||
assetUrl:"../../static/model/daocha/daocha.FBX"
|
||||
}
|
||||
|
||||
let defaultdriver = {
|
||||
id:"15",
|
||||
name:"驾驶台",
|
||||
deviceType:"driver",
|
||||
type:"driver",
|
||||
picUrl:"",
|
||||
assetUrl:modelurl+"/driver/driver.FBX"
|
||||
}
|
||||
|
||||
let defaultsuidao = {
|
||||
id:"16",
|
||||
@ -83,7 +75,16 @@ let defaultsuidao = {
|
||||
deviceType:"suidao",
|
||||
type:"suidao",
|
||||
picUrl:"",
|
||||
assetUrl:modelurl+"/suidao/suidao.FBX"
|
||||
assetUrl:"../../static/model/suidao/suidao.FBX"
|
||||
}
|
||||
|
||||
let hebsuidao = {
|
||||
id:"1010",
|
||||
name:"hebsuidao",
|
||||
deviceType:"hebsuidao",
|
||||
type:"hebsuidao",
|
||||
picUrl:"",
|
||||
assetUrl:"../../static/model/suidao/hebsuidao.FBX"
|
||||
}
|
||||
|
||||
let defaultbackground = {
|
||||
@ -92,9 +93,9 @@ let defaultbackground = {
|
||||
deviceType:"background",
|
||||
type:"background",
|
||||
picUrl:"",
|
||||
assetUrl:modelurl+"/suidao/background.FBX"
|
||||
assetUrl:"../../static/model/suidao/background.FBX"
|
||||
}
|
||||
//modelurl+"/suidao/suidao.FBX"
|
||||
//"../../static/model/suidao/suidao.FBX"
|
||||
//https://test.joylink.club/oss/suidao/suidao.FBX
|
||||
//https://joylink.club/oss/suidao/suidao.FBX
|
||||
//../../static/model/suidao/suidao.FBX
|
||||
@ -108,15 +109,6 @@ let defaultautorail = {
|
||||
assetUrl:"../../static/model/auto/rail.FBX"
|
||||
}
|
||||
|
||||
let defaultautosuidao = {
|
||||
id:"101",
|
||||
name:"autosuidao",
|
||||
deviceType:"autosuidao",
|
||||
type:"autosuidao",
|
||||
picUrl:"",
|
||||
assetUrl:"../../static/model/auto/suidao.FBX"
|
||||
}
|
||||
|
||||
let autoswitch = {
|
||||
id:"104",
|
||||
name:"道岔",
|
||||
@ -132,7 +124,7 @@ let autoswitch1 = {
|
||||
deviceType:"autoswitch1",
|
||||
type:"fuzhou",
|
||||
picUrl:"",
|
||||
assetUrl:modelurl+"/auto/switch1.FBX"
|
||||
assetUrl:"../../static/model/auto/switch1.FBX"
|
||||
}
|
||||
|
||||
let autoswitch2 = {
|
||||
@ -141,7 +133,7 @@ let autoswitch2 = {
|
||||
deviceType:"autoswitch2",
|
||||
type:"fuzhou",
|
||||
picUrl:"",
|
||||
assetUrl:modelurl+"/auto/switch2.FBX"
|
||||
assetUrl:"../../static/model/auto/switch2.FBX"
|
||||
}
|
||||
|
||||
export function AssetLoader(){
|
||||
@ -160,7 +152,6 @@ export function AssetLoader(){
|
||||
if(trainoffset){
|
||||
scope.trainoffset = trainoffset;
|
||||
}
|
||||
// console.log("setmodellist");
|
||||
let defaultmodel1 = new AssetModel(defaultsignal);
|
||||
scope.modellist.push(defaultmodel1);
|
||||
|
||||
@ -170,17 +161,10 @@ export function AssetLoader(){
|
||||
let station = new AssetModel(defaultstation);
|
||||
scope.modellist.push(station);
|
||||
|
||||
let wstation = new AssetModel(waicestation);
|
||||
scope.modellist.push(wstation);
|
||||
// let topstation = new AssetModel(defaulttopstation);
|
||||
// scope.modellist.push(topstation);
|
||||
|
||||
// let driver = new AssetModel(defaultdriver);
|
||||
// scope.modellist.push(driver);
|
||||
|
||||
let suidao = new AssetModel(defaultsuidao);
|
||||
scope.modellist.push(suidao);
|
||||
|
||||
|
||||
let background = new AssetModel(defaultbackground);
|
||||
scope.modellist.push(defaultbackground);
|
||||
|
||||
@ -215,6 +199,58 @@ export function AssetLoader(){
|
||||
|
||||
}
|
||||
|
||||
this.setmodellistnew = function (data,trainoffset){
|
||||
if(trainoffset){
|
||||
scope.trainoffset = trainoffset;
|
||||
}
|
||||
let defaultmodel1 = new AssetModel(defaultsignal);
|
||||
scope.modellist.push(defaultmodel1);
|
||||
|
||||
let defaultmodel2 = new AssetModel(defaulttrain);
|
||||
scope.modellist.push(defaultmodel2);
|
||||
|
||||
let station = new AssetModel(defaultstation);
|
||||
scope.modellist.push(station);
|
||||
|
||||
let wstation = new AssetModel(waicestation);
|
||||
scope.modellist.push(wstation);
|
||||
|
||||
let s3 = new AssetModel(station3);
|
||||
scope.modellist.push(s3);
|
||||
|
||||
let hebsd = new AssetModel(hebsuidao);
|
||||
scope.modellist.push(hebsd);
|
||||
|
||||
let defaultswitch1 = new AssetModel(autoswitch1);
|
||||
scope.modellist.push(defaultswitch1);
|
||||
|
||||
let defaultswitch2 = new AssetModel(autoswitch2);
|
||||
scope.modellist.push(defaultswitch2);
|
||||
|
||||
let modeldata = JSON.parse(data);
|
||||
|
||||
for(let j=0;j<modeldata.length;j++){
|
||||
let had = false;
|
||||
for(let i=0;i<scope.modellist.length;i++){
|
||||
|
||||
|
||||
if(scope.modellist[i].id == modeldata[j].id){
|
||||
|
||||
had = true;
|
||||
|
||||
i = scope.modellist.length;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if(had == false){
|
||||
let model = new AssetModel(modeldata[j]);
|
||||
scope.modellist.push(modeldata[j]);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
this.assetpromise = function (scene){
|
||||
let initlist = [];
|
||||
@ -248,15 +284,10 @@ export function AssetLoader(){
|
||||
|
||||
let wstation = new AssetModel(waicestation);
|
||||
scope.modellist.push(wstation);
|
||||
// let topstation = new AssetModel(defaulttopstation);
|
||||
// scope.modellist.push(topstation);
|
||||
|
||||
let autorail = new AssetModel(defaultautorail);
|
||||
scope.modellist.push(autorail);
|
||||
|
||||
// let autosuidao = new AssetModel(defaultautosuidao);
|
||||
// scope.modellist.push(autosuidao);
|
||||
|
||||
let defaultswitch1 = new AssetModel(autoswitch1);
|
||||
scope.modellist.push(defaultswitch1);
|
||||
|
||||
|
@ -72,7 +72,7 @@ export function DriverLoadNew(data,scope,netdata,mapdata,sectionlist,signallist,
|
||||
let signaldata = JSON.parse(netdata.signals);
|
||||
let standsdata = JSON.parse(netdata.stands);
|
||||
let psddata = data.psdList;
|
||||
assetloader.setmodellist(netdata.assets);
|
||||
assetloader.setmodellistnew(netdata.assets);
|
||||
|
||||
assetloader.assetpromise(sceneload)
|
||||
// .then(function(data){
|
||||
@ -107,7 +107,36 @@ export function DriverLoadNew(data,scope,netdata,mapdata,sectionlist,signallist,
|
||||
|
||||
});
|
||||
})
|
||||
.then(function(data){
|
||||
return new Promise(function(resolve, reject){
|
||||
|
||||
|
||||
if(stationstandlist.group.children[0].name == "Station18398"){
|
||||
for(let mm=0;mm< stationstandlist.group.children.length;mm++){
|
||||
if(stationstandlist.group.children[mm].name != "Station96090"){
|
||||
let stationname = stationstandlist.group.children[mm].name;
|
||||
|
||||
stationstandlist.group.children[mm].getObjectByName("zhantailiebiao").material.map =scope.stationtexture["haerbinlist"];
|
||||
stationstandlist.group.children[mm].getObjectByName("zhantailiebiao").material.map.needsUpdate = true;
|
||||
|
||||
let newmaterial = stationstandlist.group.children[mm].getObjectByName("zhantaiming").material.clone();
|
||||
newmaterial.map =scope.stationtexture[stationname];
|
||||
stationstandlist.group.children[mm].getObjectByName("zhantaiming").material = newmaterial;
|
||||
stationstandlist.group.children[mm].getObjectByName("zhantaiming").material.map.needsUpdate = true;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
for(let mn=0;mn<scope.assetloader.modellist.length;mn++){
|
||||
if(scope.assetloader.modellist[mn].name && scope.assetloader.modellist[mn].name == "hebsuidao"){
|
||||
scope.assetloader.modellist[mn].mesh.name = "hebsuidao";
|
||||
scene.add(scope.assetloader.modellist[mn].mesh);
|
||||
}
|
||||
}
|
||||
}
|
||||
resolve("mergemodel");
|
||||
});
|
||||
})
|
||||
.then(function(data){
|
||||
// for(let mn=0;mn<scope.assetloader.modellist.length;mn++){
|
||||
// if(scope.assetloader.modellist[mn].name && scope.assetloader.modellist[mn].name == "suidao"){
|
||||
@ -125,7 +154,6 @@ export function DriverLoadNew(data,scope,netdata,mapdata,sectionlist,signallist,
|
||||
backdata.loaderdata(sectionlist,linklist,signallist,stationstandlist,trainlisttest,realsectionlist,rails);
|
||||
scope.Subscribe.updatamap(sectionlist,linklist,signallist,stationstandlist,trainlisttest,realsectionlist,rails,scope.materiallist,scope.actions,scope.sceneload);
|
||||
scope.webwork.postMessage("on");
|
||||
console.log(scene);
|
||||
// updatemenulist(stationstandlist.list,trainlisttest.list);
|
||||
loadingInstance.close();
|
||||
});
|
||||
|
@ -8,6 +8,33 @@ export function Materialload(jlmap3dedit){
|
||||
settexture( jlmap3dedit.materiallist,"green",'../../static/material/signal/3.jpg');
|
||||
|
||||
settexture( jlmap3dedit.materiallist,"black",'../../static/material/signal/5.jpg');
|
||||
if(jlmap3dedit.stationtexture){
|
||||
setstationtexture(jlmap3dedit.stationtexture,"haerbinlist",'../../static/texture/heb/haerbinlist.jpg');
|
||||
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station5361",'../../static/texture/heb/Station5361.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station11094",'../../static/texture/heb/Station11094.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station11136",'../../static/texture/heb/Station11136.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station17293",'../../static/texture/heb/Station17293.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station18398",'../../static/texture/heb/Station18398.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station22163",'../../static/texture/heb/Station22163.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station25464",'../../static/texture/heb/Station25464.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station28090",'../../static/texture/heb/Station28090.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station41999",'../../static/texture/heb/Station41999.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station44338",'../../static/texture/heb/Station44338.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station46464",'../../static/texture/heb/Station46464.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station50565",'../../static/texture/heb/Station50565.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station60068",'../../static/texture/heb/Station60068.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station62429",'../../static/texture/heb/Station62429.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station64444",'../../static/texture/heb/Station64444.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station71700",'../../static/texture/heb/Station71700.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station72132",'../../static/texture/heb/Station72132.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station78164",'../../static/texture/heb/Station78164.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station79537",'../../static/texture/heb/Station79537.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station82618",'../../static/texture/heb/Station82618.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station85520",'../../static/texture/heb/Station85520.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station89483",'../../static/texture/heb/Station89483.jpg');
|
||||
setstationtexture(jlmap3dedit.stationtexture,"Station96090",'../../static/texture/heb/Station96090.jpg');
|
||||
}
|
||||
//console.log(jlmap3dedit.materiallist);
|
||||
}
|
||||
|
||||
@ -34,3 +61,26 @@ function settexture(materiallist,name,textureurl){
|
||||
}
|
||||
);
|
||||
}
|
||||
function setstationtexture(stationtexture,name,textureurl){
|
||||
var loader = new THREE.TextureLoader();
|
||||
|
||||
// 加载一个资源
|
||||
loader.load(
|
||||
// 资源URL
|
||||
textureurl,
|
||||
|
||||
// onLoad回调
|
||||
function ( texture ) {
|
||||
texture.name = name;
|
||||
stationtexture[name] = texture;
|
||||
},
|
||||
|
||||
// 目前暂不支持onProgress的回调
|
||||
undefined,
|
||||
|
||||
// onError回调
|
||||
function ( err ) {
|
||||
console.error( 'An error happened.' );
|
||||
}
|
||||
);
|
||||
}
|
||||
|
@ -69,7 +69,7 @@ export function SimulationLoadNew(data,scope,netdata,mapdata,camera,controls,sce
|
||||
let signaldata = JSON.parse(netdata.signals);
|
||||
let standsdata = JSON.parse(netdata.stands);
|
||||
let psddata = data.psdList;
|
||||
assetloader.setmodellist(netdata.assets);
|
||||
assetloader.setmodellistnew(netdata.assets);
|
||||
|
||||
assetloader.assetpromise(sceneload)
|
||||
// .then(function(data){
|
||||
@ -78,6 +78,7 @@ export function SimulationLoadNew(data,scope,netdata,mapdata,camera,controls,sce
|
||||
.then(function(data){
|
||||
//console.log(data);
|
||||
//,netdata.stands,mixers,actions,"0"
|
||||
|
||||
return stationstandlist.loadpromise(mapdata.stationList,standsdata,psddata,sceneload,assetloader,mixers,actions,"02");
|
||||
})
|
||||
.then(function(data){
|
||||
@ -104,7 +105,34 @@ export function SimulationLoadNew(data,scope,netdata,mapdata,camera,controls,sce
|
||||
|
||||
});
|
||||
})
|
||||
.then(function(data){
|
||||
return new Promise(function(resolve, reject){
|
||||
|
||||
//
|
||||
if(stationstandlist.group.children[0].name == "Station18398"){
|
||||
for(let mm=0;mm< stationstandlist.group.children.length;mm++){
|
||||
if(stationstandlist.group.children[mm].name != "Station96090"){
|
||||
let stationname = stationstandlist.group.children[mm].name;
|
||||
stationstandlist.group.children[mm].getObjectByName("zhantailiebiao").material.map =scope.stationtexture["haerbinlist"];
|
||||
stationstandlist.group.children[mm].getObjectByName("zhantailiebiao").material.map.needsUpdate = true;
|
||||
let newmaterial = stationstandlist.group.children[mm].getObjectByName("zhantaiming").material.clone();
|
||||
newmaterial.map =scope.stationtexture[stationname];
|
||||
stationstandlist.group.children[mm].getObjectByName("zhantaiming").material = newmaterial;
|
||||
stationstandlist.group.children[mm].getObjectByName("zhantaiming").material.map.needsUpdate = true;
|
||||
}
|
||||
}
|
||||
for(let mn=0;mn<scope.assetloader.modellist.length;mn++){
|
||||
if(scope.assetloader.modellist[mn].name && scope.assetloader.modellist[mn].name == "hebsuidao"){
|
||||
scope.assetloader.modellist[mn].mesh.name = "hebsuidao";
|
||||
scene.add(scope.assetloader.modellist[mn].mesh);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
resolve("mergemodel");
|
||||
});
|
||||
})
|
||||
.then(function(data){
|
||||
// for(let mn=0;mn<scope.assetloader.modellist.length;mn++){
|
||||
// if(scope.assetloader.modellist[mn].name && scope.assetloader.modellist[mn].name == "suidao"){
|
||||
|
@ -191,7 +191,8 @@ export function StationStandList() {
|
||||
let textmaterial = new THREE.MeshBasicMaterial( { side: THREE.DoubleSide,map:textt ,transparent: true} );
|
||||
let textplane = new THREE.Mesh( textgeometry, textmaterial );
|
||||
textplane.name = stationdata[map[k].num].code;
|
||||
textplane.position.y = 300;
|
||||
textplane.position.y = 50;
|
||||
textplane.position.z = 250;
|
||||
textplane.rotation.x = Math.PI/2;
|
||||
//textplane.position.x = -30;
|
||||
scope.textlist.push(textplane);
|
||||
|
@ -16,11 +16,11 @@ export function StationStandListN() {
|
||||
return new Promise(function(resolve, reject){
|
||||
|
||||
let stations = stationdata;
|
||||
let selectmesh;
|
||||
let selectmesh1;
|
||||
|
||||
for(let j=0;j<assetloader.modellist.length;j++){
|
||||
if(assetloader.modellist[j].deviceType == "stand"){
|
||||
selectmesh = assetloader.modellist[j].mesh;
|
||||
selectmesh1 = assetloader.modellist[j].mesh;
|
||||
}
|
||||
}
|
||||
|
||||
@ -40,7 +40,7 @@ export function StationStandListN() {
|
||||
newstationstand.direction2.name = standsdata[i].direction2.name;
|
||||
newstationstand.direction2.screenDoorOpenStatus = "01";
|
||||
|
||||
let newstationmesh = selectmesh.clone(true);
|
||||
let newstationmesh = selectmesh1.clone(true);
|
||||
newstationmesh.position.x = standsdata[i].position.x;
|
||||
newstationmesh.position.y = standsdata[i].position.y;
|
||||
newstationmesh.position.z = standsdata[i].position.z;
|
||||
@ -52,7 +52,7 @@ export function StationStandListN() {
|
||||
|
||||
scope.list[standsdata[i].code] = newstationstand;
|
||||
|
||||
let newclip = selectmesh.animations[ 0 ];
|
||||
let newclip = selectmesh1.animations[ 0 ];
|
||||
for(let j=0;j<newstationmesh.children.length;j++){
|
||||
|
||||
if(newstationmesh.children[j].name == "top"){
|
||||
@ -136,17 +136,25 @@ export function StationStandListN() {
|
||||
return new Promise(function(resolve, reject){
|
||||
|
||||
let stations = stationdata;
|
||||
let selectmesh;
|
||||
|
||||
let selectmesh1;
|
||||
let selectmesh2;
|
||||
let selectmesh3;
|
||||
for(let j=0;j<assetloader.modellist.length;j++){
|
||||
if(assetloader.modellist[j].deviceType == "stand"){
|
||||
selectmesh = assetloader.modellist[j].mesh;
|
||||
selectmesh1 = assetloader.modellist[j].mesh;
|
||||
}
|
||||
if(assetloader.modellist[j].deviceType == "standwaice"){
|
||||
selectmesh2 = assetloader.modellist[j].mesh;
|
||||
// assetloader.modellist[num2].mesh.rotation.y = Math.PI/2;
|
||||
}
|
||||
if(assetloader.modellist[j].deviceType == "station3"){
|
||||
selectmesh3 = assetloader.modellist[j].mesh;
|
||||
// assetloader.modellist[num2].mesh.rotation.y = Math.PI/2;
|
||||
}
|
||||
}
|
||||
|
||||
for(let i=0;i<standsdata.length;i++){
|
||||
let newstationstand = new StationStandModel(standsdata[i]);
|
||||
|
||||
if(standsdata[i].code != "Station96090"){
|
||||
newstationstand.code = standsdata[i].code;
|
||||
newstationstand.name = standsdata[i].name;
|
||||
newstationstand.type = "station";
|
||||
@ -159,8 +167,14 @@ export function StationStandListN() {
|
||||
newstationstand.direction2.code = standsdata[i].direction2.code;
|
||||
newstationstand.direction2.name = standsdata[i].direction2.name;
|
||||
newstationstand.direction2.screenDoorOpenStatus = "01";
|
||||
|
||||
let newstationmesh = selectmesh.clone(true);
|
||||
let newstationmesh = null;
|
||||
if(standsdata[i].inside == true){
|
||||
newstationmesh = selectmesh1.clone(true);
|
||||
}else{
|
||||
newstationmesh = selectmesh2.clone(true);
|
||||
}
|
||||
newstationmesh.code = standsdata[i].code;
|
||||
newstationmesh.name = standsdata[i].code;
|
||||
newstationmesh.position.x = standsdata[i].position.x;
|
||||
newstationmesh.position.y = standsdata[i].position.y;
|
||||
newstationmesh.position.z = standsdata[i].position.z;
|
||||
@ -172,7 +186,13 @@ export function StationStandListN() {
|
||||
//
|
||||
scope.list[standsdata[i].code] = newstationstand;
|
||||
//
|
||||
let newclip = selectmesh.animations[ 0 ];
|
||||
let newclip =null;
|
||||
if(standsdata[i].inside == true){
|
||||
newclip = selectmesh1.animations[ 0 ];
|
||||
}else{
|
||||
newclip = selectmesh2.animations[ 0 ];
|
||||
}
|
||||
|
||||
for(let j=0;j<newstationmesh.children.length;j++){
|
||||
|
||||
if(newstationmesh.children[j].name == "top"){
|
||||
@ -219,28 +239,119 @@ export function StationStandListN() {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
// console.log(newstationmesh);
|
||||
|
||||
if(mode){
|
||||
if(mode == "02"){
|
||||
let textgeometry = new THREE.PlaneBufferGeometry( 65, 90, 1 );
|
||||
let textt = new THREE.CanvasTexture(getTextCanvas(stationdata[i]));
|
||||
let textt = new THREE.CanvasTexture(getTextCanvas(standsdata[i]));
|
||||
let textmaterial = new THREE.MeshBasicMaterial( { side: THREE.DoubleSide,map:textt ,transparent: true} );
|
||||
let textplane = new THREE.Mesh( textgeometry, textmaterial );
|
||||
textplane.name = stationdata[i].code;
|
||||
textplane.name = standsdata[i].code;
|
||||
textplane.position.y = 70;
|
||||
textplane.rotation.x = Math.PI/2;
|
||||
//textplane.position.x = -30;
|
||||
textplane.position.z = 50;
|
||||
scope.textlist.push(textplane);
|
||||
newstationmesh.add(textplane);
|
||||
textgeometry.dispose();
|
||||
textmaterial.dispose();
|
||||
textt.dispose();
|
||||
// let newtopstation = topstationmesh.clone(true);
|
||||
// newtopstation.position.x = map[k].mesh.position.x;
|
||||
// newtopstation.position.z = map[k].mesh.position.z;
|
||||
// scene.add(newtopstation);
|
||||
}
|
||||
}
|
||||
}else{
|
||||
newstationstand.code = standsdata[i].code;
|
||||
newstationstand.name = standsdata[i].name;
|
||||
newstationstand.type = "station";
|
||||
newstationstand.num = i;
|
||||
|
||||
newstationstand.direction1.code = standsdata[i].direction1.code;
|
||||
newstationstand.direction1.name = standsdata[i].direction1.name;
|
||||
newstationstand.direction1.screenDoorOpenStatus = "01";
|
||||
|
||||
newstationstand.direction2.code = standsdata[i].direction2.code;
|
||||
newstationstand.direction2.name = standsdata[i].direction2.name;
|
||||
newstationstand.direction2.screenDoorOpenStatus = "01";
|
||||
let newstationmesh = null;
|
||||
newstationmesh = selectmesh3.clone(true);
|
||||
newstationmesh.code = standsdata[i].code;
|
||||
newstationmesh.name = standsdata[i].code;
|
||||
newstationmesh.position.x = standsdata[i].position.x;
|
||||
newstationmesh.position.y = standsdata[i].position.y;
|
||||
newstationmesh.position.z = standsdata[i].position.z;
|
||||
// newstationmesh.rotation.x = standsdata[i].rotation._x;
|
||||
// newstationmesh.rotation.y = standsdata[i].rotation._y;
|
||||
// newstationmesh.rotation.z = standsdata[i].rotation._z;
|
||||
newstationstand.mesh = newstationmesh;
|
||||
scope.group.add(newstationmesh);
|
||||
//
|
||||
scope.list[standsdata[i].code] = newstationstand;
|
||||
//
|
||||
let newclip =null;
|
||||
newclip = selectmesh3.animations[ 0 ];
|
||||
for(let j=0;j<newstationmesh.children.length;j++){
|
||||
|
||||
if(newstationmesh.children[j].name == "top"){
|
||||
newstationmesh.children[j].animations = [];
|
||||
newstationmesh.children[j].animations.push(newclip.clone());
|
||||
|
||||
let mixer = new THREE.AnimationMixer( newstationmesh.children[j] );
|
||||
|
||||
for(let n=0;n<psddata.length;n++){
|
||||
if(psddata[n].standCode == newstationstand.direction2.code){
|
||||
|
||||
let key = psddata[n].code;
|
||||
actionss[key] = {
|
||||
status:"01",
|
||||
action:mixer.clipAction( newstationmesh.children[j].animations[0])
|
||||
};
|
||||
actionss[key].action.setLoop(THREE.LoopOnce);
|
||||
actionss[key].action.clampWhenFinished = true;
|
||||
//actionss[key].play();
|
||||
mixers.push(mixer);
|
||||
n = psddata.length;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
if(newstationmesh.children[j].name == "down"){
|
||||
newstationmesh.children[j].animations = [];
|
||||
newstationmesh.children[j].animations.push(newclip.clone());
|
||||
|
||||
let mixer = new THREE.AnimationMixer( newstationmesh.children[j] );
|
||||
for(let n=0;n<psddata.length;n++){
|
||||
if(psddata[n].standCode == newstationstand.direction1.code){
|
||||
|
||||
let key = psddata[n].code;
|
||||
actionss[key] = {
|
||||
status:"01",
|
||||
action:mixer.clipAction( newstationmesh.children[j].animations[0])
|
||||
};
|
||||
actionss[key].action.setLoop(THREE.LoopOnce);
|
||||
actionss[key].action.clampWhenFinished = true;
|
||||
//actionss[key].play();
|
||||
mixers.push(mixer);
|
||||
n = psddata.length;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(mode){
|
||||
if(mode == "02"){
|
||||
let textgeometry = new THREE.PlaneBufferGeometry( 65, 90, 1 );
|
||||
let textt = new THREE.CanvasTexture(getTextCanvas(standsdata[i]));
|
||||
let textmaterial = new THREE.MeshBasicMaterial( { side: THREE.DoubleSide,map:textt ,transparent: true} );
|
||||
let textplane = new THREE.Mesh( textgeometry, textmaterial );
|
||||
textplane.name = standsdata[i].code;
|
||||
textplane.position.y = 70;
|
||||
textplane.rotation.x = Math.PI/2;
|
||||
textplane.position.z = 50;
|
||||
scope.textlist.push(textplane);
|
||||
newstationmesh.add(textplane);
|
||||
textgeometry.dispose();
|
||||
textmaterial.dispose();
|
||||
textt.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -7,7 +7,7 @@ export function StationStandModel(opts) {
|
||||
this.name = null;
|
||||
this.modelid = null;
|
||||
this.type = null;
|
||||
|
||||
this.inside = null;
|
||||
this.ismodel = false;
|
||||
this.istexture = false;
|
||||
this.modelurl = null;
|
||||
|
@ -171,7 +171,7 @@ export function TrainListN() {
|
||||
for(let i=0;i<data.length;i++){
|
||||
|
||||
|
||||
actionss[data[i].code] = {
|
||||
actionss[data[i].groupNumber] = {
|
||||
top:[],
|
||||
down:[]
|
||||
};
|
||||
@ -198,7 +198,7 @@ export function TrainListN() {
|
||||
//action.play();
|
||||
action.setLoop(THREE.LoopOnce);
|
||||
action.clampWhenFinished = true;
|
||||
actionss[data[i].code].top.push(action);
|
||||
actionss[data[i].groupNumber].top.push(action);
|
||||
|
||||
}
|
||||
|
||||
@ -214,7 +214,7 @@ export function TrainListN() {
|
||||
//action.play();
|
||||
action.setLoop(THREE.LoopOnce);
|
||||
action.clampWhenFinished = true;
|
||||
actionss[data[i].code].down.push(action);
|
||||
actionss[data[i].groupNumber].down.push(action);
|
||||
}
|
||||
}
|
||||
}else{
|
||||
@ -230,7 +230,7 @@ export function TrainListN() {
|
||||
//action.play();
|
||||
action.setLoop(THREE.LoopOnce);
|
||||
action.clampWhenFinished = true;
|
||||
actionss[data[i].code].top.push(action);
|
||||
actionss[data[i].groupNumber].top.push(action);
|
||||
}
|
||||
|
||||
if(newmesh.children[j].children[n].name == "down"){
|
||||
@ -244,12 +244,12 @@ export function TrainListN() {
|
||||
//action.play();
|
||||
action.setLoop(THREE.LoopOnce);
|
||||
action.clampWhenFinished = true;
|
||||
actionss[data[i].code].down.push(action);
|
||||
actionss[data[i].groupNumber].down.push(action);
|
||||
}
|
||||
}
|
||||
}
|
||||
//newmesh.children[j].name = data[i].code;
|
||||
newmesh.children[j].code = data[i].code;
|
||||
newmesh.children[j].groupNumber = data[i].groupNumber;
|
||||
newmesh.children[j].axis = new THREE.Vector3();
|
||||
newmesh.children[j].up = new THREE.Vector3(1, 0, 0);
|
||||
// newmesh.axis = new THREE.Vector3();
|
||||
@ -281,7 +281,7 @@ export function TrainListN() {
|
||||
alphaTest:0.1
|
||||
} );
|
||||
let textplane = new THREE.Mesh( textgeometry, textmaterial );
|
||||
textplane.name = data[i].code;
|
||||
textplane.name = data[i].groupNumber;
|
||||
textplane.position.x = 0;
|
||||
textplane.position.y = 0;
|
||||
textplane.position.z = 20;
|
||||
@ -300,7 +300,7 @@ export function TrainListN() {
|
||||
|
||||
//group.add(textplane);
|
||||
newmesh.first = false;
|
||||
newmesh.name = data[i].code;
|
||||
newmesh.name = data[i].groupNumber;
|
||||
newmesh.rname = data[i].groupNumber;
|
||||
newmesh.groupNumber = data[i].groupNumber;
|
||||
|
||||
@ -321,7 +321,7 @@ export function TrainListN() {
|
||||
newmesh.open = null;
|
||||
newmesh.statsstop = 0;
|
||||
|
||||
scope.list[data[i].code] = newmesh;
|
||||
scope.list[data[i].groupNumber] = newmesh;
|
||||
//scene.add(newmesh);
|
||||
}
|
||||
// console.log(selectmesh);
|
||||
|
@ -1,8 +1,18 @@
|
||||
<template>
|
||||
<el-dialog class="beijing-01__systerm confirm-control-speed" :title="title" :visible.sync="show" width="540px"
|
||||
:before-close="doClose" :zIndex="2000" :modal="false" :close-on-click-modal="false" append-to-body v-dialogDrag>
|
||||
<el-dialog
|
||||
v-dialogDrag
|
||||
class="beijing-01__systerm confirm-control-speed"
|
||||
:title="title"
|
||||
:visible.sync="show"
|
||||
width="540px"
|
||||
:before-close="doClose"
|
||||
:z-index="2000"
|
||||
:modal="false"
|
||||
:close-on-click-modal="false"
|
||||
append-to-body
|
||||
>
|
||||
<div style="height: 60px; padding-left: 20px">
|
||||
<span style="font-size: 18px">{{message}}</span>
|
||||
<span style="font-size: 18px">{{ message }}</span>
|
||||
</div>
|
||||
<el-row justify="center" class="button-group">
|
||||
<el-col :span="6" :offset="6">
|
||||
@ -16,18 +26,17 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { MapDeviceType, OperationEvent } from '@/scripts/ConstDic';
|
||||
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
||||
|
||||
export default {
|
||||
export default {
|
||||
name: 'ConfirmControlSpeed',
|
||||
data() {
|
||||
return {
|
||||
dialogShow: false,
|
||||
loading: false,
|
||||
type: '',
|
||||
operation: '',
|
||||
message: '',
|
||||
}
|
||||
message: ''
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
show() {
|
||||
@ -36,13 +45,13 @@
|
||||
title() {
|
||||
if (this.dialogShow) {
|
||||
if (this.operation === OperationEvent.Section.setSpeed.order.operation) {
|
||||
return "区段设置限速";
|
||||
return '区段设置限速';
|
||||
} else if (this.operation === OperationEvent.Section.cancelSpeed.order.operation) {
|
||||
return "区段取消限速";
|
||||
return '区段取消限速';
|
||||
} else if (this.operation === OperationEvent.Switch.setSpeed.order.operation) {
|
||||
return "道岔设置限速";
|
||||
return '道岔设置限速';
|
||||
} else if (this.operation === OperationEvent.Switch.cancelSpeed.order.operation) {
|
||||
return "道岔取消限速";
|
||||
return '道岔取消限速';
|
||||
}
|
||||
}
|
||||
},
|
||||
@ -70,12 +79,11 @@
|
||||
mounted() {
|
||||
this.$nextTick(() => {
|
||||
this.$store.dispatch('training/tipReload');
|
||||
})
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
doShow(operate) {
|
||||
if (!this.dialogShow) {
|
||||
this.type = operate.type;
|
||||
this.operation = operate.operation;
|
||||
this.message = operate.message;
|
||||
}
|
||||
@ -92,9 +100,8 @@
|
||||
this.$store.dispatch('training/emitTipFresh');
|
||||
},
|
||||
commit() {
|
||||
let operate = {
|
||||
type: this.type
|
||||
}
|
||||
const operate = {
|
||||
};
|
||||
|
||||
if (this.operation === OperationEvent.Section.setSpeed.order.operation) {
|
||||
/** 区段设置限速*/
|
||||
@ -111,38 +118,37 @@
|
||||
}
|
||||
|
||||
this.loading = true;
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.loading = false;
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
if (valid) {
|
||||
this.$emit('setOperate', { step: 1, success: true });
|
||||
this.doClose();
|
||||
}
|
||||
}).catch((error) => {
|
||||
}).catch(() => {
|
||||
this.loading = false;
|
||||
this.$emit('setOperate', { step: 0, success: false });
|
||||
this.doClose();
|
||||
})
|
||||
});
|
||||
},
|
||||
cancel() {
|
||||
let operate = {
|
||||
type: this.type,
|
||||
operation: OperationEvent.Command.cancel.menu.operation,
|
||||
}
|
||||
const operate = {
|
||||
operation: OperationEvent.Command.cancel.menu.operation
|
||||
};
|
||||
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
if (valid) {
|
||||
this.$emit('setOperate', { step: 0, success: false });
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
this.doClose();
|
||||
}
|
||||
}).catch(error => {
|
||||
}).catch(() => {
|
||||
this.doClose();
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
</script>
|
||||
<style>
|
||||
|
@ -214,6 +214,21 @@ export default {
|
||||
} else {
|
||||
this.commitDisabled = true;
|
||||
}
|
||||
|
||||
const operate = {val:code};
|
||||
if (this.operation == OperationEvent.Signal.humanControl.menu.operation) {
|
||||
/** 进路交人工控*/
|
||||
operate.operation = OperationEvent.Signal.humanControl.choose.operation;
|
||||
} else if (this.operation == OperationEvent.Signal.atsAutoControl.menu.operation) {
|
||||
/** 进路交自动控*/
|
||||
operate.operation = OperationEvent.Signal.atsAutoControl.choose.operation;
|
||||
}
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
}
|
||||
});
|
||||
|
||||
},
|
||||
allSelectChange() {
|
||||
this.changeList = [];
|
||||
|
@ -102,7 +102,7 @@
|
||||
</template>
|
||||
<script>
|
||||
import CMD from '@/scripts/cmdPlugin/CommandEnum';
|
||||
import { MapDeviceType, OperationEvent } from '@/scripts/ConstDic';
|
||||
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
||||
import ConfirmControlSpeed from './childDialog/confirmControlSpeed';
|
||||
import { now } from '@/utils/date';
|
||||
|
||||
@ -378,7 +378,6 @@ export default {
|
||||
this.cmdDisabled = [true, true, true];
|
||||
this.stpDisabled = true;
|
||||
this.order = 0;
|
||||
this.type = operate.type;
|
||||
this.operation = operate.operation;
|
||||
this.setMessage('请选择限速值后,点击“下达”按钮,下达命令!');
|
||||
if (this.isCancelSpeed) {
|
||||
@ -400,7 +399,6 @@ export default {
|
||||
},
|
||||
speedSelectChange(val) {
|
||||
const operate = {
|
||||
type: this.type,
|
||||
val: val
|
||||
};
|
||||
|
||||
@ -422,7 +420,6 @@ export default {
|
||||
},
|
||||
command() {
|
||||
const operate = {
|
||||
type: this.type
|
||||
};
|
||||
|
||||
if (this.operation == OperationEvent.Section.setSpeed.menu.operation) {
|
||||
@ -459,7 +456,6 @@ export default {
|
||||
},
|
||||
confirm1() {
|
||||
const operate = {
|
||||
type: this.type
|
||||
};
|
||||
|
||||
if (this.operation == OperationEvent.Section.setSpeed.menu.operation) {
|
||||
@ -495,8 +491,6 @@ export default {
|
||||
confirm2() {
|
||||
const operate = {
|
||||
over:true,
|
||||
type: this.type,
|
||||
val: this.speed,
|
||||
param: {
|
||||
speedLimitValue: `${this.speed}`
|
||||
}
|
||||
@ -539,7 +533,6 @@ export default {
|
||||
},
|
||||
stop() {
|
||||
const operate = {
|
||||
type: this.type
|
||||
};
|
||||
|
||||
if (this.operation == OperationEvent.Section.setSpeed.menu.operation) {
|
||||
@ -571,7 +564,6 @@ export default {
|
||||
},
|
||||
close() {
|
||||
const operate = {
|
||||
type: this.type,
|
||||
operation: OperationEvent.Command.close.menu.operation
|
||||
};
|
||||
this.writeRecord({ order: ++this.order, date: now(), context: '点击关闭', result: '' });
|
||||
|
@ -1095,7 +1095,6 @@ export const OperationList = {
|
||||
{ deviceType: '06', orderNum: 3, operateCode: '511', tip: '鼠标左键点击【确定】按钮' }
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
@ -1137,7 +1136,7 @@ export const OperationList = {
|
||||
{ deviceType: '03', orderNum: 1, operateCode: '407', tip: '鼠标右键菜单选择【设置临时限速】' },
|
||||
{ deviceType: '03', orderNum: 2, operateCode: '4076', tip: '鼠标左键选择【限速值15】', val: '15' },
|
||||
{ deviceType: '03', orderNum: 3, operateCode: '4071', tip: '鼠标左键点击【下达】按钮' },
|
||||
{ deviceType: '03', orderNum: 4, operateCode: '4072', tip: '鼠标左键点击【确认】按钮' },
|
||||
{ deviceType: '03', orderNum: 4, operateCode: '4072', tip: '鼠标左键点击【确定】按钮' },
|
||||
{ deviceType: '03', orderNum: 5, operateCode: '4073', tip: '鼠标左键点击【确认1】按钮' },
|
||||
{ deviceType: '03', orderNum: 6, operateCode: '4074', tip: '鼠标左键点击【确认2】按钮' },
|
||||
{ deviceType: '03', orderNum: 7, operateCode: '001', tip: '鼠标左键点击【关闭】按钮' }
|
||||
@ -1178,7 +1177,7 @@ export const OperationList = {
|
||||
operateType: '0310',
|
||||
skinCode: '03',
|
||||
trainingName: '设置临时限速({7} 道岔)',
|
||||
trainingRemark: '设置临时限速功能(限速值 35 零点西上行公里标0 - 零点西上行公里标3000)',
|
||||
trainingRemark: '设置临时限速功能(限速值 35 )',
|
||||
trainingType: '03',
|
||||
productTypes: ['02'],
|
||||
// stepVOList: [
|
||||
@ -1205,13 +1204,68 @@ export const OperationList = {
|
||||
{ deviceType: '02', orderNum: 1, operateCode: '113', tip: '鼠标右键菜单选择【设置临时限速】' },
|
||||
{ deviceType: '02', orderNum: 2, operateCode: '1136', tip: '鼠标左键选择【限速值35】', val: '35' },
|
||||
{ deviceType: '02', orderNum: 3, operateCode: '1131', tip: '鼠标左键点击【下达】按钮' },
|
||||
{ deviceType: '02', orderNum: 4, operateCode: '1132', tip: '鼠标左键点击【确认】按钮' },
|
||||
{ deviceType: '02', orderNum: 4, operateCode: '1132', tip: '鼠标左键点击【确定】按钮' },
|
||||
{ deviceType: '02', orderNum: 5, operateCode: '1133', tip: '鼠标左键点击【确认1】按钮' },
|
||||
{ deviceType: '02', orderNum: 6, operateCode: '1134', tip: '鼠标左键点击【确认2】按钮' },
|
||||
{ deviceType: '02', orderNum: 7, operateCode: '001', tip: '鼠标左键点击【关闭】按钮' }
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
operateType: '0313',
|
||||
skinCode: '03',
|
||||
trainingName: '道岔总反({7} 道岔)',
|
||||
trainingRemark: '道岔反位功能',
|
||||
trainingType: '03',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '02', orderNum: 1, operateCode: '1020', tip: '鼠标左键点击【道岔总反】' },
|
||||
{ deviceType: '02', orderNum: 2, operateCode: '1020', tip: '鼠标左键点击【道岔】', codeType:'SWITCH' }
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
operateType: '0312',
|
||||
skinCode: '03',
|
||||
trainingName: '道岔总定({7} 道岔)',
|
||||
trainingRemark: '道岔定位功能',
|
||||
trainingType: '03',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '02', orderNum: 1, operateCode: '1010', tip: '鼠标左键点击【道岔总定】' },
|
||||
{ deviceType: '02', orderNum: 2, operateCode: '1010', tip: '鼠标左键点击【道岔】', codeType:'SWITCH' }
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
operateType: '0301',
|
||||
skinCode: '03',
|
||||
trainingName: '道岔单锁({7} 道岔)',
|
||||
trainingRemark: '道岔单锁功能',
|
||||
trainingType: '03',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '02', orderNum: 1, operateCode: '1030', tip: '鼠标左键点击【道岔单锁】' },
|
||||
{ deviceType: '02', orderNum: 2, operateCode: '1030', tip: '鼠标左键点击【道岔】', codeType:'SWITCH' }
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
operateType: '0302',
|
||||
skinCode: '03',
|
||||
trainingName: '道岔解锁({7} 道岔)',
|
||||
trainingRemark: '道岔单解功能',
|
||||
trainingType: '03',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '02', orderNum: 1, operateCode: '1040', tip: '鼠标左键点击【道岔解锁】' },
|
||||
{ deviceType: '02', orderNum: 2, operateCode: '1040', tip: '鼠标左键点击【道岔】', codeType:'SWITCH' }
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
@ -1220,7 +1274,7 @@ export const OperationList = {
|
||||
trainingName: '排列进路({3} 进路)',
|
||||
trainingRemark: '排列进路功能',
|
||||
trainingType: '02',
|
||||
productTypes: ['01', '02'],
|
||||
productTypes: ['02'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '301', tip: '鼠标右键菜单选择【排列进路】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '3011', tip: '鼠标左键选择进路名称【{3}】', val: '{4}' },
|
||||
@ -1293,13 +1347,117 @@ export const OperationList = {
|
||||
trainingName: '信号重开({3} 进路)',
|
||||
trainingRemark: '信号重开功能',
|
||||
trainingType: '02',
|
||||
productTypes: ['01', '02'],
|
||||
productTypes: ['02'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '304', tip: '鼠标右键菜单选择【信号重开】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '304', tip: '鼠标左键点击【确定】按钮' }
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 8,
|
||||
minDuration: 5,
|
||||
operateType: '0206',
|
||||
skinCode: '03',
|
||||
trainingName: '信号重开({3} 进路)',
|
||||
trainingRemark: '信号重开功能',
|
||||
trainingType: '02',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '3040', tip: '鼠标左键点击【信号重开】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '3040', tip: '鼠标左键点击【信号机】', codeType:'SIGNAL'}
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 8,
|
||||
minDuration: 5,
|
||||
operateType: '0211',
|
||||
skinCode: '03',
|
||||
trainingName: '设置自动进路({3} 进路)',
|
||||
trainingRemark: '设置自动进路功能',
|
||||
trainingType: '02',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '3090', tip: '鼠标左键点击【自动进路】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '3090', tip: '鼠标左键点击【信号机】', codeType:'SIGNAL'}
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 8,
|
||||
minDuration: 5,
|
||||
operateType: '0212',
|
||||
skinCode: '03',
|
||||
trainingName: '取消自动进路({3} 进路)',
|
||||
trainingRemark: '取消自动进路功能',
|
||||
trainingType: '02',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '3090', tip: '鼠标左键点击【自动进路】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '3090', tip: '鼠标左键点击【信号机】', codeType:'SIGNAL'}
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 8,
|
||||
minDuration: 5,
|
||||
operateType: '0215',
|
||||
skinCode: '03',
|
||||
trainingName: '总人解({3} 进路)',
|
||||
trainingRemark: '人解进路(总人解)',
|
||||
trainingType: '02',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '3050', tip: '鼠标左键点击【总人解】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '3050', tip: '鼠标左键点击【信号机】', codeType:'SIGNAL'}
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 8,
|
||||
minDuration: 5,
|
||||
operateType: '0205',
|
||||
skinCode: '03',
|
||||
trainingName: '关闭信号({5} )',
|
||||
trainingRemark: '关闭信号',
|
||||
trainingType: '02',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '2994', tip: '鼠标左键点击【总取消】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '2994', tip: '鼠标左键点击【信号机】', codeType:'SIGNAL'}
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 8,
|
||||
minDuration: 5,
|
||||
operateType: '0205',
|
||||
skinCode: '03',
|
||||
trainingName: '取消进路({5} )',
|
||||
trainingRemark: '取消进路',
|
||||
trainingType: '02',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '2994', tip: '鼠标左键点击【总取消】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '2994', tip: '鼠标左键点击【信号机】', codeType:'SIGNAL'}
|
||||
]
|
||||
},
|
||||
{
|
||||
maxDuration: 8,
|
||||
minDuration: 5,
|
||||
operateType: '0201',
|
||||
skinCode: '03',
|
||||
trainingName: '进路建立({3})',
|
||||
trainingRemark: '进路建立',
|
||||
trainingType: '02',
|
||||
productTypes: ['01'],
|
||||
stepVOList: [
|
||||
{ deviceType: '04', orderNum: 1, operateCode: '3010', tip: '鼠标左键点击【排列进路】' },
|
||||
{ deviceType: '04', orderNum: 2, operateCode: '3010', tip: '鼠标左键点击【始端信号机】', codeType:'SIGNAL'},
|
||||
{ deviceType: '04', orderNum: 3, operateCode: '3010', tip: '鼠标左键点击【终端信号机】', codeType:'SIGNAL'}
|
||||
]
|
||||
},
|
||||
// 自动折返 (暂时没有)
|
||||
// 取消自动折返 (暂时没有)
|
||||
// 引导信号 (暂时没有)
|
||||
// 取消引导信号 (暂时没有)
|
||||
{
|
||||
// 暂时没有
|
||||
maxDuration: 15,
|
||||
minDuration: 8,
|
||||
operateType: '0801',
|
||||
|
@ -263,6 +263,9 @@ export default {
|
||||
this.showSelectStation && this.setStationList(val);
|
||||
},
|
||||
'$store.state.training.offsetStationCode': function(code) {
|
||||
if (code) {
|
||||
this.setCenter(code);
|
||||
}
|
||||
if (code && this.showSelectStation) {
|
||||
const deviceModel = this.$store.getters['map/getDeviceByCode'](code);
|
||||
if (deviceModel._type == 'Section' || deviceModel._type == 'Switch' || deviceModel._type == 'Signal' || deviceModel._type == 'Switch') {
|
||||
|
BIN
static/model/station/station3.FBX
Normal file
BIN
static/model/suidao/hebsuidao.FBX
Normal file
BIN
static/model/suidao/hebsuidao1.FBX
Normal file
BIN
static/texture/heb/Station11094.jpg
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
static/texture/heb/Station11136.jpg
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
static/texture/heb/Station17293.jpg
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
static/texture/heb/Station18398.jpg
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
static/texture/heb/Station22163.jpg
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
static/texture/heb/Station25464.jpg
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
static/texture/heb/Station28090.jpg
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
static/texture/heb/Station41999.jpg
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
static/texture/heb/Station44338.jpg
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
static/texture/heb/Station46464.jpg
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
static/texture/heb/Station50565.jpg
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
static/texture/heb/Station5361.jpg
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
static/texture/heb/Station60068.jpg
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
static/texture/heb/Station62429.jpg
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
static/texture/heb/Station64444.jpg
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
static/texture/heb/Station71700.jpg
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
static/texture/heb/Station72132.jpg
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
static/texture/heb/Station78164.jpg
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
static/texture/heb/Station79537.jpg
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
static/texture/heb/Station82618.jpg
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
static/texture/heb/Station85520.jpg
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
static/texture/heb/Station89483.jpg
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
static/texture/heb/Station96090.jpg
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
static/texture/heb/haerbinlist.jpg
Normal file
After Width: | Height: | Size: 416 KiB |
BIN
static/texture/heb/kongbai.jpg
Normal file
After Width: | Height: | Size: 22 KiB |