This commit is contained in:
fan 2020-10-09 17:27:57 +08:00
commit 5fec834c3f
95 changed files with 1019 additions and 495 deletions

View File

@ -318,3 +318,28 @@ export function updateCompetitionPracticalStep(data) {
data data
}); });
} }
/** 加载场景 */
export function loadCompetitionPracticalScene(group, id) {
return request({
url: `/api/v1/competitionPractical/load/${group}/${id}`,
method: 'PUT'
});
}
/** 场景开始演出 */
export function competitionPracticalSceneStart(group, memberId, mode) {
return request({
url: `/api/v1/competitionPractical/start/${group}?memberId=${memberId}&mode=${mode}`,
method: 'PUT'
});
}
/** 退出场景 */
export function exitCompetitionPracticalScene(group) {
return request({
url: `/api/v1/competitionPractical/exit/${group}`,
method: 'PUT'
});
}

View File

@ -16,8 +16,8 @@ if(BASE_API == "https://test.joylink.club/jlcloud"){
}else{ }else{
// uploadurl = "https://joylink.club/jlfile"; // uploadurl = "https://joylink.club/jlfile";
// asseturl = "https://joylink.club/oss/joylink"; // asseturl = "https://joylink.club/oss/joylink";
uploadurl = "../static"; uploadurl = "../cbtc/static";
asseturl = "../static"; asseturl = "../cbtc/static";
} }
const BASE_UPLOAD_API = uploadurl; const BASE_UPLOAD_API = uploadurl;
export const BASE_ASSET_API = asseturl; export const BASE_ASSET_API = asseturl;

View File

@ -1,5 +1,5 @@
<template> <template>
<el-form ref="form" :rules="rules" :model="formModel" :inline="inline" :label-width="form.labelWidth"> <el-form ref="form" :rules="rules" :model="formModel" :inline="inline" :label-width="form.labelWidth" @submit.native.prevent>
<template v-for="item in form.items"> <template v-for="item in form.items">
<template v-if="checkFieldType(item, 'text')"> <template v-if="checkFieldType(item, 'text')">
<el-form-item :key="item.prop" :prop="item.prop" :label="item.label" :required="item.required"> <el-form-item :key="item.prop" :prop="item.prop" :label="item.label" :required="item.required">

View File

@ -184,19 +184,19 @@ deviceRender[deviceType.VolumeControlDamper] = {
deviceRender[deviceType.IscsText] = { deviceRender[deviceType.IscsText] = {
_type: deviceType.IscsText, _type: deviceType.IscsText,
zlevel: 1, zlevel: 1,
z: 7 z: 6
}; };
/** 线段渲染配置 */ /** 线段渲染配置 */
deviceRender[deviceType.IscsLine] = { deviceRender[deviceType.IscsLine] = {
_type: deviceType.IscsLine, _type: deviceType.IscsLine,
zlevel: 1, zlevel: 1,
z: 4 z: 5
}; };
/** 矩形渲染配置 */ /** 矩形渲染配置 */
deviceRender[deviceType.IscsRect] = { deviceRender[deviceType.IscsRect] = {
_type: deviceType.IscsRect, _type: deviceType.IscsRect,
zlevel:1, zlevel:1,
z: 6 z: 5
}; };
/** 菱形渲染配置 */ /** 菱形渲染配置 */
deviceRender[deviceType.IscsRhombus] = { deviceRender[deviceType.IscsRhombus] = {
@ -220,7 +220,7 @@ deviceRender[deviceType.IscsArrow] = {
deviceRender[deviceType.IscsRadioText] = { deviceRender[deviceType.IscsRadioText] = {
_type: deviceType.IscsRadioText, _type: deviceType.IscsRadioText,
zlevel:1, zlevel:1,
z: 5 z: 6
}; };
/** 图片渲染配置 */ /** 图片渲染配置 */
deviceRender[deviceType.IscsPicture] = { deviceRender[deviceType.IscsPicture] = {
@ -360,7 +360,7 @@ deviceRender[deviceType.AfcDoorUnite] = {
deviceRender[deviceType.RectText] = { deviceRender[deviceType.RectText] = {
_type: deviceType.RectText, _type: deviceType.RectText,
zlevel: 1, zlevel: 1,
z: 4 z: 5
}; };
/** 福州 三角形 */ /** 福州 三角形 */

View File

@ -86,7 +86,8 @@ class MouseController extends Eventful {
mousedown(e) { mousedown(e) {
e.event.preventDefault(); e.event.preventDefault();
e.event.stopPropagation(); e.event.stopPropagation();
const em = new EventModel(e); const em = new EventModel(e);
this.$zr.dom.focus();
this.eventTarget = em.eventTarget; this.eventTarget = em.eventTarget;
this._offsetX = e.offsetX; this._offsetX = e.offsetX;
this._offsetY = e.offsetY; this._offsetY = e.offsetY;

View File

@ -8,7 +8,7 @@ export default class iscsCircle extends Group {
this._type = device.model._type; this._type = device.model._type;
this._code = device.model.code; this._code = device.model.code;
this.zlevel = device.model.zlevel; this.zlevel = device.model.zlevel;
this.z = device.model.z; this.z = device.model.z;
this.create(); this.create();
} }
create() { create() {
@ -19,7 +19,8 @@ export default class iscsCircle extends Group {
}); });
this.iscsCircle = new Circle({ this.iscsCircle = new Circle({
zlevel: model.zlevel, zlevel: model.zlevel,
z: model.z, z: model.z,
z2: model.z2||0,
shape: { shape: {
cx:this.model.radius, cx:this.model.radius,
cy:this.model.radius, cy:this.model.radius,

View File

@ -53,7 +53,8 @@ export default class iscsTriangle extends Group {
} }
this.iscsTriangle = new Polygon({ this.iscsTriangle = new Polygon({
zlevel: model.zlevel, zlevel: model.zlevel,
z: model.z, z: model.z,
z2: model.z2||0,
shape: { shape: {
points:[ points:[
[point1.x, point1.y], [point1.x, point1.y],

View File

@ -52,7 +52,8 @@ export default class line extends Group {
}); });
this.iscsLine = new Polyline({ this.iscsLine = new Polyline({
zlevel: model.zlevel, zlevel: model.zlevel,
z: model.z, z: model.z,
z2: model.z2||0,
draggable: false, draggable: false,
shape: { shape: {
points: modelPoints points: modelPoints
@ -74,7 +75,8 @@ export default class line extends Group {
} }
this.arrows = new Polygon({ this.arrows = new Polygon({
zlevel: model.zlevel, zlevel: model.zlevel,
z: model.z, z: model.z,
z2: model.z2||0,
origin: [0, 0], origin: [0, 0],
rotation: rotation, rotation: rotation,
shape: { shape: {
@ -101,7 +103,8 @@ export default class line extends Group {
const y = model.points[this.model.points.length - 1].y - model.points[this.model.points.length - 2].y; const y = model.points[this.model.points.length - 1].y - model.points[this.model.points.length - 2].y;
this.arrows = new Polygon({ this.arrows = new Polygon({
zlevel: model.zlevel, zlevel: model.zlevel,
z: model.z, z: model.z,
z2: model.z2||0,
origin: [x, y], origin: [x, y],
rotation: rotation, rotation: rotation,
shape: { shape: {

View File

@ -20,7 +20,8 @@ export default class rect extends Group {
const lineDash = model.type == 'dashed' ? [8, 5] : [0, 0]; const lineDash = model.type == 'dashed' ? [8, 5] : [0, 0];
this.iscsRect = new Rect({ this.iscsRect = new Rect({
zlevel: model.zlevel, zlevel: model.zlevel,
z: model.z, z: model.z,
z2: model.z2||0,
shape: { shape: {
x: 0, x: 0,
y: 0, y: 0,

View File

@ -2,7 +2,7 @@ export function SetScene(project) {
var scene = new THREE.Scene(); var scene = new THREE.Scene();
// var cubeTextureLoader = new THREE.CubeTextureLoader(); // var cubeTextureLoader = new THREE.CubeTextureLoader();
// //
// cubeTextureLoader.setPath( '../../static/skybox/star/' ); // cubeTextureLoader.setPath( '../../cbtc/static/skybox/star/' );
// //
// var cubeTexture = cubeTextureLoader.load( [ // var cubeTexture = cubeTextureLoader.load( [
// 'px.png', 'nx.png', // 'px.png', 'nx.png',
@ -13,9 +13,9 @@ export function SetScene(project) {
var bgTexture; var bgTexture;
// console.log(project); // console.log(project);
if(project == "login" || project == undefined){ if(project == "login" || project == undefined){
bgTexture = new THREE.TextureLoader().load("../../static/background/other.jpg"); bgTexture = new THREE.TextureLoader().load("../../cbtc/static/background/other.jpg");
}else if(project == "heb"){ }else if(project == "heb"){
bgTexture = new THREE.TextureLoader().load("../../static/background/other.jpg"); bgTexture = new THREE.TextureLoader().load("../../cbtc/static/background/other.jpg");
} }
scene.background = bgTexture; scene.background = bgTexture;
// cubeTexture.dispos e(); // cubeTexture.dispos e();

View File

@ -46,7 +46,7 @@ export function getmodels(data) {
packageName:"高位三灯信号机", packageName:"高位三灯信号机",
deviceType:"SimulationSignal", deviceType:"SimulationSignal",
type:"signal", type:"signal",
url:"../../static/MODEL/signal/d3d.FBX" url:"../../cbtc/static/MODEL/signal/d3d.FBX"
} }
assets.push(assetsignal); assets.push(assetsignal);
@ -57,7 +57,7 @@ export function getmodels(data) {
packageName:"6节列车", packageName:"6节列车",
deviceType:"SimulationTrain", deviceType:"SimulationTrain",
type:"train", type:"train",
url:"../../static/MODEL/train/train.FBX" url:"../../cbtc/static/MODEL/train/train.FBX"
} }
assets.push(assettrain); assets.push(assettrain);
@ -67,8 +67,8 @@ export function getmodels(data) {
packageName:"沙盘驾驶内侧站台", packageName:"沙盘驾驶内侧站台",
deviceType:"SimulationStation", deviceType:"SimulationStation",
type:"stationInside", type:"stationInside",
url:"../../static/MODEL/station/fuzhou.FBX" url:"../../cbtc/static/MODEL/station/fuzhou.FBX"
}//"../../static/MODEL/station/fuzhou/fuzhou.FBX" }//"../../cbtc/static/MODEL/station/fuzhou/fuzhou.FBX"
assets.push(assetneicestation); assets.push(assetneicestation);
let assetswitch = { let assetswitch = {
@ -77,7 +77,7 @@ export function getmodels(data) {
packageName:"轨道通用道岔", packageName:"轨道通用道岔",
deviceType:"SimulationSwitch", deviceType:"SimulationSwitch",
type:"switch", type:"switch",
url:"../../static/MODEL/auto/autoswitch.FBX" url:"../../cbtc/static/MODEL/auto/autoswitch.FBX"
} }
assets.push(assetswitch); assets.push(assetswitch);
@ -87,7 +87,7 @@ export function getmodels(data) {
packageName:"沙盘驾驶外侧站台", packageName:"沙盘驾驶外侧站台",
deviceType:"SimulationStation", deviceType:"SimulationStation",
type:"stationOutside", type:"stationOutside",
url:"../../static/MODEL/station/waicestation.FBX" url:"../../cbtc/static/MODEL/station/waicestation.FBX"
} }
assets.push(assetwaicestation); assets.push(assetwaicestation);
@ -97,7 +97,7 @@ export function getmodels(data) {
packageName:"沙盘驾驶三站台", packageName:"沙盘驾驶三站台",
deviceType:"SimulationStation", deviceType:"SimulationStation",
type:"stationThree", type:"stationThree",
url:"../../static/MODEL/station/station3.FBX" url:"../../cbtc/static/MODEL/station/station3.FBX"
} }
assets.push(assetstation3); assets.push(assetstation3);
@ -107,7 +107,7 @@ export function getmodels(data) {
packageName:"隧道背景", packageName:"隧道背景",
deviceType:"SimulationBg", deviceType:"SimulationBg",
type:"suidao", type:"suidao",
url:"../../static/MODEL/suidao/xiansuidao.FBX" url:"../../cbtc/static/MODEL/suidao/xiansuidao.FBX"
} }
assets.push(backgroundmodel); assets.push(backgroundmodel);

View File

@ -19,10 +19,10 @@ export function TrainList() {
// model // model
THREE.Loader.Handlers.add( /\.dds$/i, new THREE.DDSLoader() ) ; THREE.Loader.Handlers.add( /\.dds$/i, new THREE.DDSLoader() ) ;
for(let i=0;i<data.length;i++){ for(let i=0;i<data.length;i++){
new THREE.MTLLoader().setPath( '../../static/MODEL/train/' ).load( 'train.mtl', function ( materials ) { new THREE.MTLLoader().setPath( '../../cbtc/static/MODEL/train/' ).load( 'train.mtl', function ( materials ) {
materials.preload(); materials.preload();
new THREE.OBJLoader().setMaterials( materials ).setPath( '../../static/MODEL/train/' ).load( 'train.obj', function ( object ) { new THREE.OBJLoader().setMaterials( materials ).setPath( '../../cbtc/static/MODEL/train/' ).load( 'train.obj', function ( object ) {
object.name = data[i].code; object.name = data[i].code;

View File

@ -322,7 +322,6 @@ export function JLmap3dEdit(dom, data, mapid) {
this.testrail = function(){ this.testrail = function(){
if(stationStopGroup.children.length == 0){ if(stationStopGroup.children.length == 0){
for(let k in scope.mapdata.sectionlist.sections.datalist){ for(let k in scope.mapdata.sectionlist.sections.datalist){
if(scope.mapdata.sectionlist.sections.datalist[k].standTrack == true){ if(scope.mapdata.sectionlist.sections.datalist[k].standTrack == true){
var geometry = new THREE.PlaneGeometry( 10, 10, 4 ); var geometry = new THREE.PlaneGeometry( 10, 10, 4 );
var material = new THREE.MeshBasicMaterial( {color: 0xffff00, side: THREE.DoubleSide} ); var material = new THREE.MeshBasicMaterial( {color: 0xffff00, side: THREE.DoubleSide} );
@ -343,31 +342,28 @@ export function JLmap3dEdit(dom, data, mapid) {
}else{ }else{
for(let i=0,leni = stationStopGroup.children.length;i<leni;i++){ for(let i=0,leni = stationStopGroup.children.length;i<leni;i++){
let k = stationStopGroup.children[i].code; let k = stationStopGroup.children[i].code;
if(stationStopGroup.children[i].stopType == "left"){ if(stationStopGroup.children[i].stopType == "left"){
stationStopGroup.children[i].position.set(scope.mapdata.sectionlist.sections.datalist[k].railpoint[0].x+scope.mapdata.sectionlist.sections.datalist[k].leftStopPointOffset,scope.mapdata.sectionlist.sections.datalist[k].railpoint[1].y,scope.mapdata.sectionlist.sections.datalist[k].railpoint[1].z); stationStopGroup.children[i].position.set(scope.mapdata.sectionlist.sections.datalist[k].railpoint[0].x+scope.mapdata.sectionlist.sections.datalist[k].mesh.leftStopPointOffset,scope.mapdata.sectionlist.sections.datalist[k].railpoint[1].y,scope.mapdata.sectionlist.sections.datalist[k].railpoint[1].z);
}else{ }else{
stationStopGroup.children[i].position.set(scope.mapdata.sectionlist.sections.datalist[k].railpoint[0].x+scope.mapdata.sectionlist.sections.datalist[k].rightStopPointOffset,scope.mapdata.sectionlist.sections.datalist[k].railpoint[1].y,scope.mapdata.sectionlist.sections.datalist[k].railpoint[1].z); stationStopGroup.children[i].position.set(scope.mapdata.sectionlist.sections.datalist[k].railpoint[0].x+scope.mapdata.sectionlist.sections.datalist[k].mesh.rightStopPointOffset,scope.mapdata.sectionlist.sections.datalist[k].railpoint[1].y,scope.mapdata.sectionlist.sections.datalist[k].railpoint[1].z);
} }
} }
} }
// console.log("testrail");
// console.log(scope.mapdata);
// scope.mapdata.raillist.resetrail(scope.mapdata,scope.scene);
}; };
//自动匹配轨道信号灯道岔
this.autoss = function(){ this.autoss = function(){
console.log("autoss"); console.log("autoss");
console.log(scope.mapdata); // console.log(scope.mapdata);
scope.mapdata.signallist.resetsignal(scope.mapdata); scope.mapdata.signallist.resetsignal(scope.mapdata);
scope.mapdata.switchlist.resetswitch(scope.mapdata); scope.mapdata.switchlist.resetswitch(scope.mapdata);
//old //old
// scope.mapdata.signallist.resetsignal(scope.mapdata.linklist); // scope.mapdata.signallist.resetsignal(scope.mapdata.linklist);
}; };
//区段左右相邻的区段对齐 //区段左右对齐
this.alignmentSection = function(alignmentCode,direct){ this.alignmentSection = function(alignmentCode,direct){
let oldobject = scope.mapdata.sectionlist.sections.datalist[alignmentCode].mesh; let oldobject = scope.mapdata.sectionlist.sections.datalist[alignmentCode].mesh;
let alignmentModel = scope.mapdata.sectionlist.sections.datalist[alignmentCode]; let alignmentModel = scope.mapdata.sectionlist.sections.datalist[alignmentCode];
@ -481,6 +477,7 @@ export function JLmap3dEdit(dom, data, mapid) {
objectparent.add(newAlignmentSection); objectparent.add(newAlignmentSection);
}; };
//区段平整
this.flatSection = function(alignmentCode){ this.flatSection = function(alignmentCode){
let oldobject = scope.mapdata.sectionlist.sections.datalist[alignmentCode].mesh; let oldobject = scope.mapdata.sectionlist.sections.datalist[alignmentCode].mesh;
let alignmentModel = scope.mapdata.sectionlist.sections.datalist[alignmentCode]; let alignmentModel = scope.mapdata.sectionlist.sections.datalist[alignmentCode];
@ -548,6 +545,8 @@ export function JLmap3dEdit(dom, data, mapid) {
scope.mapdata.sectionlist.sections.datalist[alignmentCode].mesh = newAlignmentSection; scope.mapdata.sectionlist.sections.datalist[alignmentCode].mesh = newAlignmentSection;
objectparent.add(newAlignmentSection); objectparent.add(newAlignmentSection);
} }
//屏幕自适应
function onWindowResize() { function onWindowResize() {
//窗口自适应 //窗口自适应
scope.camera.aspect = window.innerWidth / window.innerHeight; scope.camera.aspect = window.innerWidth / window.innerHeight;
@ -613,6 +612,7 @@ export function JLmap3dEdit(dom, data, mapid) {
} }
//画面渲染
function render() { function render() {
scope.renderer.render( scope.scene, scope.camera ); scope.renderer.render( scope.scene, scope.camera );

View File

@ -733,7 +733,7 @@ export function SectionList() {
// console.log("-------------------"); // console.log("-------------------");
// console.log(jlmap3ddata.sectionlist.sections.datalist); // console.log(jlmap3ddata.sectionlist.sections.datalist);
// console.log(sectiondata); // console.log(sectiondata);
var texture = new THREE.TextureLoader().load( '../../static/test/z0251.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/test/z0251.png' );
texture.wrapS = texture.wrapT = THREE.RepeatWrapping; texture.wrapS = texture.wrapT = THREE.RepeatWrapping;
texture.repeat.set( 1,1); texture.repeat.set( 1,1);

View File

@ -20,7 +20,7 @@ export function SectionList() {
this.initpromise = function(jlmap3ddata,assetloader,sectiondata,switchdata,scene){ this.initpromise = function(jlmap3ddata,assetloader,sectiondata,switchdata,scene){
var texture = new THREE.TextureLoader().load( '../../static/test/z0251.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/test/z0251.png' );
texture.wrapS = texture.wrapT = THREE.RepeatWrapping; texture.wrapS = texture.wrapT = THREE.RepeatWrapping;
texture.repeat.set( 1,1); texture.repeat.set( 1,1);
@ -72,7 +72,7 @@ export function SectionList() {
sectiondata[i].standRightLeftX = sectiondata[i].points[1].x; sectiondata[i].standRightLeftX = sectiondata[i].points[1].x;
sectiondata[i].standRightRightY = sectiondata[i].points[1].y; sectiondata[i].standRightRightY = sectiondata[i].points[1].y;
scope.sections.datalist[sectiondata[i].code].leftStopPointOffset = sectiondata[i].leftStopPointOffset; scope.sections.datalist[sectiondata[i].code].leftStopPointOffset = sectiondata[i].leftStopPointOffset;
scope.sections.datalist[sectiondata[i].code].rightStopPointOffset = sectiondata[i].leftStopPointOffset+124; scope.sections.datalist[sectiondata[i].code].rightStopPointOffset = sectiondata[i].leftStopPointOffset+120;
// if(sectiondata[i].lengthFact<70){ // if(sectiondata[i].lengthFact<70){
// scope.sections.datalist[sectiondata[i].code].lengthFact = 63; // scope.sections.datalist[sectiondata[i].code].lengthFact = 63;
@ -384,14 +384,14 @@ export function SectionList() {
assetloader.modellist[num2].mesh.rotation.x = 0; assetloader.modellist[num2].mesh.rotation.x = 0;
} }
} }
//根据站台区段创建站台位置 128停车点距离 //根据站台区段创建站台位置 120停车点距离
for(let j=0,lenj=stations.length;j<lenj;j++){ for(let j=0,lenj=stations.length;j<lenj;j++){
// console.log(j); // console.log(j);
console.log(stations[j]); console.log(stations[j]);
let direction1 = scope.sections.datalist[stations[j].stands[0].section]; let direction1 = scope.sections.datalist[stations[j].stands[0].section];
let direction2 = scope.sections.datalist[stations[j].stands[1].section]; let direction2 = scope.sections.datalist[stations[j].stands[1].section];
console.log(direction1); console.log(direction1);
let x = direction1.railpoint[0].x+direction1.leftStopPointOffset+64; let x = direction1.railpoint[0].x+direction1.leftStopPointOffset+60;
let z = (direction1.railpoint[0].z+direction2.railpoint[0].z)/2; let z = (direction1.railpoint[0].z+direction2.railpoint[0].z)/2;
let mesh; let mesh;
if(stations[j].stands[0].inside == true){ if(stations[j].stands[0].inside == true){
@ -414,7 +414,7 @@ export function SectionList() {
}; };
function createsection(origin,position,start,py){ function createsection(origin,position,start,py){
var texture = new THREE.TextureLoader().load( '../../static/test/z0251.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/test/z0251.png' );
texture.wrapS = texture.wrapT = THREE.RepeatWrapping; texture.wrapS = texture.wrapT = THREE.RepeatWrapping;
texture.repeat.set( 1,1); texture.repeat.set( 1,1);
@ -804,7 +804,7 @@ export function SectionList() {
} }
this.loadpromise = function(jlmap3ddata,assetloader,sectiondata,section2d,switch2d,scene){ this.loadpromise = function(jlmap3ddata,assetloader,sectiondata,section2d,switch2d,scene){
var texture = new THREE.TextureLoader().load( '../../static/test/z0251.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/test/z0251.png' );
texture.wrapS = texture.wrapT = THREE.RepeatWrapping; texture.wrapS = texture.wrapT = THREE.RepeatWrapping;
texture.repeat.set( 1,1); texture.repeat.set( 1,1);
@ -862,7 +862,7 @@ export function SectionList() {
}); });
if(newsection.standTrack == false){ if(newsection.standTrack == false){
testmesh2 = new THREE.Mesh( geometry, selectmaterial ); testmesh2 = new THREE.Mesh( geometry, randomMaterail );
}else{ }else{
testmesh2 = new THREE.Mesh( geometry, selectmaterial ); testmesh2 = new THREE.Mesh( geometry, selectmaterial );
} }
@ -1002,7 +1002,7 @@ export function SectionList() {
scope.sections.datalist[section2d[i].code].standRightLeftX = section2d[i].points[1].x; scope.sections.datalist[section2d[i].code].standRightLeftX = section2d[i].points[1].x;
scope.sections.datalist[section2d[i].code].standRightRightY = section2d[i].points[1].y; scope.sections.datalist[section2d[i].code].standRightRightY = section2d[i].points[1].y;
scope.sections.datalist[section2d[i].code].leftStopPointOffset = section2d[i].leftStopPointOffset; scope.sections.datalist[section2d[i].code].leftStopPointOffset = section2d[i].leftStopPointOffset;
scope.sections.datalist[section2d[i].code].rightStopPointOffset = section2d[i].leftStopPointOffset+124; scope.sections.datalist[section2d[i].code].rightStopPointOffset = section2d[i].leftStopPointOffset+120;
} }
} }

View File

@ -1,13 +1,13 @@
export function Signallightload(lights) { export function Signallightload(lights) {
settexture(lights, "red", '../../static/MODEL/device/signal/1.jpg'); settexture(lights, "red", '../../cbtc/static/MODEL/device/signal/1.jpg');
settexture(lights, "yellow", '../../static/MODEL/device/signal/2.jpg'); settexture(lights, "yellow", '../../cbtc/static/MODEL/device/signal/2.jpg');
settexture(lights, "green", '../../static/MODEL/device/signal/3.jpg'); settexture(lights, "green", '../../cbtc/static/MODEL/device/signal/3.jpg');
settexture(lights, "black", '../../static/MODEL/device/signal/4.jpg'); settexture(lights, "black", '../../cbtc/static/MODEL/device/signal/4.jpg');
} }
function settexture(lights, name, textureurl) { function settexture(lights, name, textureurl) {

View File

@ -5,16 +5,16 @@ var Staticmodel = {
deviceType: "Switch", deviceType: "Switch",
type: "fuzhou", type: "fuzhou",
picUrl: "", picUrl: "",
assetUrl: "./../static/MODEL/device/switch/ZD6D.FBX" assetUrl: "./../cbtc/static/MODEL/device/switch/ZD6D.FBX"
},//"https://joylink.club/oss/wx/switch/switch.FBX" },//"https://joylink.club/oss/wx/switch/switch.FBX"
//../../static/MODEL/device/switch.FBX //../../cbtc/static/MODEL/device/switch.FBX
Signal: { Signal: {
id: "2", id: "2",
name: "信号机", name: "信号机",
deviceType: "Signal", deviceType: "Signal",
type: "low", type: "low",
picUrl: "", picUrl: "",
assetUrl: "../../static/MODEL/device/signal/signal.FBX" assetUrl: "../../cbtc/static/MODEL/device/signal/signal.FBX"
}, },
stationstand: { stationstand: {
id: "3", id: "3",
@ -22,9 +22,9 @@ var Staticmodel = {
deviceType: "stationstand", deviceType: "stationstand",
type: "low", type: "low",
picUrl: "", picUrl: "",
assetUrl: "../../static/MODEL/device/stationstand/stationstand.FBX" assetUrl: "../../cbtc/static/MODEL/device/stationstand/stationstand.FBX"
//https://joylink.club/oss/wx/stationstand/stationstand.FBX //https://joylink.club/oss/wx/stationstand/stationstand.FBX
//../../static/MODEL/device/stationstand.FBX //../../cbtc/static/MODEL/device/stationstand.FBX
}, },
section: { section: {
@ -33,9 +33,9 @@ var Staticmodel = {
deviceType: "section", deviceType: "section",
type: "low", type: "low",
picUrl: "", picUrl: "",
assetUrl: "../../static/MODEL/device/section/section.FBX" assetUrl: "../../cbtc/static/MODEL/device/section/section.FBX"
//https://joylink.club/oss/wx/stationstand/stationstand.FBX //https://joylink.club/oss/wx/stationstand/stationstand.FBX
//../../static/MODEL/device/stationstand.FBX //../../cbtc/static/MODEL/device/stationstand.FBX
}, },
room: { room: {
@ -44,9 +44,9 @@ var Staticmodel = {
deviceType: "room", deviceType: "room",
type: "low", type: "low",
picUrl: "", picUrl: "",
assetUrl: "../../static/MODEL/device/room/room.FBX" assetUrl: "../../cbtc/static/MODEL/device/room/room.FBX"
//https://joylink.club/oss/wx/stationstand/stationstand.FBX //https://joylink.club/oss/wx/stationstand/stationstand.FBX
//../../static/MODEL/device/stationstand.FBX //../../cbtc/static/MODEL/device/stationstand.FBX
} }

View File

@ -688,7 +688,7 @@ export function Jl3ddevice(dom,group,token) {
} }
} }
var beauty = new Image(); var beauty = new Image();
beauty.src = "../../static/texture/guide.png"; beauty.src = "../../cbtc/static/texture/guide.png";
//canvas文字贴图方法 //canvas文字贴图方法
//PS:待提炼 增强功能 //PS:待提炼 增强功能
function getTextCanvas(text){ function getTextCanvas(text){

View File

@ -828,7 +828,7 @@ export function Jl3ddeviceNew(dom,group,token,skinCode) {
} }
} }
var beauty = new Image(); var beauty = new Image();
beauty.src = "../../static/texture/guide.png"; beauty.src = "../../cbtc/static/texture/guide.png";
//canvas文字贴图方法 //canvas文字贴图方法
//PS:待提炼 增强功能 //PS:待提炼 增强功能
function getTextCanvas(text){ function getTextCanvas(text){

View File

@ -1,7 +1,7 @@
import { getBaseUrl } from '@/utils/baseUrl'; import { getBaseUrl } from '@/utils/baseUrl';
const BASE_API = getBaseUrl(); const BASE_API = getBaseUrl();
let modelurl = "../../static/MODEL/jdq/"; let modelurl = "../../cbtc/static/MODEL/jdq/";
// if(BASE_API == 'https://joylink.club/jlcloud'){ // if(BASE_API == 'https://joylink.club/jlcloud'){
// modelurl = "https://joylink.club/oss/jdq/"; // modelurl = "https://joylink.club/oss/jdq/";
// }else if(BASE_API == 'https://test.joylink.club/jlcloud'){ // }else if(BASE_API == 'https://test.joylink.club/jlcloud'){

View File

@ -61,7 +61,7 @@ export function Jl3ddevice(dom,serviceid) {
//定义场景(渲染容器) //定义场景(渲染容器)
let scene = new THREE.Scene(); let scene = new THREE.Scene();
var bgTexture = new THREE.TextureLoader().load("../../static/background/other.jpg"); var bgTexture = new THREE.TextureLoader().load("../../cbtc/static/background/other.jpg");
scene.background = bgTexture; scene.background = bgTexture;
//定义全局光 //定义全局光
@ -540,7 +540,7 @@ export function Jl3ddevice(dom,serviceid) {
} }
var beauty = new Image(); var beauty = new Image();
beauty.src = "../../static/texture/guide.png"; beauty.src = "../../cbtc/static/texture/guide.png";
//canvas文字贴图方法 //canvas文字贴图方法
//PS:待提炼 增强功能 //PS:待提炼 增强功能
function getTextCanvas(text){ function getTextCanvas(text){

View File

@ -56,7 +56,7 @@ export function Jl3ddevice(dom,serviceid) {
//定义场景(渲染容器) //定义场景(渲染容器)
let scene = new THREE.Scene(); let scene = new THREE.Scene();
var bgTexture = new THREE.TextureLoader().load("../../static/background/other.jpg"); var bgTexture = new THREE.TextureLoader().load("../../cbtc/static/background/other.jpg");
scene.background = bgTexture; scene.background = bgTexture;
//定义全局光 //定义全局光
@ -537,7 +537,7 @@ export function Jl3ddevice(dom,serviceid) {
} }
var beauty = new Image(); var beauty = new Image();
beauty.src = "../../static/texture/guide.png"; beauty.src = "../../cbtc/static/texture/guide.png";
//canvas文字贴图方法 //canvas文字贴图方法
//PS:待提炼 增强功能 //PS:待提炼 增强功能
function getTextCanvas(text){ function getTextCanvas(text){

View File

@ -110,7 +110,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
var rails = null; var rails = null;
this.webwork=new Worker('../../static/workertest/trainworker.js'); this.webwork=new Worker('../../cbtc/static/workertest/trainworker.js');
// 地图模型数据 // 地图模型数据
let mapdata = new Jl3ddata(); let mapdata = new Jl3ddata();
@ -130,7 +130,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
// load a sound and set it as the Audio object's buffer // load a sound and set it as the Audio object's buffer
// let audioLoader = new THREE.AudioLoader(); // let audioLoader = new THREE.AudioLoader();
// audioLoader.load( '../../static/audio/trainmove.ogg', function( buffer ) { // audioLoader.load( '../../cbtc/static/audio/trainmove.ogg', function( buffer ) {
// sound.setBuffer( buffer ); // sound.setBuffer( buffer );
// sound.setLoop( true ); // sound.setLoop( true );
// sound.setVolume( 0 ); // sound.setVolume( 0 );
@ -159,7 +159,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
if(assetsdata.link){ if(assetsdata.link){
scope.datatype = "old"; scope.datatype = "old";
// datanew(); // datanew();
// scope.jsonwebwork = new Worker("../../static/workertest/jsonworker.js"); // scope.jsonwebwork = new Worker("../../cbtc/static/workertest/jsonworker.js");
// scope.Subscribe = new Jlmap3dSubscribe(scope,routegroup,scope.jsonwebwork); // scope.Subscribe = new Jlmap3dSubscribe(scope,routegroup,scope.jsonwebwork);
// scope.Subscribe.socketon(scope.Subscribe.topic); // scope.Subscribe.socketon(scope.Subscribe.topic);
@ -208,7 +208,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
}, 2000); }, 2000);
}else{ }else{
scope.datatype = "new"; scope.datatype = "new";
driverWebWorker = new Worker("../../static/workertest/driverWebWorker.js"); driverWebWorker = new Worker("../../cbtc/static/workertest/driverWebWorker.js");
scope.Subscribe = new Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,driverWebWorker,stats); scope.Subscribe = new Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,driverWebWorker,stats);
datanew(); datanew();

View File

@ -701,7 +701,7 @@ export function Jl3dfaultdevice(dom,group,token,skinCode) {
} }
} }
var beauty = new Image(); var beauty = new Image();
beauty.src = "../../static/texture/guide.png"; beauty.src = "../../cbtc/static/texture/guide.png";
//canvas文字贴图方法 //canvas文字贴图方法
//PS:待提炼 增强功能 //PS:待提炼 增强功能
function getTextCanvas(text){ function getTextCanvas(text){

View File

@ -73,7 +73,7 @@ export function Jl3dfaultdeviceVR(dom,group,skinCode) {
let playerPosition = new THREE.Vector3( -3.5, 0.5, 5.5 ); let playerPosition = new THREE.Vector3( -3.5, 0.5, 5.5 );
let targetPosition = new THREE.Vector3(); let targetPosition = new THREE.Vector3();
let pathFinder = new THREE.Pathfinding(); let pathFinder = new THREE.Pathfinding();
var textureNav = new THREE.TextureLoader().load( '../../static/vrtest/daohang.png' ); var textureNav = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/daohang.png' );
textureNav.wrapS = THREE.RepeatWrapping; textureNav.wrapS = THREE.RepeatWrapping;
textureNav.wrapT=THREE.RepeatWrapping; textureNav.wrapT=THREE.RepeatWrapping;
textureNav.repeat.x = 40; textureNav.repeat.x = 40;
@ -195,7 +195,7 @@ export function Jl3dfaultdeviceVR(dom,group,skinCode) {
// load a resource // load a resource
loaderObj.load( loaderObj.load(
// resource URL // resource URL
'../../static/vrtest/path.obj', '../../cbtc/static/vrtest/path.obj',
// called when resource is loaded // called when resource is loaded
function ( object ) { function ( object ) {
@ -267,7 +267,7 @@ export function Jl3dfaultdeviceVR(dom,group,skinCode) {
document.addEventListener( "mousedown", onselect, false ); document.addEventListener( "mousedown", onselect, false );
let vrwebworker = new Worker("../../static/workertest/vrwebworker.js"); let vrwebworker = new Worker("../../cbtc/static/workertest/vrwebworker.js");
let connectmsg = { let connectmsg = {
type:'init', type:'init',
@ -1144,7 +1144,7 @@ export function Jl3dfaultdeviceVR(dom,group,skinCode) {
var loader = new THREE.TextureLoader(); var loader = new THREE.TextureLoader();
var circle; var circle;
loader.load( loader.load(
'../../static/vrtest/ring.png', '../../cbtc/static/vrtest/ring.png',
// onLoad callback // onLoad callback
function ( texture ) { function ( texture ) {
@ -1404,7 +1404,7 @@ export function Jl3dfaultdeviceVR(dom,group,skinCode) {
} }
} }
var beauty = new Image(); var beauty = new Image();
beauty.src = "../../static/texture/scene.png"; beauty.src = "../../cbtc/static/texture/scene.png";
//canvas文字贴图方法 //canvas文字贴图方法
//PS:待提炼 增强功能 //PS:待提炼 增强功能
function getTextCanvas(text){ function getTextCanvas(text){

View File

@ -170,7 +170,7 @@ export function Jl3dOtherVR(dom,group,skinCode) {
this.controls.update(); this.controls.update();
let otherVrViewWorker = new Worker("../../static/workertest/otherVrViewWorker.js"); let otherVrViewWorker = new Worker("../../cbtc/static/workertest/otherVrViewWorker.js");
let connectmsg = { let connectmsg = {
type:'init', type:'init',
@ -822,7 +822,7 @@ export function Jl3dOtherVR(dom,group,skinCode) {
} }
} }
var beauty = new Image(); var beauty = new Image();
beauty.src = "../../static/texture/scene.png"; beauty.src = "../../cbtc/static/texture/scene.png";
//canvas文字贴图方法 //canvas文字贴图方法
//PS:待提炼 增强功能 //PS:待提炼 增强功能
function getTextCanvas(text){ function getTextCanvas(text){

View File

@ -19,6 +19,10 @@ let controller1, controller2,raycastervr;
//地板 //地板
let floors = []; let floors = [];
var loader = new THREE.TextureLoader();
var circle;
export function Jl3dTrainRescueVr(dom,group,skinCode) { export function Jl3dTrainRescueVr(dom,group,skinCode) {
var scope = this; var scope = this;
@ -99,9 +103,35 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
this.controls.target.set( 0, 1.6, 0 ); this.controls.target.set( 0, 1.6, 0 );
this.controls.update(); this.controls.update();
this.modelmanager = new ModelManagerVR();
loader.load(
'../../cbtc/static/vrtest/ring.png',
// onLoad callback
function ( texture ) {
var material = new THREE.MeshBasicMaterial( {
map: texture,
transparent: true,
} );
var geometry = new THREE.PlaneBufferGeometry( 0.6, 0.6, 32 );
// var geometry = new THREE.CircleBufferGeometry( 0.2, 32 );
circle = new THREE.Mesh( geometry, material );
circle.rotation.x = -Math.PI/2;
scope.scene.add( circle );
scope.modelmanager.loadpromise(TrainRescueStatic,mixers);
},
// onProgress callback currently not supported
undefined,
// onError callback
function ( err ) {
console.error( 'An error happened.' );
}
);
this.modelmanager = new ModelManagerVR();
this.modelmanager.loadpromise(TrainRescueStatic,mixers);
let timer=setInterval(function(){ let timer=setInterval(function(){
@ -133,7 +163,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
document.addEventListener( "mousedown", onselect, false ); document.addEventListener( "mousedown", onselect, false );
let vrwebworker = new Worker("../../static/workertest/vrwebworker.js"); let vrwebworker = new Worker("../../cbtc/static/workertest/vrwebworker.js");
let connectmsg = { let connectmsg = {
type:'init', type:'init',
@ -269,33 +299,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
} }
var loader = new THREE.TextureLoader();
var circle;
loader.load(
'../../static/vrtest/ring.png',
// onLoad callback
function ( texture ) {
var material = new THREE.MeshBasicMaterial( {
map: texture,
transparent: true,
} );
var geometry = new THREE.PlaneBufferGeometry( 0.6, 0.6, 32 );
// var geometry = new THREE.CircleBufferGeometry( 0.2, 32 );
circle = new THREE.Mesh( geometry, material );
circle.rotation.x = -Math.PI/2;
scope.scene.add( circle );
},
// onProgress callback currently not supported
undefined,
// onError callback
function ( err ) {
console.error( 'An error happened.' );
}
);
function intersectObjects( controller ) { function intersectObjects( controller ) {
@ -322,10 +326,52 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
intersectObjects( controller1 ); intersectObjects( controller1 );
if (mixers){ if (mixers){
for (let k in mixers) { // for (let k in mixers) {
delta = clock.getDelta(); if(mixers["animatemodel"]._actions[0].isRunning()){
mixers[k].update(delta); delta = clock.getDelta();
if(controlStage == true){
if(animateStage == "0"){
if(TrainRescueStatic.animatemodel.action.time < 2.6){
mixers["animatemodel"].update(delta);
}else{
TrainRescueStatic.animatemodel.action.paused = true;
}
}
if(animateStage == "1"){
if(TrainRescueStatic.animatemodel.action.time >= 2.6 && TrainRescueStatic.animatemodel.action.time <5.2){
mixers["animatemodel"].update(delta);
}else{
TrainRescueStatic.animatemodel.action.paused = true;
}
}
if(animateStage == "2"){
if(TrainRescueStatic.animatemodel.action.time >= 5.2 && TrainRescueStatic.animatemodel.action.time <7.8){
mixers["animatemodel"].update(delta);
}else{
TrainRescueStatic.animatemodel.action.paused = true;
}
}
if(animateStage == "3"){
if(TrainRescueStatic.animatemodel.action.time >= 7.8 && TrainRescueStatic.animatemodel.action.time <20){
mixers["animatemodel"].update(delta);
}else{
TrainRescueStatic.animatemodel.action.paused = true;
}
}
if(animateStage == "4"){
if(TrainRescueStatic.animatemodel.action.time >= 20){
mixers["animatemodel"].update(delta);
}else{
TrainRescueStatic.animatemodel.action.paused = true;
}
}
}
} }
// }
} }
// scope.controls.update(); // scope.controls.update();
updateControlModel(); updateControlModel();
@ -333,14 +379,15 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
} }
// //
let controlStage = 0; let controlStage = false;
//animateStage 动画播放阶段 //animateStage 动画播放阶段
//0两侧千斤顶升降 //0两侧千斤顶升降
//1中间千斤顶平移 //1中间千斤顶平移
//2中间千斤顶升降 //2中间千斤顶升降
let animateStage = 0; let animateStage = "0";
function updateControlModel(){ function updateControlModel(){
if(controlMoveSwitch == true){ if(controlMoveSwitch == true){
console.log(nowControlModel.name);
console.log(TrainRescueStatic.animatemodel.action.time); console.log(TrainRescueStatic.animatemodel.action.time);
// console.log(nowControlModel); // console.log(nowControlModel);
// console.log(TrainRescueStatic.handR.mesh); // console.log(TrainRescueStatic.handR.mesh);
@ -349,38 +396,173 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
// console.log(originPoint); // console.log(originPoint);
// rad *= ( endNorm.cross( startNorm ).dot( eye ) < 0 ? 1 : -1); // rad *= ( endNorm.cross( startNorm ).dot( eye ) < 0 ? 1 : -1);
if(nowControlModel.name == "5"){ if(nowControlModel.name == "5"){
let v1 = new THREE.Vector3(-originPoint.x,5-originPoint.y,-originPoint.z); let v1 = new THREE.Vector3(-originPoint.x,5-originPoint.y,-originPoint.z);
let v2 = new THREE.Vector3(overPoint.z-originPoint.z,overPoint.y-originPoint.y,overPoint.x-originPoint.x); let v2 = new THREE.Vector3(overPoint.z-originPoint.z,overPoint.y-originPoint.y,overPoint.x-originPoint.x);
let rad = v1.angleTo(v2); let rad = v1.angleTo(v2);
console.log(rad); console.log(rad);
if(rad>0.725 && rad<2.37){ if(rad>0.725 && rad<2.37){
if(TrainRescueStatic.animatemodel.action.time >= 7.8 && TrainRescueStatic.animatemodel.action.time <20){
animateStage = "3";
if(rad>1.3){
if(controlStage == false){
TrainRescueStatic.animatemodel.action.timeScale = -1;
TrainRescueStatic.animatemodel.action.paused = false;
TrainRescueStatic.animatemodel.action.play();
controlStage = true;
}
}else if(rad<1.20){
if(controlStage == false){
TrainRescueStatic.animatemodel.action.timeScale = 1;
TrainRescueStatic.animatemodel.action.paused = false;
TrainRescueStatic.animatemodel.action.play();
controlStage = true;
}
}else{
controlStage = false;
TrainRescueStatic.animatemodel.action.paused = true;
rad = 1.25;
}
}
nowControlModel.rotation.x = rad+Math.PI; nowControlModel.rotation.x = rad+Math.PI;
} }
}
}else{
if(nowControlModel.name == "1" || nowControlModel.name == "4"){
let v1 = new THREE.Vector3(-originPoint.x,5-originPoint.y,-originPoint.z); let v1 = new THREE.Vector3(-originPoint.x,5-originPoint.y,-originPoint.z);
let v2 = new THREE.Vector3(overPoint.x-originPoint.x,overPoint.y-originPoint.y,overPoint.z-originPoint.z); let v2 = new THREE.Vector3(overPoint.x-originPoint.x,overPoint.y-originPoint.y,overPoint.z-originPoint.z);
let rad = v1.angleTo(v2); let rad = v1.angleTo(v2);
console.log(rad);
if(rad>0.546 && rad<2.4){ if(rad>0.546 && rad<2.4){
if(TrainRescueStatic.animatemodel.action.time<2.65){
animateStage = "0";
if(rad>1.3){
if(controlStage == false){
if(TrainRescueStatic.animatemodel.action.time>2.6){
TrainRescueStatic.animatemodel.action.reset();
TrainRescueStatic.animatemodel.action.time = 2.599;
}
TrainRescueStatic.animatemodel.action.timeScale = -1;
TrainRescueStatic.animatemodel.action.paused = false;
TrainRescueStatic.animatemodel.action.play();
controlStage = true;
if(rad>1.3){ }
TrainRescueStatic.animatemodel.action.timeScale = -1; }else if(rad<1.20){
TrainRescueStatic.animatemodel.action.paused = false; if(controlStage == false){
TrainRescueStatic.animatemodel.action.play(); TrainRescueStatic.animatemodel.action.timeScale = 1;
}else if(rad<1.20){ TrainRescueStatic.animatemodel.action.paused = false;
TrainRescueStatic.animatemodel.action.timeScale = 1; TrainRescueStatic.animatemodel.action.play();
TrainRescueStatic.animatemodel.action.paused = false; controlStage = true;
TrainRescueStatic.animatemodel.action.play();
}else{ }
TrainRescueStatic.animatemodel.action.paused = true; }else{
rad = 1.25; controlStage = false;
TrainRescueStatic.animatemodel.action.paused = true;
rad = 1.25;
}
}
if(TrainRescueStatic.animatemodel.action.time >= 5.2 && TrainRescueStatic.animatemodel.action.time <7.8){
animateStage = "2";
if(rad>1.3){
if(controlStage == false){
TrainRescueStatic.animatemodel.action.timeScale = 1;
TrainRescueStatic.animatemodel.action.paused = false;
TrainRescueStatic.animatemodel.action.play();
controlStage = true;
}
}else if(rad<1.20){
if(controlStage == false){
TrainRescueStatic.animatemodel.action.timeScale = -1;
TrainRescueStatic.animatemodel.action.paused = false;
TrainRescueStatic.animatemodel.action.play();
controlStage = true;
}
}else{
controlStage = false;
TrainRescueStatic.animatemodel.action.paused = true;
rad = 1.25;
}
} }
nowControlModel.rotation.y = rad-Math.PI/2.5; nowControlModel.rotation.y = rad-Math.PI/2.5;
}
}
if(nowControlModel.name == "2" || nowControlModel.name == "3"){
let v1 = new THREE.Vector3(-originPoint.x,5-originPoint.y,-originPoint.z);
let v2 = new THREE.Vector3(overPoint.x-originPoint.x,overPoint.y-originPoint.y,overPoint.z-originPoint.z);
let rad = v1.angleTo(v2);
if(rad>0.546 && rad<2.4){
if(TrainRescueStatic.animatemodel.action.time>=2.6 && TrainRescueStatic.animatemodel.action.time<5.2){
console.log(animateStage);
animateStage = "1";
if(rad>1.3){
if(controlStage == false){
// if(TrainRescueStatic.animatemodel.action.time<5.2){
// TrainRescueStatic.animatemodel.action.reset();
// TrainRescueStatic.animatemodel.action.time = 2.6;
// }
TrainRescueStatic.animatemodel.action.timeScale = -1;
TrainRescueStatic.animatemodel.action.paused = false;
TrainRescueStatic.animatemodel.action.play();
controlStage = true;
}
}else if(rad<1.20){
if(controlStage == false){
// if(TrainRescueStatic.animatemodel.action.time>2.6){
// TrainRescueStatic.animatemodel.action.reset();
// TrainRescueStatic.animatemodel.action.time = 2.6;
// }
TrainRescueStatic.animatemodel.action.timeScale = 1;
TrainRescueStatic.animatemodel.action.paused = false;
TrainRescueStatic.animatemodel.action.play();
controlStage = true;
}
}else{
controlStage = false;
TrainRescueStatic.animatemodel.action.paused = true;
rad = 1.25;
}
}
if(TrainRescueStatic.animatemodel.action.time >= 20){
animateStage = "4";
if(rad>1.3){
if(controlStage == false){
TrainRescueStatic.animatemodel.action.timeScale = 1;
TrainRescueStatic.animatemodel.action.paused = false;
TrainRescueStatic.animatemodel.action.play();
controlStage = true;
}
}else if(rad<1.20){
if(controlStage == false){
// if(TrainRescueStatic.animatemodel.action.time>2.6){
// TrainRescueStatic.animatemodel.action.reset();
// TrainRescueStatic.animatemodel.action.time = 2.6;
// }
TrainRescueStatic.animatemodel.action.timeScale = -1;
TrainRescueStatic.animatemodel.action.paused = false;
TrainRescueStatic.animatemodel.action.play();
controlStage = true;
}
}else{
controlStage = false;
TrainRescueStatic.animatemodel.action.paused = true;
rad = 1.25;
}
}
nowControlModel.rotation.y = rad-Math.PI/2.5;
} }
} }
@ -429,7 +611,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
} }
} }
var beauty = new Image(); var beauty = new Image();
beauty.src = "../../static/texture/scene.png"; beauty.src = "../../cbtc/static/texture/scene.png";
//canvas文字贴图方法 //canvas文字贴图方法
//PS:待提炼 增强功能 //PS:待提炼 增强功能
function getTextCanvas(text){ function getTextCanvas(text){

View File

@ -4,36 +4,36 @@ var TrainRescueStatic = {
name: "动画模型", name: "动画模型",
deviceType: "animatemodel", deviceType: "animatemodel",
type: "animatemodel", type: "animatemodel",
url: "../../static/vrtest/trainrescue/DH923.FBX" url: "../../cbtc/static/vrtest/trainrescue/DH923.FBX"
},//"https://joylink.club/oss/wx/switch/switch.FBX" },//"https://joylink.club/oss/wx/switch/switch.FBX"
//../../static/MODEL/device/switch.FBX //../../cbtc/static/MODEL/device/switch.FBX
floorplane: { floorplane: {
id: "2", id: "2",
name: "行走范围", name: "行走范围",
deviceType: "runplane", deviceType: "runplane",
type: "runplane", type: "runplane",
url: "../../static/vrtest/trainrescue/diban.FBX" url: "../../cbtc/static/vrtest/trainrescue/diban.FBX"
}, },
controlmodel: { controlmodel: {
id: "3", id: "3",
name: "控制台", name: "控制台",
deviceType: "controlmodel", deviceType: "controlmodel",
type: "controlmodel", type: "controlmodel",
url: "../../static/vrtest/trainrescue/kongzhigan.FBX" url: "../../cbtc/static/vrtest/trainrescue/kongzhigan.FBX"
}, },
other: { other: {
id: "4", id: "4",
name: "其他", name: "其他",
deviceType: "other", deviceType: "other",
type: "other", type: "other",
url: "../../static/vrtest/trainrescue/TK.FBX" url: "../../cbtc/static/vrtest/trainrescue/TK.FBX"
}, },
handR: { handR: {
id: "5", id: "5",
name: "handr", name: "handr",
deviceType: "handr", deviceType: "handr",
type: "handr", type: "handr",
url: "../../static/vrtest/trainrescue/handr.FBX" url: "../../cbtc/static/vrtest/trainrescue/handr.FBX"
} }
} }

View File

@ -102,7 +102,7 @@ export function JLmap3dMaintainer(dom, data,skinCode,storemod,routegroup,project
//地图模型数据 //地图模型数据
let mapdata = new Jl3ddata(); let mapdata = new Jl3ddata();
this.webwork = new Worker("../../static/workertest/trainworker.js"); this.webwork = new Worker("../../cbtc/static/workertest/trainworker.js");
//初始化加载数据和模型getPublishMapDetail //初始化加载数据和模型getPublishMapDetail
getPublishMapDetail(skinCode).then(data => { getPublishMapDetail(skinCode).then(data => {
let mapnetdata = data.data; let mapnetdata = data.data;
@ -124,7 +124,7 @@ export function JLmap3dMaintainer(dom, data,skinCode,storemod,routegroup,project
}else{ }else{
scope.datatype = "new"; scope.datatype = "new";
scope.jsonwebworknew = new Worker("../../static/workertest/maintainerworker.js"); scope.jsonwebworknew = new Worker("../../cbtc/static/workertest/maintainerworker.js");
scope.Subscribe = new Maintainerconnect(scope,routegroup,scope.jsonwebworknew,lablecodemap); scope.Subscribe = new Maintainerconnect(scope,routegroup,scope.jsonwebworknew,lablecodemap);
scope.Subscribe.socketon(scope.Subscribe.topic); scope.Subscribe.socketon(scope.Subscribe.topic);
MaintainerLoad(mapnetdata,scope,netdata.data,mapdata,camera,controls,scenesimulation,storemod); MaintainerLoad(mapnetdata,scope,netdata.data,mapdata,camera,controls,scenesimulation,storemod);

View File

@ -7,7 +7,7 @@ export function TrainControl(){
// load a sound and set it as the Audio object's buffer // load a sound and set it as the Audio object's buffer
let audioLoader = new THREE.AudioLoader(); let audioLoader = new THREE.AudioLoader();
audioLoader.load( '../../static/audio/trainmove.ogg', function( buffer ) { audioLoader.load( '../../cbtc/static/audio/trainmove.ogg', function( buffer ) {
scope.sound.setBuffer( buffer ); scope.sound.setBuffer( buffer );
scope.sound.setLoop( true ); scope.sound.setLoop( true );
scope.sound.setVolume( 3 ); scope.sound.setVolume( 3 );

View File

@ -17,7 +17,7 @@ export function VrGui(){
var geometryPlane = new THREE.PlaneBufferGeometry( 1.4, 2, 16); var geometryPlane = new THREE.PlaneBufferGeometry( 1.4, 2, 16);
var texturePlane = new THREE.TextureLoader().load( '../../static/texture/devicemsgpane.png' ); var texturePlane = new THREE.TextureLoader().load( '../../cbtc/static/texture/devicemsgpane.png' );
var materialPlane = new THREE.MeshBasicMaterial( { var materialPlane = new THREE.MeshBasicMaterial( {
map: texturePlane, map: texturePlane,
side: THREE.DoubleSide, side: THREE.DoubleSide,
@ -36,7 +36,7 @@ export function VrGui(){
var geometryButtonPane = new THREE.PlaneBufferGeometry( 0.4, 0.2, 16 ); var geometryButtonPane = new THREE.PlaneBufferGeometry( 0.4, 0.2, 16 );
var texture = new THREE.TextureLoader().load( '../../static/vrtest/buttonHome.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/buttonHome.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: texture, map: texture,
transparent: true, transparent: true,
@ -48,7 +48,7 @@ export function VrGui(){
buttonHome.position.z = 0.02; buttonHome.position.z = 0.02;
plane.add( buttonHome ); plane.add( buttonHome );
var texture = new THREE.TextureLoader().load( '../../static/vrtest/buttonStationList.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/buttonStationList.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: texture, map: texture,
transparent: true, transparent: true,
@ -60,7 +60,7 @@ export function VrGui(){
buttonStationList.position.z = 0.02; buttonStationList.position.z = 0.02;
plane.add( buttonStationList ); plane.add( buttonStationList );
var texture = new THREE.TextureLoader().load( '../../static/vrtest/buttonFaultList.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/buttonFaultList.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: texture, map: texture,
transparent: true, transparent: true,
@ -78,7 +78,7 @@ export function VrGui(){
var geometryButtonPage = new THREE.PlaneBufferGeometry( 0.3, 0.1, 16 ); var geometryButtonPage = new THREE.PlaneBufferGeometry( 0.3, 0.1, 16 );
var texture = new THREE.TextureLoader().load( '../../static/vrtest/buttonPrevious.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/buttonPrevious.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: texture, map: texture,
transparent: true, transparent: true,
@ -90,7 +90,7 @@ export function VrGui(){
buttonPreviousFault.position.z = 0.02; buttonPreviousFault.position.z = 0.02;
scope.faultListGroup.add( buttonPreviousFault ); scope.faultListGroup.add( buttonPreviousFault );
// //
// var texture = new THREE.TextureLoader().load( '../../static/vrtest/nav.png' ); // var texture = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/nav.png' );
// var material = new THREE.MeshBasicMaterial( { // var material = new THREE.MeshBasicMaterial( {
// map: texture, // map: texture,
// transparent: true, // transparent: true,
@ -102,7 +102,7 @@ export function VrGui(){
// buttonPrevious.position.z = 0.02; // buttonPrevious.position.z = 0.02;
// plane.add( buttonPrevious ); // plane.add( buttonPrevious );
var texture = new THREE.TextureLoader().load( '../../static/vrtest/buttonNext.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/buttonNext.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: texture, map: texture,
transparent: true, transparent: true,
@ -114,7 +114,7 @@ export function VrGui(){
buttonNextFault.position.z = 0.02; buttonNextFault.position.z = 0.02;
scope.faultListGroup.add( buttonNextFault ); scope.faultListGroup.add( buttonNextFault );
var texture = new THREE.TextureLoader().load( '../../static/vrtest/buttonPrevious.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/buttonPrevious.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: texture, map: texture,
transparent: true, transparent: true,
@ -127,7 +127,7 @@ export function VrGui(){
scope.stationListGroup.add( buttonPreviousStation ); scope.stationListGroup.add( buttonPreviousStation );
var texture = new THREE.TextureLoader().load( '../../static/vrtest/buttonNext.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/buttonNext.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: texture, map: texture,
transparent: true, transparent: true,
@ -145,7 +145,7 @@ export function VrGui(){
var geometryButtonBox = new THREE.PlaneBufferGeometry( 0.25, 0.25, 16 ); var geometryButtonBox = new THREE.PlaneBufferGeometry( 0.25, 0.25, 16 );
var texture = new THREE.TextureLoader().load( '../../static/vrtest/nav.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/nav.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: texture, map: texture,
transparent: true, transparent: true,
@ -157,7 +157,7 @@ export function VrGui(){
button1.position.z = 0.02; button1.position.z = 0.02;
scope.deviceGroup.add( button1 ); scope.deviceGroup.add( button1 );
var texture = new THREE.TextureLoader().load( '../../static/vrtest/anime.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/anime.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: texture, map: texture,
transparent: true, transparent: true,
@ -171,7 +171,7 @@ export function VrGui(){
var texture = new THREE.TextureLoader().load( '../../static/vrtest/reset.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/reset.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: texture, map: texture,
transparent: true, transparent: true,
@ -183,7 +183,7 @@ export function VrGui(){
button2.position.z = 0.02; button2.position.z = 0.02;
scope.deviceGroup.add( button2 ); scope.deviceGroup.add( button2 );
var texture = new THREE.TextureLoader().load( '../../static/vrtest/repire.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/repire.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: texture, map: texture,
transparent: true, transparent: true,
@ -208,7 +208,7 @@ export function VrGui(){
var geometryButtonBox = new THREE.PlaneBufferGeometry( 0.3, 0.3, 16 ); var geometryButtonBox = new THREE.PlaneBufferGeometry( 0.3, 0.3, 16 );
var textureshebei = new THREE.TextureLoader().load( '../../static/vrtest/shebei.png' ); var textureshebei = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/shebei.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: textureshebei, map: textureshebei,
transparent: true, transparent: true,
@ -220,7 +220,7 @@ export function VrGui(){
buttonShiBei.position.z = 0.02; buttonShiBei.position.z = 0.02;
plane.add( buttonShiBei ); plane.add( buttonShiBei );
var texturezhankong = new THREE.TextureLoader().load( '../../static/vrtest/zhankong.png' ); var texturezhankong = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/zhankong.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: texturezhankong, map: texturezhankong,
transparent: true, transparent: true,
@ -234,7 +234,7 @@ export function VrGui(){
var texture = new THREE.TextureLoader().load( '../../static/vrtest/station1.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/station1.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: texture, map: texture,
transparent: true, transparent: true,
@ -246,7 +246,7 @@ export function VrGui(){
buttonStation1.position.z = 0.02; buttonStation1.position.z = 0.02;
plane.add( buttonStation1 ); plane.add( buttonStation1 );
var texture = new THREE.TextureLoader().load( '../../static/vrtest/station2.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/vrtest/station2.png' );
var material = new THREE.MeshBasicMaterial( { var material = new THREE.MeshBasicMaterial( {
map: texture, map: texture,
transparent: true, transparent: true,
@ -452,7 +452,7 @@ export function VrGui(){
var beauty = new Image(); var beauty = new Image();
beauty.src = "../../static/texture/scene.png"; beauty.src = "../../cbtc/static/texture/scene.png";
//canvas文字贴图方法 //canvas文字贴图方法
//PS:待提炼 增强功能 //PS:待提炼 增强功能
function getTextCanvas(text,type){ function getTextCanvas(text,type){

View File

@ -6,42 +6,42 @@ export function ModelManagerVR(){
// code:"test", // code:"test",
// locateType:"01", // locateType:"01",
// mesh:null, // mesh:null,
// url:"../../static/vrtest/vrtest.FBX" // url:"../../cbtc/static/vrtest/vrtest.FBX"
// }; // };
this.stationIn = { this.stationIn = {
code:"stationIn", code:"stationIn",
locateType:"1", locateType:"1",
mesh:null, mesh:null,
url:"../../static/vrtest/stationIn.FBX" url:"../../cbtc/static/vrtest/stationIn.FBX"
}; };
this.stationOut = { this.stationOut = {
code:"stationOut", code:"stationOut",
locateType:"2", locateType:"2",
mesh:null, mesh:null,
url:"../../static/vrtest/stationIn.FBX" url:"../../cbtc/static/vrtest/stationIn.FBX"
}; };
this.otherDevice = { this.otherDevice = {
code:"otherDevice", code:"otherDevice",
locateType:"3", locateType:"3",
mesh:null, mesh:null,
url:"../../static/vrtest/otherDevice.FBX" url:"../../cbtc/static/vrtest/otherDevice.FBX"
}; };
this.train = { this.train = {
code:"train", code:"train",
locateType:"4", locateType:"4",
mesh:null, mesh:null,
url:"../../static/vrtest/vrTrain.FBX" url:"../../cbtc/static/vrtest/vrTrain.FBX"
}; };
this.human = { this.human = {
code:"human", code:"human",
locateType:"5", locateType:"5",
mesh:null, mesh:null,
url:"../../static/vrtest/vrHuman.FBX" url:"../../cbtc/static/vrtest/vrHuman.FBX"
}; };
this.loadpromise = function (mixers){ this.loadpromise = function (mixers){

View File

@ -5,16 +5,16 @@ var Staticmodel = {
deviceType: "man", deviceType: "man",
type: "man", type: "man",
picUrl: "", picUrl: "",
assetUrl: "../../static/MODEL/passflow/man1.FBX" assetUrl: "../../cbtc/static/MODEL/passflow/man1.FBX"
},//"https://joylink.club/oss/wx/switch/switch.FBX" },//"https://joylink.club/oss/wx/switch/switch.FBX"
//../../static/MODEL/device/switch.FBX //../../cbtc/static/MODEL/device/switch.FBX
man2: { man2: {
id: "2", id: "2",
name: "人物2", name: "人物2",
deviceType: "man", deviceType: "man",
type: "man", type: "man",
picUrl: "", picUrl: "",
assetUrl: "../../static/MODEL/passflow/man2.FBX" assetUrl: "../../cbtc/static/MODEL/passflow/man2.FBX"
}, },
station: { station: {
id: "3", id: "3",
@ -22,7 +22,7 @@ var Staticmodel = {
deviceType: "station", deviceType: "station",
type: "hrb", type: "hrb",
picUrl: "", picUrl: "",
assetUrl: "../../static/MODEL/passflow/station.FBX" assetUrl: "../../cbtc/static/MODEL/passflow/station.FBX"
}, },
zhajiin: { zhajiin: {
id: "4", id: "4",
@ -30,7 +30,7 @@ var Staticmodel = {
deviceType: "zhajiin", deviceType: "zhajiin",
type: "hrb", type: "hrb",
picUrl: "", picUrl: "",
assetUrl: "../../static/MODEL/passflow/zhajiin.FBX" assetUrl: "../../cbtc/static/MODEL/passflow/zhajiin.FBX"
}, },
zhajiout: { zhajiout: {
id: "5", id: "5",
@ -38,7 +38,7 @@ var Staticmodel = {
deviceType: "zhajiout", deviceType: "zhajiout",
type: "hrb", type: "hrb",
picUrl: "", picUrl: "",
assetUrl: "../../static/MODEL/passflow/zhajiout.FBX" assetUrl: "../../cbtc/static/MODEL/passflow/zhajiout.FBX"
}, },
monitor: { monitor: {
id: "6", id: "6",
@ -46,7 +46,7 @@ var Staticmodel = {
deviceType: "monitor", deviceType: "monitor",
type: "hrb", type: "hrb",
picUrl: "", picUrl: "",
assetUrl: "../../static/MODEL/passflow/monitor.FBX" assetUrl: "../../cbtc/static/MODEL/passflow/monitor.FBX"
}, },
train: { train: {
id: "7", id: "7",
@ -54,7 +54,7 @@ var Staticmodel = {
deviceType: "train", deviceType: "train",
type: "hrb", type: "hrb",
picUrl: "", picUrl: "",
assetUrl: "../../static/MODEL/train/train.FBX" assetUrl: "../../cbtc/static/MODEL/train/train.FBX"
}, },
section: { section: {
id: "8", id: "8",
@ -62,7 +62,7 @@ var Staticmodel = {
deviceType: "section", deviceType: "section",
type: "hrb", type: "hrb",
picUrl: "", picUrl: "",
assetUrl: "../../static/MODEL/passflow/section.FBX" assetUrl: "../../cbtc/static/MODEL/passflow/section.FBX"
}, },

View File

@ -52,8 +52,8 @@ let zhajiout = [];
let deviceaction = []; let deviceaction = [];
// let passerwebwork = new Worker("../../static/workertest/passsimulation/passer.js"); // let passerwebwork = new Worker("../../cbtc/static/workertest/passsimulation/passer.js");
let stationwebwork = new Worker("../../static/workertest/passsimulation/station.js"); let stationwebwork = new Worker("../../cbtc/static/workertest/passsimulation/station.js");
let stationzon = new ZoneManager(); let stationzon = new ZoneManager();
//老版本临时ai控制 //老版本临时ai控制
@ -297,7 +297,7 @@ export function Jl3dpassflow(dom,skinCode,routegroup,viewMap) {
// load a resource // load a resource
loader.load( loader.load(
// resource URL // resource URL
'../../static/jl3d/path/path.obj', '../../cbtc/static/jl3d/path/path.obj',
// called when resource is loaded // called when resource is loaded
function ( object ) { function ( object ) {

View File

@ -103,7 +103,7 @@ export function JLmap3d(dom, data,skinCode,storemod,routegroup,project) {
//连接到通信 //连接到通信
//console.log(this.Subscribe.config); //console.log(this.Subscribe.config);
this.webwork = new Worker("../../static/workertest/trainworker.js"); this.webwork = new Worker("../../cbtc/static/workertest/trainworker.js");
//初始化加载数据和模型getPublishMapDetail //初始化加载数据和模型getPublishMapDetail
getPublishMapDetail(skinCode).then(data => { getPublishMapDetail(skinCode).then(data => {
let mapnetdata = data.data; let mapnetdata = data.data;
@ -111,14 +111,14 @@ export function JLmap3d(dom, data,skinCode,storemod,routegroup,project) {
let assetsdata = JSON.parse(netdata.data.sections); let assetsdata = JSON.parse(netdata.data.sections);
if(assetsdata.link){ if(assetsdata.link){
scope.datatype = "old"; scope.datatype = "old";
scope.jsonwebwork = new Worker("../../static/workertest/jsonworker.js"); scope.jsonwebwork = new Worker("../../cbtc/static/workertest/jsonworker.js");
scope.Subscribe = new Jlmap3dSubscribe(scope,routegroup,scope.jsonwebwork); scope.Subscribe = new Jlmap3dSubscribe(scope,routegroup,scope.jsonwebwork);
scope.Subscribe.socketon(scope.Subscribe.topic); scope.Subscribe.socketon(scope.Subscribe.topic);
SimulationLoad(mapnetdata,scope,netdata.data,mapdata,camera,controls,scenesimulation,storemod); SimulationLoad(mapnetdata,scope,netdata.data,mapdata,camera,controls,scenesimulation,storemod);
}else{ }else{
scope.datatype = "new"; scope.datatype = "new";
scope.jsonwebworknew = new Worker("../../static/workertest/jsonworkernew.js"); scope.jsonwebworknew = new Worker("../../cbtc/static/workertest/jsonworkernew.js");
scope.Subscribe = new Jlmap3dSubscribeNew(scope,routegroup,scope.jsonwebworknew); scope.Subscribe = new Jlmap3dSubscribeNew(scope,routegroup,scope.jsonwebworknew);
scope.Subscribe.socketon(scope.Subscribe.topic); scope.Subscribe.socketon(scope.Subscribe.topic);
SimulationLoadNew(mapnetdata,scope,netdata.data,mapdata,camera,controls,scenesimulation,storemod); SimulationLoadNew(mapnetdata,scope,netdata.data,mapdata,camera,controls,scenesimulation,storemod);

View File

@ -184,7 +184,10 @@ THREE.ScalControls = function ( scene,_camera, _domElement ) {
_movemesh.geometry.computeBoundingSphere(); _movemesh.geometry.computeBoundingSphere();
_movemesh.geometry.center(); _movemesh.geometry.center();
// _movemesh.lengthfact = (_movemesh.geometry.attributes.position.array[_movemesh.rightlist[0]] - _movemesh.geometry.attributes.position.array[_movemesh.leftlist[0]])*2+28; // _movemesh.lengthfact = (_movemesh.geometry.attributes.position.array[_movemesh.rightlist[0]] - _movemesh.geometry.attributes.position.array[_movemesh.leftlist[0]])*2+28;
_movemesh.lengthFact = (_movemesh.geometry.attributes.position.array[_movemesh.rightlist[0]*3] - _movemesh.geometry.attributes.position.array[_movemesh.leftlist[0]*3]);
_movemesh.lengthFact = (_movemesh.geometry.attributes.position.array[_movemesh.rightlist[0]*3] - _movemesh.geometry.attributes.position.array[_movemesh.leftlist[0]*3]);
} }
@ -451,10 +454,21 @@ THREE.ScalControls = function ( scene,_camera, _domElement ) {
z:newpointlist[i].z z:newpointlist[i].z
} }
} }
let oldlengthfact = _movemesh.lengthFact;
_movemesh.lengthFact = closedSpline.arcLengthDivisions/4; _movemesh.lengthFact = closedSpline.arcLengthDivisions/4;
if(newpointlist.length>2){ if(newpointlist.length>2){
_movemesh.lengthFact = _movemesh.lengthFact/curvestep; _movemesh.lengthFact = _movemesh.lengthFact/curvestep;
} }
console.log(_movemesh);
if(_movemesh.standTrack == true){
let newleftpoint = _movemesh.leftStopPointOffset/oldlengthfact;
let newrightpoint = _movemesh.rightStopPointOffset/oldlengthfact;
_movemesh.leftStopPointOffset = newleftpoint*_movemesh.lengthFact;
_movemesh.rightStopPointOffset = newrightpoint*_movemesh.lengthFact;
console.log(_movemesh.leftStopPointOffset);
}
let len = _movemesh.lengthFact; let len = _movemesh.lengthFact;
// closedSpline.arcLengthDivisions; // closedSpline.arcLengthDivisions;

View File

@ -11,7 +11,7 @@ let defaultsignal = {
deviceType:"signal", deviceType:"signal",
type:"low", type:"low",
picUrl:"", picUrl:"",
url:"../../static/MODEL/signal/d3d.FBX" url:"../../cbtc/static/MODEL/signal/d3d.FBX"
} }
let defaulttrain = { let defaulttrain = {
@ -20,7 +20,7 @@ let defaulttrain = {
deviceType:"train", deviceType:"train",
type:"num4", type:"num4",
picUrl:"", picUrl:"",
url:"../../static/MODEL/train/train.FBX" url:"../../cbtc/static/MODEL/train/train.FBX"
} }
@ -30,15 +30,15 @@ let defaultstation = {
deviceType:"stand", deviceType:"stand",
type:"num4", type:"num4",
picUrl:"", picUrl:"",
url:"../../static/MODEL/station/fuzhou.FBX" url:"../../cbtc/static/MODEL/station/fuzhou.FBX"
}//"../../static/MODEL/station/fuzhou/fuzhou.FBX" }//"../../cbtc/static/MODEL/station/fuzhou/fuzhou.FBX"
let waicestation = { let waicestation = {
id:"10", id:"10",
name:"外侧车站", name:"外侧车站",
deviceType:"standwaice", deviceType:"standwaice",
type:"num4", type:"num4",
picUrl:"", picUrl:"",
url:"../../static/MODEL/station/waicestation.FBX" url:"../../cbtc/static/MODEL/station/waicestation.FBX"
} }
let station3 = { let station3 = {
id:"10000", id:"10000",
@ -46,12 +46,12 @@ let station3 = {
deviceType:"station3", deviceType:"station3",
type:"num4", type:"num4",
picUrl:"", picUrl:"",
url:"../../static/MODEL/station/station3.FBX" url:"../../cbtc/static/MODEL/station/station3.FBX"
} }
//"../../static/MODEL/station/fuzhou/fuzhou.FBX" //"../../cbtc/static/MODEL/station/fuzhou/fuzhou.FBX"
//https://test.joylink.club/oss/station/fuzhou/fuzhou.FBX //https://test.joylink.club/oss/station/fuzhou/fuzhou.FBX
//https://joylink.club/oss/station/fuzhou/fuzhou.FBX //https://joylink.club/oss/station/fuzhou/fuzhou.FBX
//../../static/MODEL/station/zhantai715(2).FBX //../../cbtc/static/MODEL/station/zhantai715(2).FBX
let defaultswitch = { let defaultswitch = {
id:"11", id:"11",
@ -59,7 +59,7 @@ let defaultswitch = {
deviceType:"switch", deviceType:"switch",
type:"fuzhou", type:"fuzhou",
picUrl:"", picUrl:"",
url:"../../static/MODEL/daocha/daocha.FBX" url:"../../cbtc/static/MODEL/daocha/daocha.FBX"
} }
@ -69,7 +69,7 @@ let defaultsuidao = {
deviceType:"suidao", deviceType:"suidao",
type:"suidao", type:"suidao",
picUrl:"", picUrl:"",
url:"../../static/MODEL/suidao/suidao.FBX" url:"../../cbtc/static/MODEL/suidao/suidao.FBX"
} }
let hebsuidao = { let hebsuidao = {
@ -78,7 +78,7 @@ let hebsuidao = {
deviceType:"hebsuidao", deviceType:"hebsuidao",
type:"hebsuidao", type:"hebsuidao",
picUrl:"", picUrl:"",
url:"../../static/MODEL/suidao/hebsuidao.FBX" url:"../../cbtc/static/MODEL/suidao/hebsuidao.FBX"
} }
let nbsuidao = { let nbsuidao = {
id:"1010", id:"1010",
@ -86,7 +86,7 @@ let nbsuidao = {
deviceType:"nbsuidao", deviceType:"nbsuidao",
type:"nbsuidao", type:"nbsuidao",
picUrl:"", picUrl:"",
url:"../../static/MODEL/suidao/nbsuidao.FBX" url:"../../cbtc/static/MODEL/suidao/nbsuidao.FBX"
} }
let defaultbackground = { let defaultbackground = {
id:"16", id:"16",
@ -94,12 +94,12 @@ let defaultbackground = {
deviceType:"background", deviceType:"background",
type:"background", type:"background",
picUrl:"", picUrl:"",
url:"../../static/MODEL/suidao/background.FBX" url:"../../cbtc/static/MODEL/suidao/background.FBX"
} }
//"../../static/MODEL/suidao/suidao.FBX" //"../../cbtc/static/MODEL/suidao/suidao.FBX"
//https://test.joylink.club/oss/suidao/suidao.FBX //https://test.joylink.club/oss/suidao/suidao.FBX
//https://joylink.club/oss/suidao/suidao.FBX //https://joylink.club/oss/suidao/suidao.FBX
//../../static/MODEL/suidao/suidao.FBX //../../cbtc/static/MODEL/suidao/suidao.FBX
let defaultautorail = { let defaultautorail = {
id:"100", id:"100",
@ -107,7 +107,7 @@ let defaultautorail = {
deviceType:"autorail", deviceType:"autorail",
type:"autorail", type:"autorail",
picUrl:"", picUrl:"",
url:"../../static/MODEL/auto/rail.FBX" url:"../../cbtc/static/MODEL/auto/rail.FBX"
} }
let autoswitch = { let autoswitch = {
@ -116,7 +116,7 @@ let autoswitch = {
deviceType:"autoswitch", deviceType:"autoswitch",
type:"fuzhou", type:"fuzhou",
picUrl:"", picUrl:"",
url:"../../static/MODEL/auto/autoswitch.FBX" url:"../../cbtc/static/MODEL/auto/autoswitch.FBX"
} }
let autoswitch1 = { let autoswitch1 = {
@ -125,7 +125,7 @@ let autoswitch1 = {
deviceType:"autoswitch1", deviceType:"autoswitch1",
type:"fuzhou", type:"fuzhou",
picUrl:"", picUrl:"",
url:"../../static/MODEL/auto/switch1.FBX" url:"../../cbtc/static/MODEL/auto/switch1.FBX"
} }
let autoswitch2 = { let autoswitch2 = {
@ -134,7 +134,7 @@ let autoswitch2 = {
deviceType:"autoswitch2", deviceType:"autoswitch2",
type:"fuzhou", type:"fuzhou",
picUrl:"", picUrl:"",
url:"../../static/MODEL/auto/switch2.FBX" url:"../../cbtc/static/MODEL/auto/switch2.FBX"
} }
export function AssetLoader(){ export function AssetLoader(){

View File

@ -2,13 +2,13 @@ import { BASE_ASSET_API } from '@/api/jlmap3d/assets3d.js';
export function Materialload(jlmap3dedit,standTextureData){ export function Materialload(jlmap3dedit,standTextureData){
if(jlmap3dedit.materiallist){ if(jlmap3dedit.materiallist){
settexture(jlmap3dedit.materiallist,"red",'../../static/material/signal/1.jpg'); settexture(jlmap3dedit.materiallist,"red",'../../cbtc/static/material/signal/1.jpg');
settexture(jlmap3dedit.materiallist,"yellow",'../../static/material/signal/2.jpg'); settexture(jlmap3dedit.materiallist,"yellow",'../../cbtc/static/material/signal/2.jpg');
settexture( jlmap3dedit.materiallist,"green",'../../static/material/signal/3.jpg'); settexture( jlmap3dedit.materiallist,"green",'../../cbtc/static/material/signal/3.jpg');
settexture( jlmap3dedit.materiallist,"black",'../../static/material/signal/5.jpg'); settexture( jlmap3dedit.materiallist,"black",'../../cbtc/static/material/signal/5.jpg');
} }
if(standTextureData.urls.length > 1){ if(standTextureData.urls.length > 1){
@ -20,98 +20,98 @@ export function Materialload(jlmap3dedit,standTextureData){
// if(assettype){ // if(assettype){
// if(assettype.stationtexture == "xian3"){ // if(assettype.stationtexture == "xian3"){
// if(jlmap3dedit.stationtexture){ // if(jlmap3dedit.stationtexture){
// setstationtexture(jlmap3dedit.stationtexture,"stationlist",'../../static/texture/xian3/xian3list.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"stationlist",'../../cbtc/static/texture/xian3/xian3list.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"pingbimen",'../../static/texture/xian3/pingbimen.png'); // setstationtexture(jlmap3dedit.stationtexture,"pingbimen",'../../cbtc/static/texture/xian3/pingbimen.png');
// setstationtexture(jlmap3dedit.stationtexture,"Station18000",'../../static/texture/xian3/Station18000.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station18000",'../../cbtc/static/texture/xian3/Station18000.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station61238",'../../static/texture/xian3/Station61238.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station61238",'../../cbtc/static/texture/xian3/Station61238.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station41790",'../../static/texture/xian3/Station41790.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station41790",'../../cbtc/static/texture/xian3/Station41790.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station67945",'../../static/texture/xian3/Station67945.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station67945",'../../cbtc/static/texture/xian3/Station67945.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station85598",'../../static/texture/xian3/Station85598.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station85598",'../../cbtc/static/texture/xian3/Station85598.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station4324",'../../static/texture/xian3/Station4324.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station4324",'../../cbtc/static/texture/xian3/Station4324.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station55755",'../../static/texture/xian3/Station55755.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station55755",'../../cbtc/static/texture/xian3/Station55755.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station53597",'../../static/texture/xian3/Station53597.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station53597",'../../cbtc/static/texture/xian3/Station53597.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station68029",'../../static/texture/xian3/Station68029.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station68029",'../../cbtc/static/texture/xian3/Station68029.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station17596",'../../static/texture/xian3/Station17596.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station17596",'../../cbtc/static/texture/xian3/Station17596.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station66742",'../../static/texture/xian3/Station66742.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station66742",'../../cbtc/static/texture/xian3/Station66742.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station90701",'../../static/texture/xian3/Station90701.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station90701",'../../cbtc/static/texture/xian3/Station90701.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station90652",'../../static/texture/xian3/Station90652.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station90652",'../../cbtc/static/texture/xian3/Station90652.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station54200",'../../static/texture/xian3/Station54200.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station54200",'../../cbtc/static/texture/xian3/Station54200.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station19253",'../../static/texture/xian3/Station19253.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station19253",'../../cbtc/static/texture/xian3/Station19253.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station37821",'../../static/texture/xian3/Station37821.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station37821",'../../cbtc/static/texture/xian3/Station37821.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station47557",'../../static/texture/xian3/Station47557.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station47557",'../../cbtc/static/texture/xian3/Station47557.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station78551",'../../static/texture/xian3/Station78551.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station78551",'../../cbtc/static/texture/xian3/Station78551.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station64474",'../../static/texture/xian3/Station64474.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station64474",'../../cbtc/static/texture/xian3/Station64474.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station21203",'../../static/texture/xian3/Station21203.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station21203",'../../cbtc/static/texture/xian3/Station21203.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station34499",'../../static/texture/xian3/Station34499.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station34499",'../../cbtc/static/texture/xian3/Station34499.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station571",'../../static/texture/xian3/Station571.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station571",'../../cbtc/static/texture/xian3/Station571.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station99903",'../../static/texture/xian3/Station99903.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station99903",'../../cbtc/static/texture/xian3/Station99903.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station43447",'../../static/texture/xian3/Station43447.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station43447",'../../cbtc/static/texture/xian3/Station43447.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station67917",'../../static/texture/xian3/Station67917.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station67917",'../../cbtc/static/texture/xian3/Station67917.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station60649",'../../static/texture/xian3/Station60649.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station60649",'../../cbtc/static/texture/xian3/Station60649.jpg');
// } // }
// } // }
// if(assettype.stationtexture == "haerbin1"){ // if(assettype.stationtexture == "haerbin1"){
// if(jlmap3dedit.stationtexture){ // if(jlmap3dedit.stationtexture){
// setstationtexture(jlmap3dedit.stationtexture,"stationlist",'../../static/texture/heb/haerbinlist.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"stationlist",'../../cbtc/static/texture/heb/haerbinlist.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"pingbimen",'../../static/texture/heb/pingbimen.png'); // setstationtexture(jlmap3dedit.stationtexture,"pingbimen",'../../cbtc/static/texture/heb/pingbimen.png');
// setstationtexture(jlmap3dedit.stationtexture,"Station5361",'../../static/texture/heb/Station5361.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station5361",'../../cbtc/static/texture/heb/Station5361.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station11094",'../../static/texture/heb/Station11094.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station11094",'../../cbtc/static/texture/heb/Station11094.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station11136",'../../static/texture/heb/Station11136.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station11136",'../../cbtc/static/texture/heb/Station11136.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station17293",'../../static/texture/heb/Station17293.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station17293",'../../cbtc/static/texture/heb/Station17293.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station18398",'../../static/texture/heb/Station18398.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station18398",'../../cbtc/static/texture/heb/Station18398.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station22163",'../../static/texture/heb/Station22163.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station22163",'../../cbtc/static/texture/heb/Station22163.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station25464",'../../static/texture/heb/Station25464.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station25464",'../../cbtc/static/texture/heb/Station25464.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station28090",'../../static/texture/heb/Station28090.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station28090",'../../cbtc/static/texture/heb/Station28090.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station41999",'../../static/texture/heb/Station41999.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station41999",'../../cbtc/static/texture/heb/Station41999.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station44338",'../../static/texture/heb/Station44338.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station44338",'../../cbtc/static/texture/heb/Station44338.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station46464",'../../static/texture/heb/Station46464.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station46464",'../../cbtc/static/texture/heb/Station46464.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station50565",'../../static/texture/heb/Station50565.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station50565",'../../cbtc/static/texture/heb/Station50565.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station60068",'../../static/texture/heb/Station60068.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station60068",'../../cbtc/static/texture/heb/Station60068.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station62429",'../../static/texture/heb/Station62429.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station62429",'../../cbtc/static/texture/heb/Station62429.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station64444",'../../static/texture/heb/Station64444.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station64444",'../../cbtc/static/texture/heb/Station64444.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station71700",'../../static/texture/heb/Station71700.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station71700",'../../cbtc/static/texture/heb/Station71700.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station72132",'../../static/texture/heb/Station72132.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station72132",'../../cbtc/static/texture/heb/Station72132.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station78164",'../../static/texture/heb/Station78164.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station78164",'../../cbtc/static/texture/heb/Station78164.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station79537",'../../static/texture/heb/Station79537.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station79537",'../../cbtc/static/texture/heb/Station79537.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station82618",'../../static/texture/heb/Station82618.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station82618",'../../cbtc/static/texture/heb/Station82618.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station85520",'../../static/texture/heb/Station85520.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station85520",'../../cbtc/static/texture/heb/Station85520.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station89483",'../../static/texture/heb/Station89483.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station89483",'../../cbtc/static/texture/heb/Station89483.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station96090",'../../static/texture/heb/Station96090.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station96090",'../../cbtc/static/texture/heb/Station96090.jpg');
// } // }
// } // }
// if(assettype.stationtexture == "nb1"){ // if(assettype.stationtexture == "nb1"){
// if(jlmap3dedit.stationtexture){ // if(jlmap3dedit.stationtexture){
// setstationtexture(jlmap3dedit.stationtexture,"stationlist",'../../static/texture/nb1/nb1list.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"stationlist",'../../cbtc/static/texture/nb1/nb1list.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"pingbimen",'../../static/texture/nb1/pingbimen.png'); // setstationtexture(jlmap3dedit.stationtexture,"pingbimen",'../../cbtc/static/texture/nb1/pingbimen.png');
// setstationtexture(jlmap3dedit.stationtexture,"Station1533",'../../static/texture/nb1/Station1533.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station1533",'../../cbtc/static/texture/nb1/Station1533.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station11231",'../../static/texture/nb1/Station11231.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station11231",'../../cbtc/static/texture/nb1/Station11231.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station12421",'../../static/texture/nb1/Station12421.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station12421",'../../cbtc/static/texture/nb1/Station12421.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station16356",'../../static/texture/nb1/Station16356.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station16356",'../../cbtc/static/texture/nb1/Station16356.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station18678",'../../static/texture/nb1/Station18678.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station18678",'../../cbtc/static/texture/nb1/Station18678.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station19817",'../../static/texture/nb1/Station19817.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station19817",'../../cbtc/static/texture/nb1/Station19817.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station23567",'../../static/texture/nb1/Station23567.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station23567",'../../cbtc/static/texture/nb1/Station23567.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station24903",'../../static/texture/nb1/Station24903.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station24903",'../../cbtc/static/texture/nb1/Station24903.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station26416",'../../static/texture/nb1/Station26416.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station26416",'../../cbtc/static/texture/nb1/Station26416.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station27207",'../../static/texture/nb1/Station27207.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station27207",'../../cbtc/static/texture/nb1/Station27207.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station28032",'../../static/texture/nb1/Station28032.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station28032",'../../cbtc/static/texture/nb1/Station28032.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station28958",'../../static/texture/nb1/Station28958.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station28958",'../../cbtc/static/texture/nb1/Station28958.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station30520",'../../static/texture/nb1/Station30520.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station30520",'../../cbtc/static/texture/nb1/Station30520.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station32955",'../../static/texture/nb1/Station32955.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station32955",'../../cbtc/static/texture/nb1/Station32955.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station38286",'../../static/texture/nb1/Station38286.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station38286",'../../cbtc/static/texture/nb1/Station38286.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station38674",'../../static/texture/nb1/Station38674.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station38674",'../../cbtc/static/texture/nb1/Station38674.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station44173",'../../static/texture/nb1/Station44173.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station44173",'../../cbtc/static/texture/nb1/Station44173.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station63100",'../../static/texture/nb1/Station63100.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station63100",'../../cbtc/static/texture/nb1/Station63100.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station69378",'../../static/texture/nb1/Station69378.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station69378",'../../cbtc/static/texture/nb1/Station69378.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station72310",'../../static/texture/nb1/Station72310.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station72310",'../../cbtc/static/texture/nb1/Station72310.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station72764",'../../static/texture/nb1/Station72764.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station72764",'../../cbtc/static/texture/nb1/Station72764.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station75414",'../../static/texture/nb1/Station75414.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station75414",'../../cbtc/static/texture/nb1/Station75414.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station75494",'../../static/texture/nb1/Station75494.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station75494",'../../cbtc/static/texture/nb1/Station75494.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station75703",'../../static/texture/nb1/Station75703.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station75703",'../../cbtc/static/texture/nb1/Station75703.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station78392",'../../static/texture/nb1/Station78392.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station78392",'../../cbtc/static/texture/nb1/Station78392.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station81700",'../../static/texture/nb1/Station81700.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station81700",'../../cbtc/static/texture/nb1/Station81700.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station84098",'../../static/texture/nb1/Station84098.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station84098",'../../cbtc/static/texture/nb1/Station84098.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station86112",'../../static/texture/nb1/Station86112.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station86112",'../../cbtc/static/texture/nb1/Station86112.jpg');
// setstationtexture(jlmap3dedit.stationtexture,"Station99584",'../../static/texture/nb1/Station99584.jpg'); // setstationtexture(jlmap3dedit.stationtexture,"Station99584",'../../cbtc/static/texture/nb1/Station99584.jpg');
// } // }
// } // }
// } // }

View File

@ -226,7 +226,7 @@ export function StationStandList() {
//canvas文字贴图方法 //canvas文字贴图方法
//PS:待提炼 增强功能 //PS:待提炼 增强功能
var stationcanvas = new Image(); var stationcanvas = new Image();
stationcanvas.src = "../../static/texture/msgt.png"; stationcanvas.src = "../../cbtc/static/texture/msgt.png";
function getTextCanvas(text){ function getTextCanvas(text){
let canvas = document.getElementById('canvastexture'); let canvas = document.getElementById('canvastexture');

View File

@ -213,7 +213,7 @@ let onProgress = function ( xhr ) {
let onError = function () { }; let onError = function () { };
var beauty = new Image(); var beauty = new Image();
beauty.src = "../../static/texture/guide.png"; beauty.src = "../../cbtc/static/texture/guide.png";
//canvas文字贴图方法 //canvas文字贴图方法
//PS:待提炼 增强功能 //PS:待提炼 增强功能
function getTextCanvas(text){ function getTextCanvas(text){

View File

@ -19,7 +19,7 @@ export function SectionListN() {
var autorail; var autorail;
this.loadpromise = function(sectionList,sectiondata,rails,scene,assetloader){ this.loadpromise = function(sectionList,sectiondata,rails,scene,assetloader){
var texture = new THREE.TextureLoader().load( '../../static/test/z0251.png' ); var texture = new THREE.TextureLoader().load( '../../cbtc/static/test/z0251.png' );
texture.wrapS = texture.wrapT = THREE.RepeatWrapping; texture.wrapS = texture.wrapT = THREE.RepeatWrapping;
texture.repeat.set( 1,1); texture.repeat.set( 1,1);

View File

@ -401,7 +401,7 @@ export function StationStandListN() {
//canvas文字贴图方法 //canvas文字贴图方法
//PS:待提炼 增强功能 //PS:待提炼 增强功能
var stationcanvas = new Image(); var stationcanvas = new Image();
stationcanvas.src = "../../static/texture/msgtnew.png"; stationcanvas.src = "../../cbtc/static/texture/msgtnew.png";
function getTextCanvas(text){ function getTextCanvas(text){
let canvas = document.getElementById('canvastexture'); let canvas = document.getElementById('canvastexture');

View File

@ -415,7 +415,7 @@ let onProgress = function ( xhr ) {
let onError = function () { }; let onError = function () { };
var beauty = new Image(); var beauty = new Image();
beauty.src = "../../static/texture/guidenew.png"; beauty.src = "../../cbtc/static/texture/guidenew.png";
//canvas文字贴图方法 //canvas文字贴图方法
//PS:待提炼 增强功能 //PS:待提炼 增强功能
function getTextCanvas(text){ function getTextCanvas(text){

View File

@ -84,7 +84,9 @@ class MouseController extends Eventful {
mousedown(e) { mousedown(e) {
// if (eventTool.notLeftMouse(e)) { // if (eventTool.notLeftMouse(e)) {
// return; // return;
// } // }
this.$zr.dom.focus();
if (e.which == 1 || e.which == 3) { if (e.which == 1 || e.which == 3) {
var x = e.offsetX; var x = e.offsetX;
var y = e.offsetY; var y = e.offsetY;

View File

@ -85,7 +85,8 @@ class MouseController extends Eventful {
mousedown(e) { mousedown(e) {
// if (eventTool.notLeftMouse(e)) { // if (eventTool.notLeftMouse(e)) {
// return; // return;
// } // }
this.$zr.dom.focus();
if (e.which == 1 || e.which == 3) { if (e.which == 1 || e.which == 3) {
var x = e.offsetX; var x = e.offsetX;
var y = e.offsetY; var y = e.offsetY;

View File

@ -513,7 +513,9 @@ export default {
{ name: '强解区段', cmdType: CMD.Switch.CMD_SWITCH_FAULT_UNLOCK, operate: OperationEvent.Section.fault.menuButton, show: false, securityCommand: true } { name: '强解区段', cmdType: CMD.Switch.CMD_SWITCH_FAULT_UNLOCK, operate: OperationEvent.Section.fault.menuButton, show: false, securityCommand: true }
] : [ ] : [
{ name: '封锁道岔', cmdType: CMD.Switch.CMD_SWITCH_BLOCK, operate: OperationEvent.Switch.block.menuButton, show: false }, { name: '封锁道岔', cmdType: CMD.Switch.CMD_SWITCH_BLOCK, operate: OperationEvent.Switch.block.menuButton, show: false },
{ name: '解封道岔', cmdType: CMD.Switch.CMD_SWITCH_UNBLOCK, operate: OperationEvent.Switch.unblock.menuButton, show: false, securityCommand: true },
{ name: '单锁道岔', cmdType: CMD.Switch.CMD_SWITCH_SINGLE_LOCK, operate: OperationEvent.Switch.lock.menuButton, show: false }, { name: '单锁道岔', cmdType: CMD.Switch.CMD_SWITCH_SINGLE_LOCK, operate: OperationEvent.Switch.lock.menuButton, show: false },
{ name: '取消锁定', cmdType: CMD.Switch.CMD_SWITCH_SINGLE_UNLOCK, operate: OperationEvent.Switch.unlock.menuButton, show: false, securityCommand: true },
{ name: '转换定位', cmdType: CMD.Switch.CMD_SWITCH_NORMAL_POSITION, operate: OperationEvent.Switch.locate.menuButton, show: false, disabledName: 'normalPosition' }, { name: '转换定位', cmdType: CMD.Switch.CMD_SWITCH_NORMAL_POSITION, operate: OperationEvent.Switch.locate.menuButton, show: false, disabledName: 'normalPosition' },
{ name: '转换反位', cmdType: CMD.Switch.CMD_SWITCH_REVERSE_POSITION, operate: OperationEvent.Switch.reverse.menuButton, show: false, disabledName: 'reversePosition' } { name: '转换反位', cmdType: CMD.Switch.CMD_SWITCH_REVERSE_POSITION, operate: OperationEvent.Switch.reverse.menuButton, show: false, disabledName: 'reversePosition' }
// { name: '', cmdType: CMD.Switch.CMD_SWITCH_SECTION_BLOCK, operate: OperationEvent.Section.lock.menu, show: false } // { name: '', cmdType: CMD.Switch.CMD_SWITCH_SECTION_BLOCK, operate: OperationEvent.Section.lock.menu, show: false }

View File

@ -50,7 +50,7 @@ export default {
{ prop: 'description', label: '场景描述', type: 'textarea' }, { prop: 'description', label: '场景描述', type: 'textarea' },
{ prop: 'disposalProcesses', label: '处置流程', type: 'textarea' }, { prop: 'disposalProcesses', label: '处置流程', type: 'textarea' },
{ prop: 'operationScore', label: '运营部分总分', type: 'number', min: 0, max: 100, step:1, precision:1 }, { prop: 'operationScore', label: '运营部分总分', type: 'number', min: 0, max: 100, step:1, precision:1 },
{ prop:'scriptId', label:'关联剧本', type:'select', options:this.scriptList}, { prop:'scriptId', label:'关联剧本', type:'select', options:this.scriptList, optionValue:'value', optionLabel:'label' },
{ prop:'main', label:'是否主场景', type:'switch' } { prop:'main', label:'是否主场景', type:'switch' }
] ]
}; };

View File

@ -94,9 +94,9 @@ export default {
} }
}; };
}, },
mounted() { created() {
getScriptPageListOnlineNew().then(response=>{ getScriptPageListOnlineNew().then(response=>{
this.scriptList = response.data.list.map(elem => { return { value: elem.id, label: elem.name }; }); this.scriptList = response.data.list.map(elem => { return { value: parseInt(elem.id), label: elem.name }; });
// this.queryForm.queryObject.scriptId.config.data = this.scriptList; // this.queryForm.queryObject.scriptId.config.data = this.scriptList;
}); });
}, },

View File

@ -1,6 +1,6 @@
<template> <template>
<el-dialog :title="title" :visible.sync="dialogVisible" width="1200px" :before-close="doClose" top="50px" center custom-class="sceneModifyOut"> <el-dialog :title="title" :visible.sync="dialogVisible" width="1200px" :before-close="doClose" top="50px" center custom-class="sceneModifyOut">
<el-form ref="form" :model="formModel" label-width="120px" class="sceneModify"> <el-form ref="form" :model="formModel" label-width="120px" class="sceneModify" @submit.native.prevent>
<!-- :rules="rules" --> <!-- :rules="rules" -->
<el-table :data="actionList" border style="width:100%;" height="550" :span-method="objectSpanMethod"> <el-table :data="actionList" border style="width:100%;" height="550" :span-method="objectSpanMethod">
<el-table-column label="步骤名称" width="100"> <el-table-column label="步骤名称" width="100">
@ -121,7 +121,8 @@
<operate-statistic ref="operateStatistic" @submitOperateStatistic="submitOperateStatistic" /> <operate-statistic ref="operateStatistic" @submitOperateStatistic="submitOperateStatistic" />
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button type="primary" @click="doUpdate">{{ $t('global.confirm') }}</el-button> <el-button type="primary" @click="doSave">保存</el-button>
<el-button type="primary" @click="doConfirm">{{ $t('global.confirm') }}</el-button>
<el-button @click="doClose">{{ $t('global.cancel') }}</el-button> <el-button @click="doClose">{{ $t('global.cancel') }}</el-button>
</span> </span>
</el-dialog> </el-dialog>
@ -198,6 +199,7 @@ export default {
if (response.data.commandEvaluationRuleVOs) { if (response.data.commandEvaluationRuleVOs) {
response.data.commandEvaluationRuleVOs.forEach(data=>{ response.data.commandEvaluationRuleVOs.forEach(data=>{
commandEvaluationRuleVOs[data.actionId] = data; commandEvaluationRuleVOs[data.actionId] = data;
// commandEvaluationRuleVOs[data.actionId].inputVisible = false;
}); });
} }
const stepVOs = {}; const stepVOs = {};
@ -234,7 +236,7 @@ export default {
} }
}); });
lastData = JSON.parse(lastData); lastData = JSON.parse(lastData);
const lastMemberList = []; const lastMemberList = {};
lastData.forEach((member, index)=>{ lastData.forEach((member, index)=>{
const userName = member.userName ? '-' + member.userName : ''; const userName = member.userName ? '-' + member.userName : '';
const name = member.name ? '-' + member.name : ''; const name = member.name ? '-' + member.name : '';
@ -252,7 +254,7 @@ export default {
member.label = member.type + name + userName; member.label = member.type + name + userName;
member.normalName = member.type + name; member.normalName = member.type + name;
} }
lastMemberList.push(member); lastMemberList[member.id] = member;
this.memberList = lastMemberList; this.memberList = lastMemberList;
this.dialogVisible = true; this.dialogVisible = true;
}); });
@ -348,9 +350,11 @@ export default {
}); });
}, },
showInput(actionId) { showInput(actionId) {
this.commandEvaluationRuleVOs[actionId].inputVisible = true; const self = this;
// this.commandEvaluationRuleVOs[actionId].inputVisible = true;
this.$set(this.commandEvaluationRuleVOs[actionId], 'inputVisible', true);
this.$nextTick(_ => { this.$nextTick(_ => {
this.$refs['saveTagInput' + actionId].$refs.input.focus(); self.$refs['saveTagInput' + actionId].$refs.input.focus();
}); });
}, },
handleInputConfirm(actionId) { handleInputConfirm(actionId) {
@ -391,7 +395,14 @@ export default {
this.$refs['saveDeductScoreInput' + actionId].$refs.input.focus(); this.$refs['saveDeductScoreInput' + actionId].$refs.input.focus();
}); });
}, },
doUpdate(operationStatisticVO = null) { doConfirm() {
this.doUpdate(null);
this.doClose();
},
doSave() {
this.doUpdate(null);
},
doUpdate(operationStatisticVO) {
let commandEvaluationRuleVOs = Object.values(this.commandEvaluationRuleVOs); let commandEvaluationRuleVOs = Object.values(this.commandEvaluationRuleVOs);
const stepVOs = Object.values(this.stepVOs); const stepVOs = Object.values(this.stepVOs);
commandEvaluationRuleVOs = commandEvaluationRuleVOs.filter(eachData=>{ commandEvaluationRuleVOs = commandEvaluationRuleVOs.filter(eachData=>{
@ -412,6 +423,7 @@ export default {
delete data.deductScoreVisible; delete data.deductScoreVisible;
}); });
} }
// && operationStatisticVO.itemVOS
if (operationStatisticVO) { if (operationStatisticVO) {
this.formModel.operationStatisticVO = operationStatisticVO; this.formModel.operationStatisticVO = operationStatisticVO;
} }
@ -477,8 +489,8 @@ export default {
}, },
objectSort(keyName) { objectSort(keyName) {
return function (objectN, objectM) { return function (objectN, objectM) {
var valueN = objectN[keyName]; var valueN = parseInt(objectN[keyName]);
var valueM = objectM[keyName]; var valueM = parseInt(objectM[keyName]);
if (valueN > valueM) return 1; if (valueN > valueM) return 1;
else if (valueN < valueM) return -1; else if (valueN < valueM) return -1;
else return 0; else return 0;

View File

@ -3,7 +3,7 @@
<div class="OperateStatisticIn"> <div class="OperateStatisticIn">
<div class="OperateStatisticInName">编辑运营统计</div> <div class="OperateStatisticInName">编辑运营统计</div>
<div class="OperateStatisticContent"> <div class="OperateStatisticContent">
<el-form ref="form" :rules="rules" :model="formModel" label-width="140px" class="statisticForm"> <el-form ref="dataform" :rules="rules" :model="formModel" label-width="140px" class="statisticForm" @submit.native.prevent>
<el-form-item label="每一项分值" :required="true" prop="score"> <el-form-item label="每一项分值" :required="true" prop="score">
<el-input-number <el-input-number
v-model="formModel.score" v-model="formModel.score"
@ -82,7 +82,7 @@ export default {
}, },
confirm() { confirm() {
const self = this; const self = this;
this.$refs.dataform.validateForm(() => { this.$refs.dataform.validate(() => {
const itemVOS = self.formModel.itemVOS; const itemVOS = self.formModel.itemVOS;
if (itemVOS.length > 0) { if (itemVOS.length > 0) {
let result = true; let result = true;

View File

@ -105,30 +105,102 @@ export default {
id: 'environment', id: 'environment',
type: 'totalSystem', type: 'totalSystem',
children: [ children: [
{ {
name: '大系统', name: '车站模式管理器',
mode: 'environment02', mode: 'environment02',
id: 'environmentOne', id: 'environmentOne',
type: 'interface' type: 'interface'
}, },
{ {
name: '冷水系统', name: '时间表管理器',
mode: 'environment02', mode: 'environment02',
id: 'environmentTwo', id: 'environmentTwo',
type: 'interface' type: 'interface'
}, },
{ {
name: '隧道通风系统', name: '隧道通风系统',
mode: 'environment02', mode: 'environment02',
id: 'environmentThree', id: 'environmentThree',
type: 'interface' type: 'interface'
}, },
{ {
name: '车站小系统1', name: '大系统',
mode: 'environment02', mode: 'environment02',
id: 'environmentFour', id: 'environmentFour',
type: 'interface' type: 'interface'
} },
{
name: '小系统',
mode: 'environment02',
id: 'environmentFive',
type: 'interface'
},
{
name: '空调水系统',
mode: 'environment02',
id: 'environmentSix',
type: 'interface'
},
{
name: 'VRV多联空调',
mode: 'environment02',
id: 'environmentSeven',
type: 'interface'
},
{
name: '给排水系统',
mode: 'environment02',
id: 'environmentEight',
type: 'interface'
},
{
name: '照明系统',
mode: 'environment02',
id: 'environmentNine',
type: 'interface'
},
{
name: '电扶梯系统',
mode: 'environment02',
id: 'environmentTen',
type: 'interface'
},
{
name: '人防门',
mode: 'environment02',
id: 'environmentEleven',
type: 'interface'
},
{
name: '防淹门',
mode: 'environment02',
id: 'environmentTwelve',
type: 'interface'
},
{
name: '传感器',
mode: 'environment02',
id: 'environmentThirteen',
type: 'interface'
},
{
name: 'BAS网络诊断',
mode: 'environment02',
id: 'environmentFourteen',
type: 'interface'
},
{
name: '隧道阻塞模式管理器',
mode: 'environment02',
id: 'environmentFifteen',
type: 'interface'
},
{
name: '隧道火灾模式管理器',
mode: 'environment02',
id: 'environmentSixteen',
type: 'interface'
}
] ]
}, },
{ {

View File

@ -1,6 +1,9 @@
<template> <template>
<div style="overflow-y: scroll;height: calc(100% - 46px); width: 100%;"> <div style="overflow-y: scroll;height: calc(100% - 46px); width: 100%;">
<el-form ref="form" :rules="rules" :model="form" label-width="80px" style="width: 100%;padding: 10px 50px;"> <el-form ref="form" :rules="rules" :model="form" label-width="80px" style="width: 100%;padding: 10px 50px;">
<el-form-item label="图层:" prop="z2">
<el-input-number v-model="form.z2" controls-position="right" :min="0" size="small" />
</el-form-item>
<el-form-item label="半径:" prop="radius"> <el-form-item label="半径:" prop="radius">
<el-input-number v-model="form.radius" controls-position="right" :min="3" size="small" /> <el-input-number v-model="form.radius" controls-position="right" :min="3" size="small" />
</el-form-item> </el-form-item>
@ -41,7 +44,8 @@ export default {
buttonText: '立即创建', buttonText: '立即创建',
showDeleteButton: false, showDeleteButton: false,
form: { form: {
code: '', code: '',
z2: 1,
fillColor: '', fillColor: '',
borderWidth: '', borderWidth: '',
strokeColor: '', strokeColor: '',
@ -71,7 +75,8 @@ export default {
this.buttonText = '修改'; this.buttonText = '修改';
this.showDeleteButton = true; this.showDeleteButton = true;
this.isUpdate = true; this.isUpdate = true;
this.form.code = model.code; this.form.code = model.code;
this.form.z2 = model.z2||0;
this.form.fillColor = model.fillColor; this.form.fillColor = model.fillColor;
this.form.borderWidth = model.borderWidth; this.form.borderWidth = model.borderWidth;
this.form.strokeColor = model.strokeColor; this.form.strokeColor = model.strokeColor;
@ -92,7 +97,8 @@ export default {
y: this.form.y y: this.form.y
}, },
code: this.isUpdate ? this.form.code : getUID('IscsCircle', this.iscs.iscsCircleList), code: this.isUpdate ? this.form.code : getUID('IscsCircle', this.iscs.iscsCircleList),
_type: 'IscsCircle', _type: 'IscsCircle',
z2: this.form.z2,
fillColor: this.form.fillColor, fillColor: this.form.fillColor,
borderWidth: this.form.borderWidth, borderWidth: this.form.borderWidth,
strokeColor: this.form.strokeColor, strokeColor: this.form.strokeColor,

View File

@ -1,6 +1,9 @@
<template> <template>
<div style="overflow-y: scroll;height: calc(100% - 46px); width: 100%;"> <div style="overflow-y: scroll;height: calc(100% - 46px); width: 100%;">
<el-form ref="form" :rules="rules" :model="form" label-width="100px" style="width: 100%;padding: 10px 20px;"> <el-form ref="form" :rules="rules" :model="form" label-width="100px" style="width: 100%;padding: 10px 20px;">
<el-form-item label="图层:" prop="z2">
<el-input-number v-model="form.z2" controls-position="right" :min="0" size="small" />
</el-form-item>
<el-form-item label="线段宽度:" prop="lineWidth"> <el-form-item label="线段宽度:" prop="lineWidth">
<el-input-number v-model="form.lineWidth" controls-position="right" :min="1" :max="50" size="small" /> <el-input-number v-model="form.lineWidth" controls-position="right" :min="1" :max="50" size="small" />
</el-form-item> </el-form-item>
@ -119,7 +122,8 @@ export default {
showDeleteButton: false, showDeleteButton: false,
form: { form: {
classify:'solid', classify:'solid',
code: '', code: '',
z2: 0,
lineWidth: '', lineWidth: '',
fillColor: '#fff', fillColor: '#fff',
arrowShow: 'none', arrowShow: 'none',
@ -154,7 +158,8 @@ export default {
this.buttonText = '修改'; this.buttonText = '修改';
this.showDeleteButton = true; this.showDeleteButton = true;
this.isUpdate = true; this.isUpdate = true;
this.form.code = model.code; this.form.code = model.code;
this.form.z2 = model.z2||0;
this.form.lineWidth = model.lineWidth; this.form.lineWidth = model.lineWidth;
this.form.fillColor = model.fillColor; this.form.fillColor = model.fillColor;
if (model.point1) { if (model.point1) {
@ -184,7 +189,8 @@ export default {
const lineModel = { const lineModel = {
points: this.form.points, points: this.form.points,
code: this.isUpdate ? this.form.code : getUID('IscsLine', this.iscs.iscsLineList), code: this.isUpdate ? this.form.code : getUID('IscsLine', this.iscs.iscsLineList),
_type: 'IscsLine', _type: 'IscsLine',
z2: this.form.z2,
lineWidth: this.form.lineWidth, lineWidth: this.form.lineWidth,
fillColor: this.form.fillColor, fillColor: this.form.fillColor,
classify: this.form.classify, classify: this.form.classify,

View File

@ -1,6 +1,9 @@
<template> <template>
<div style="overflow-y: scroll;height: calc(100% - 46px); width: 100%;"> <div style="overflow-y: scroll;height: calc(100% - 46px); width: 100%;">
<el-form ref="form" :rules="rules" :model="form" label-width="80px" style="width: 100%;padding: 10px 50px;"> <el-form ref="form" :rules="rules" :model="form" label-width="80px" style="width: 100%;padding: 10px 50px;">
<el-form-item label="图层:" prop="z2">
<el-input-number v-model="form.z2" controls-position="right" :min="0" size="small" />
</el-form-item>
<el-form-item label="宽度:" prop="width"> <el-form-item label="宽度:" prop="width">
<el-input-number v-model="form.width" controls-position="right" :min="1" size="small" /> <el-input-number v-model="form.width" controls-position="right" :min="1" size="small" />
</el-form-item> </el-form-item>
@ -50,7 +53,8 @@ export default {
buttonText: '立即创建', buttonText: '立即创建',
showDeleteButton: false, showDeleteButton: false,
form: { form: {
code: '', code: '',
z2: 1,
fillColor: '', fillColor: '',
borderWidth: '', borderWidth: '',
strokeColor: '', strokeColor: '',
@ -82,7 +86,8 @@ export default {
this.buttonText = '修改'; this.buttonText = '修改';
this.showDeleteButton = true; this.showDeleteButton = true;
this.isUpdate = true; this.isUpdate = true;
this.form.code = model.code; this.form.code = model.code;
this.form.z2 = model.z2||0;
this.form.fillColor = model.fillColor; this.form.fillColor = model.fillColor;
this.form.borderWidth = model.borderWidth; this.form.borderWidth = model.borderWidth;
this.form.strokeColor = model.strokeColor; this.form.strokeColor = model.strokeColor;
@ -105,7 +110,8 @@ export default {
y: this.form.y y: this.form.y
}, },
code: this.isUpdate ? this.form.code : getUID('IscsRect', this.iscs.iscsRectList), code: this.isUpdate ? this.form.code : getUID('IscsRect', this.iscs.iscsRectList),
_type: 'IscsRect', _type: 'IscsRect',
z2: this.form.z2,
fillColor: this.form.fillColor, fillColor: this.form.fillColor,
borderWidth: this.form.borderWidth, borderWidth: this.form.borderWidth,
strokeColor: this.form.strokeColor, strokeColor: this.form.strokeColor,

View File

@ -1,7 +1,10 @@
<template> <template>
<div style="overflow-y: scroll;height: calc(100% - 46px); width: 100%;"> <div style="overflow-y: scroll;height: calc(100% - 46px); width: 100%;">
<el-form ref="form" :rules="rules" :model="form" label-width="80px" style="width: 100%;padding: 10px 50px;"> <el-form ref="form" :rules="rules" :model="form" label-width="80px" style="width: 100%;padding: 10px 50px;">
<el-form-item label="底边:" prop="width"> <el-form-item label="图层:" prop="z2">
<el-input-number v-model="form.z2" controls-position="right" :min="1" size="small" />
</el-form-item>
<el-form-item label="底边:" prop="width">
<el-input-number v-model="form.width" controls-position="right" :min="1" size="small" /> <el-input-number v-model="form.width" controls-position="right" :min="1" size="small" />
</el-form-item> </el-form-item>
<el-form-item label="高度:" prop="height"> <el-form-item label="高度:" prop="height">
@ -52,7 +55,8 @@ export default {
buttonText: '立即创建', buttonText: '立即创建',
showDeleteButton: false, showDeleteButton: false,
form: { form: {
code: '', code: '',
z2: 1,
fillColor: '', fillColor: '',
borderWidth: '', borderWidth: '',
direction:'left', direction:'left',
@ -84,7 +88,8 @@ export default {
this.buttonText = '修改'; this.buttonText = '修改';
this.showDeleteButton = true; this.showDeleteButton = true;
this.isUpdate = true; this.isUpdate = true;
this.form.code = model.code; this.form.code = model.code;
this.form.z2 = model.z2||1;
this.form.fillColor = model.fillColor; this.form.fillColor = model.fillColor;
this.form.borderWidth = model.borderWidth; this.form.borderWidth = model.borderWidth;
this.form.strokeColor = model.strokeColor; this.form.strokeColor = model.strokeColor;
@ -107,7 +112,8 @@ export default {
y: this.form.y y: this.form.y
}, },
code: this.isUpdate ? this.form.code : getUID('IscsTriangle', this.iscs.iscsTriangleList), code: this.isUpdate ? this.form.code : getUID('IscsTriangle', this.iscs.iscsTriangleList),
_type: 'IscsTriangle', _type: 'IscsTriangle',
z2: this.form.z2,
fillColor: this.form.fillColor, fillColor: this.form.fillColor,
borderWidth: this.form.borderWidth, borderWidth: this.form.borderWidth,
strokeColor: this.form.strokeColor, strokeColor: this.form.strokeColor,

View File

@ -41,6 +41,22 @@
@createDataModel="createDataModel" @createDataModel="createDataModel"
@deleteDataModel="deleteDataModel" @deleteDataModel="deleteDataModel"
/> />
</el-tab-pane>
<el-tab-pane label="圆形" name="IscsCircle">
<iscs-circle
ref="iscsCircle"
style="width: 100%;height: 100%;"
@createDataModel="createDataModel"
@deleteDataModel="deleteDataModel"
/>
</el-tab-pane>
<el-tab-pane label="三角形" name="IscsTriangle">
<iscs-triangle
ref="iscsTriangle"
style="width: 100%;height: 100%;"
@createDataModel="createDataModel"
@deleteDataModel="deleteDataModel"
/>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
</el-card> </el-card>
@ -53,6 +69,8 @@ import IscsLine from '../icscComponents/line';
import IscsText from '../icscComponents/text'; import IscsText from '../icscComponents/text';
import IscsRect from '../icscComponents/rect'; import IscsRect from '../icscComponents/rect';
import IscsButton from '../icscComponents/button'; import IscsButton from '../icscComponents/button';
import IscsCircle from '../icscComponents/circle';
import IscsTriangle from '../icscComponents/triangle';
export default { export default {
name: 'IscsOperate', name: 'IscsOperate',
@ -60,7 +78,9 @@ export default {
IscsRect, IscsRect,
IscsLine, IscsLine,
IscsText, IscsText,
IscsButton IscsButton,
IscsCircle,
IscsTriangle
}, },
mixins: [ mixins: [
], ],

View File

@ -41,6 +41,30 @@
@createDataModel="createDataModel" @createDataModel="createDataModel"
@deleteDataModel="deleteDataModel" @deleteDataModel="deleteDataModel"
/> />
</el-tab-pane>
<el-tab-pane label="圆形" name="IscsCircle">
<iscs-circle
ref="iscsCircle"
style="width: 100%;height: 100%;"
@createDataModel="createDataModel"
@deleteDataModel="deleteDataModel"
/>
</el-tab-pane>
<el-tab-pane label="三角形" name="IscsTriangle">
<iscs-triangle
ref="iscsTriangle"
style="width: 100%;height: 100%;"
@createDataModel="createDataModel"
@deleteDataModel="deleteDataModel"
/>
</el-tab-pane>
<el-tab-pane label="表格" name="StateTable">
<state-table
ref="stateTable"
style="width: 100%;height: 100%;"
@createDataModel="createDataModel"
@deleteDataModel="deleteDataModel"
/>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
</el-card> </el-card>
@ -53,6 +77,10 @@ import IscsLine from '../icscComponents/line';
import IscsText from '../icscComponents/text'; import IscsText from '../icscComponents/text';
import IscsRect from '../icscComponents/rect'; import IscsRect from '../icscComponents/rect';
import IscsButton from '../icscComponents/button'; import IscsButton from '../icscComponents/button';
import IscsCircle from '../icscComponents/circle';
import IscsTriangle from '../icscComponents/triangle';
import StateTable from '../icscComponents/stateTable';
export default { export default {
name: 'IscsOperate', name: 'IscsOperate',
@ -60,7 +88,10 @@ export default {
IscsRect, IscsRect,
IscsLine, IscsLine,
IscsText, IscsText,
IscsButton IscsButton,
IscsCircle,
IscsTriangle,
StateTable
}, },
mixins: [ mixins: [
], ],

View File

@ -1,5 +1,5 @@
<template> <template>
<div style="width: 100%; height: 100%;"> <div class="iscsCanvas">
<div :id="iscsId" v-loading="loading" :style="{ width: widthCanvas +'px', height: canvasHeight +'px' }" class="iscs-canvas" /> <div :id="iscsId" v-loading="loading" :style="{ width: widthCanvas +'px', height: canvasHeight +'px' }" class="iscs-canvas" />
</div> </div>
</template> </template>
@ -23,6 +23,10 @@ export default {
canvasHeight: { canvasHeight: {
type: Number, type: Number,
default: 500 default: 500
},
scaleRate:{
type: Number,
default: 1
} }
}, },
data() { data() {
@ -47,7 +51,7 @@ export default {
height: this.canvasHeight height: this.canvasHeight
}, },
options: { options: {
scaleRate: 1, scaleRate: this.scaleRate,
offsetX: 0, offsetX: 0,
offsetY: 0 offsetY: 0
}, },
@ -78,5 +82,11 @@ export default {
.iscs-canvas{ .iscs-canvas{
margin: 0 auto; margin: 0 auto;
} }
.iscsCanvas{
width: 100%;
height: 100%;
overflow-y: auto;
overflow-x: hidden;
}
</style> </style>

View File

@ -1,13 +1,16 @@
<template> <template>
<div style="height: 100%; width: 100%;overflow-y: auto;"> <div style="height: 100%; width: 100%;overflow-y: auto;">
<psd-system v-if="mode=='psdSystem'" /> <psd-system v-if="mode=='psdSystem'" />
<substation v-else-if="mode=='substation'" />
</div> </div>
</template> </template>
<script> <script>
import PsdSystem from './psdSystem/index.vue'; import PsdSystem from './psdSystem/index.vue';
import Substation from './powerMonitor/substation.vue';
export default { export default {
components:{ components:{
PsdSystem PsdSystem,
Substation
}, },
data() { data() {
return { return {

View File

@ -0,0 +1,60 @@
<template>
<div class="Substation">
<div class="Substation_header">黄山主变电所接线图</div>
<div>
<iscsSystem ref="iscsPlate" :width-canvas="width" :canvas-height="height" :scale-rate="scaleRate" />
</div>
<!-- <div class="psdSystem_footer">
<div class="prevButton">{{}}</div>
<div class="nextButton">{{}}</div>
</div> -->
</div>
</template>
<script>
import iscsSystem from '../canvas/iscsCanvas';
import {getIscsData} from '@/api/iscs';
export default {
name:'Substation',
components:{
iscsSystem
},
computed:{
stationName() {
return this.$route.query.stationName;
},
width() {
return window.innerWidth;
},
height() {
return 970;
},
scaleRate() {
return window.innerWidth / 2200;
}
},
mounted() {
const params = {
lineCode: this.$route.query.lineCode,
totalSystem: 'powerMonitoring02',
system: 'powerMonitoring',
userInterface: 'substation'
};
getIscsData(params).then(resp=>{
if (resp.data) {
const data = JSON.parse(resp.data.graphData);
this.$refs.iscsPlate.show(data);
}
});
}
};
</script>
<style lang="scss" scoped>
.Substation_header{
text-align: center;
margin-top: 15px;
color: #d8e9a5;
}
.Substation{
}
</style>

View File

@ -53,10 +53,24 @@ export default {
stationList:[], stationList:[],
group:'', group:'',
lineCode:'', lineCode:'',
buttonId:'electric', buttonId:'substation',
buttonList:{ buttonList:{
stationDescription:{name:'车站概要', type:'totalSystem', id: 'stationDescription', active:false, icon:iscs_icon1 }, stationDescription:{name:'车站概要', type:'totalSystem', id: 'stationDescription', active:false, icon:iscs_icon1 },
electric: {name:'电力监控系统', type:'totalSystem', id: 'electric', active:false, icon:iscs_icon2 }, electric: {name:'电力监控系统', type:'totalSystem', id: 'powerMonitoring', active:false, icon:iscs_icon2,
children:[
{
name: '牵引降压所主接线图',
mode: 'substation',
id: 'substation',
type: 'interface'
},
{
name: '能耗检测管理系统',
mode: 'energyDetected',
id: 'energyDetected',
type: 'interface'
}
] },
environment:{name:'环境与设备监控系统', type:'totalSystem', id: 'environment', active:false, icon:iscs_icon3 }, environment:{name:'环境与设备监控系统', type:'totalSystem', id: 'environment', active:false, icon:iscs_icon3 },
ffas: {name:'火灾报警系统', type:'totalSystem', id: 'ffas', mode: 'ffas', active:false, icon:iscs_icon4, ffas: {name:'火灾报警系统', type:'totalSystem', id: 'ffas', mode: 'ffas', active:false, icon:iscs_icon4,
children:[ children:[
@ -385,6 +399,7 @@ export default {
bottom: 0; bottom: 0;
left: 0; left: 0;
padding-left: 5px; padding-left: 5px;
z-index:3;
} }
.bottom-box-in{ .bottom-box-in{
display: inline-block; display: inline-block;

View File

@ -164,7 +164,7 @@ export default {
if (this.selected && this.selected.code) { if (this.selected && this.selected.code) {
switch (hook) { switch (hook) {
case 'KeyC': { case 'KeyC': {
const list = this.getSelectList(); const list = this.getSelectList();
if (list.length) { if (list.length) {
this.copyList = []; this.copyList = [];
const mapIscs = {}; const mapIscs = {};
@ -190,7 +190,7 @@ export default {
} }
} break; } break;
case 'KeyV': { case 'KeyV': {
const list = this.getSelectList(); const list = this.getSelectList();
if (list.length) { if (list.length) {
this.copyList.forEach(item => { this.copyList.forEach(item => {
item.code && this.createDataModel(item); item.code && this.createDataModel(item);

View File

@ -89,7 +89,7 @@ export default {
// background-color: #FFFFFF; // background-color: #FFFFFF;
// border-radius:5px; // border-radius:5px;
background-image:url("/static/texture/devicelistpane.png"); background-image:url("/cbtc/static/texture/devicelistpane.png");
background-repeat: no-repeat; background-repeat: no-repeat;
overflow: hidden; overflow: hidden;
background-size:90% 100%; background-size:90% 100%;

View File

@ -63,7 +63,7 @@ export default {
width: 20%; width: 20%;
height: 70%; height: 70%;
z-index: 10; z-index: 10;
background-image:url("/static/texture/devicemsgpane.png"); background-image:url("/cbtc/static/texture/devicemsgpane.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size: 90% 100%; background-size: 90% 100%;

View File

@ -253,7 +253,7 @@
position: absolute; position: absolute;
right:60px; right:60px;
top:5px; top:5px;
background-image:url("/static/texture/fk.png"); background-image:url("/cbtc/static/texture/fk.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100%; background-size:100%;
} }
@ -263,7 +263,7 @@
position: absolute; position: absolute;
right:15px; right:15px;
top:5px; top:5px;
background-image:url("/static/texture/xx.png"); background-image:url("/cbtc/static/texture/xx.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100%; background-size:100%;
} }

View File

@ -94,7 +94,7 @@ export default {
width: 20%; width: 20%;
height: 100%; height: 100%;
background-color: #FFFFFF; background-color: #FFFFFF;
// background-image:url("/static/texture/menu.png"); // background-image:url("/cbtc/static/texture/menu.png");
// background-repeat: no-repeat; // background-repeat: no-repeat;
// background-size: 100%; // background-size: 100%;
// border-radius:5px; // border-radius:5px;

View File

@ -466,7 +466,7 @@
width: 20%; width: 20%;
height: 40%; height: 40%;
z-index: 10; z-index: 10;
background-image:url("/static/texture/showmsg.png"); background-image:url("/cbtc/static/texture/showmsg.png");
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: 100%; background-size: 100%;
@ -485,7 +485,7 @@
background-color: #409EFF; background-color: #409EFF;
border-radius: 4px; border-radius: 4px;
color: #FFFFFF color: #FFFFFF
/* background-image:url("/static/texture/menu.png"); */ /* background-image:url("/cbtc/static/texture/menu.png"); */
/* background-repeat: no-repeat; */ /* background-repeat: no-repeat; */
/* background-size: 100%; */ /* background-size: 100%; */
} }

View File

@ -55,12 +55,12 @@
touchcontrol:true, touchcontrol:true,
touchstate:"Neutral", touchstate:"Neutral",
toutransform:"rotate(175deg)", toutransform:"rotate(175deg)",
start:"/static/jl3d/control/start.png", start:"/cbtc/static/jl3d/control/start.png",
direct:"/static/jl3d/control/direct.png", direct:"/cbtc/static/jl3d/control/direct.png",
directz:"/static/jl3d/control/directfront.png", directz:"/cbtc/static/jl3d/control/directfront.png",
directoffpng:"/static/jl3d/control/directoff.png", directoffpng:"/cbtc/static/jl3d/control/directoff.png",
pane:"/static/jl3d/control/pane.png", pane:"/cbtc/static/jl3d/control/pane.png",
lg:"/static/jl3d/control/lg.png", lg:"/cbtc/static/jl3d/control/lg.png",
iconrotate:45,//deg iconrotate:45,//deg
icontranslateX:100,//沿xpx icontranslateX:100,//沿xpx

View File

@ -368,7 +368,7 @@ import axios from 'axios';
bottom:0; bottom:0;
position: absolute; position: absolute;
background-size: 100% 100%; background-size: 100% 100%;
background-image: url('/static/jl3d/control/scene.png'); background-image: url('/cbtc/static/jl3d/control/scene.png');
border-radius:10px; border-radius:10px;
} }
.panebutton{ .panebutton{

View File

@ -92,16 +92,16 @@
data() { data() {
return { return {
apoimg:"/static/jl3d/control/green.png", apoimg:"/cbtc/static/jl3d/control/green.png",
greenzimg:"/static/jl3d/control/greenz.png", greenzimg:"/cbtc/static/jl3d/control/greenz.png",
redzimg:"/static/jl3d/control/redz.png", redzimg:"/cbtc/static/jl3d/control/redz.png",
greenimg:"/static/jl3d/control/green.png", greenimg:"/cbtc/static/jl3d/control/green.png",
redimg:"/static/jl3d/control/red.png", redimg:"/cbtc/static/jl3d/control/red.png",
greenlimg:"/static/jl3d/control/greenl.png", greenlimg:"/cbtc/static/jl3d/control/greenl.png",
grayimg:"/static/jl3d/control/gray.png", grayimg:"/cbtc/static/jl3d/control/gray.png",
zuoimg:"/static/jl3d/control/zuo.png", zuoimg:"/cbtc/static/jl3d/control/zuo.png",
niuimg:"/static/jl3d/control/niu.png", niuimg:"/cbtc/static/jl3d/control/niu.png",
aircomimg:"/static/jl3d/control/aircom.png", aircomimg:"/cbtc/static/jl3d/control/aircom.png",
passlighttf:"rotate(0deg)", passlighttf:"rotate(0deg)",
sivtf:"rotate(0deg)", sivtf:"rotate(0deg)",
driverlighttf:"rotate(0deg)", driverlighttf:"rotate(0deg)",

View File

@ -71,11 +71,11 @@
}, },
data() { data() {
return { return {
redlimg:"/static/jl3d/control/redl.png", redlimg:"/cbtc/static/jl3d/control/redl.png",
greenimg:"/static/jl3d/control/green.png", greenimg:"/cbtc/static/jl3d/control/green.png",
zuoimg:"/static/jl3d/control/zuo.png", zuoimg:"/cbtc/static/jl3d/control/zuo.png",
niuimg:"/static/jl3d/control/niu.png", niuimg:"/cbtc/static/jl3d/control/niu.png",
urgestopimg:"/static/jl3d/control/urgestop.png", urgestopimg:"/cbtc/static/jl3d/control/urgestop.png",
doordirecttou:"rotate(0deg)", doordirecttou:"rotate(0deg)",
doormodetou:"rotate(0deg)", doormodetou:"rotate(0deg)",
watertou:"rotate(0deg)", watertou:"rotate(0deg)",

View File

@ -151,45 +151,45 @@
return { return {
move:0, move:0,
movex:"20%", movex:"20%",
apoimg:"/static/jl3d/control/green.png", apoimg:"/cbtc/static/jl3d/control/green.png",
sgimg:"/static/jl3d/control/redz.png", sgimg:"/cbtc/static/jl3d/control/redz.png",
jgimg:"/static/jl3d/control/greenz.png", jgimg:"/cbtc/static/jl3d/control/greenz.png",
atpimg:"/static/jl3d/control/atp.png", atpimg:"/cbtc/static/jl3d/control/atp.png",
slimg:"/static/jl3d/control/gray.png", slimg:"/cbtc/static/jl3d/control/gray.png",
zuoimg:"/static/jl3d/control/zuo.png", zuoimg:"/cbtc/static/jl3d/control/zuo.png",
niuimg:"/static/jl3d/control/niu.png", niuimg:"/cbtc/static/jl3d/control/niu.png",
toutransform:"rotate(0deg)", toutransform:"rotate(0deg)",
redlimg:"/static/jl3d/control/redl.png", redlimg:"/cbtc/static/jl3d/control/redl.png",
greenimg:"/static/jl3d/control/green.png", greenimg:"/cbtc/static/jl3d/control/green.png",
urgestopimg:"/static/jl3d/control/urgestop.png", urgestopimg:"/cbtc/static/jl3d/control/urgestop.png",
iconrotate:0, iconrotate:0,
doordirecttou:"rotate(0deg)", doordirecttou:"rotate(0deg)",
doormodetou:"rotate(0deg)", doormodetou:"rotate(0deg)",
watertou:"rotate(0deg)", watertou:"rotate(0deg)",
washtou:"rotate(0deg)", washtou:"rotate(0deg)",
greenzimg:"/static/jl3d/control/greenz.png", greenzimg:"/cbtc/static/jl3d/control/greenz.png",
redzimg:"/static/jl3d/control/redz.png", redzimg:"/cbtc/static/jl3d/control/redz.png",
redimg:"/static/jl3d/control/red.png", redimg:"/cbtc/static/jl3d/control/red.png",
greenlimg:"/static/jl3d/control/greenl.png", greenlimg:"/cbtc/static/jl3d/control/greenl.png",
grayimg:"/static/jl3d/control/gray.png", grayimg:"/cbtc/static/jl3d/control/gray.png",
aircomimg:"/static/jl3d/control/aircom.png", aircomimg:"/cbtc/static/jl3d/control/aircom.png",
passlighttf:"rotate(0deg)", passlighttf:"rotate(0deg)",
sivtf:"rotate(0deg)", sivtf:"rotate(0deg)",
driverlighttf:"rotate(0deg)", driverlighttf:"rotate(0deg)",
headlighttf:"rotate(0deg)", headlighttf:"rotate(0deg)",
// atoOn:null, // atoOn:null,
atobuttonimg:"/static/jl3d/control/green.png", atobuttonimg:"/cbtc/static/jl3d/control/green.png",
// driveMode:null, // driveMode:null,
rmbuttonimg:"/static/jl3d/control/green.png", rmbuttonimg:"/cbtc/static/jl3d/control/green.png",
// runLevel:null, // runLevel:null,
cbtcbuttonimg:"/static/jl3d/control/green.png", cbtcbuttonimg:"/cbtc/static/jl3d/control/green.png",
doorleftstatus:false, doorleftstatus:false,
doorrightstatus:false, doorrightstatus:false,
doorleftimg:"/static/jl3d/control/green.png", doorleftimg:"/cbtc/static/jl3d/control/green.png",
doorrightimg:"/static/jl3d/control/green.png", doorrightimg:"/cbtc/static/jl3d/control/green.png",
} }
}, },

View File

@ -20,7 +20,7 @@ export function mmirender(dom) {
scene.add( plane ); scene.add( plane );
var texture = new THREE.TextureLoader().load( '/static/jl3d/biao.png' ); var texture = new THREE.TextureLoader().load( '/cbtc/static/jl3d/biao.png' );
var geometry = new THREE.PlaneBufferGeometry( 60, 60, 2 ); var geometry = new THREE.PlaneBufferGeometry( 60, 60, 2 );
var material = new THREE.MeshBasicMaterial( {map: texture, side: THREE.DoubleSide} ); var material = new THREE.MeshBasicMaterial( {map: texture, side: THREE.DoubleSide} );
var kd = new THREE.Mesh( geometry, material ); var kd = new THREE.Mesh( geometry, material );

View File

@ -5,93 +5,93 @@ export function mmiimage() {
//n //n
this.n = []; this.n = [];
this.n['tiaoting'] = '/static/jl3d/mmi/n-tiaoting.png'; this.n['tiaoting'] = '/cbtc/static/jl3d/mmi/n-tiaoting.png';
this.n['kouche'] = '/static/jl3d/mmi/n-kouche.png'; this.n['kouche'] = '/cbtc/static/jl3d/mmi/n-kouche.png';
this.n['none'] = '/static/jl3d/mmi/none.png'; this.n['none'] = '/cbtc/static/jl3d/mmi/none.png';
//d //d
this.d = [] this.d = []
this.d['info'] = '/static/jl3d/mmi/d-info.png'; this.d['info'] = '/cbtc/static/jl3d/mmi/d-info.png';
this.m1 = []; this.m1 = [];
this.m1['start'] = '/static/jl3d/mmi/none.png'; this.m1['start'] = '/cbtc/static/jl3d/mmi/none.png';
this.m1['am'] = '/static/jl3d/mmi/m1-am.png'; this.m1['am'] = '/cbtc/static/jl3d/mmi/m1-am.png';
this.m1['cm'] = '/static/jl3d/mmi/m1-cm.png'; this.m1['cm'] = '/cbtc/static/jl3d/mmi/m1-cm.png';
this.m1['rm'] = '/static/jl3d/mmi/m1-rm.png'; this.m1['rm'] = '/cbtc/static/jl3d/mmi/m1-rm.png';
this.m2 = []; this.m2 = [];
this.m2['start'] = '/static/jl3d/mmi/none.png'; this.m2['start'] = '/cbtc/static/jl3d/mmi/none.png';
this.m2['il'] = '/static/jl3d/mmi/m2-il.png'; this.m2['il'] = '/cbtc/static/jl3d/mmi/m2-il.png';
this.m2['itc'] = '/static/jl3d/mmi/m2-itc.png'; this.m2['itc'] = '/cbtc/static/jl3d/mmi/m2-itc.png';
this.m2['cbtc'] = '/static/jl3d/mmi/m2-cbtc.png'; this.m2['cbtc'] = '/cbtc/static/jl3d/mmi/m2-cbtc.png';
this.m3 = []; this.m3 = [];
this.m3['zhefan'] = '/static/jl3d/mmi/m3-zhefan.png'; this.m3['zhefan'] = '/cbtc/static/jl3d/mmi/m3-zhefan.png';
this.m3['zhefanzhong'] = '/static/jl3d/mmi/m3-zhefanzhong.png'; this.m3['zhefanzhong'] = '/cbtc/static/jl3d/mmi/m3-zhefanzhong.png';
this.m3['none'] = '/static/jl3d/mmi/none.png'; this.m3['none'] = '/cbtc/static/jl3d/mmi/none.png';
this.m4 = []; this.m4 = [];
this.m4['none'] = '/static/jl3d/mmi/none.png'; this.m4['none'] = '/cbtc/static/jl3d/mmi/none.png';
this.m4['out'] = '/static/jl3d/mmi/m4-out.png'; this.m4['out'] = '/cbtc/static/jl3d/mmi/m4-out.png';
this.m4['in'] = '/static/jl3d/mmi/m4-in.png'; this.m4['in'] = '/cbtc/static/jl3d/mmi/m4-in.png';
this.m5 = []; this.m5 = [];
this.m5['state15'] = '/static/jl3d/mmi/m5-15.png'; this.m5['state15'] = '/cbtc/static/jl3d/mmi/m5-15.png';
this.m5['rightdoor'] = '/static/jl3d/mmi/m5-rightdoor.png'; this.m5['rightdoor'] = '/cbtc/static/jl3d/mmi/m5-rightdoor.png';
this.m5['leftdoor'] = '/static/jl3d/mmi/m5-leftdoor.png'; this.m5['leftdoor'] = '/cbtc/static/jl3d/mmi/m5-leftdoor.png';
this.m5['noalloffdoor'] = '/static/jl3d/mmi/m5-noalloffdoor.png'; this.m5['noalloffdoor'] = '/cbtc/static/jl3d/mmi/m5-noalloffdoor.png';
this.m5['noallondoor'] = '/static/jl3d/mmi/m5-noallondoor.png'; this.m5['noallondoor'] = '/cbtc/static/jl3d/mmi/m5-noallondoor.png';
this.m6 = []; this.m6 = [];
this.m6['none'] = '/static/jl3d/mmi/none.png'; this.m6['none'] = '/cbtc/static/jl3d/mmi/none.png';
this.m6['fache'] = '/static/jl3d/mmi/m6-fache.png'; this.m6['fache'] = '/cbtc/static/jl3d/mmi/m6-fache.png';
this.m6['closedoor'] = '/static/jl3d/mmi/m6-closedoor.png'; this.m6['closedoor'] = '/cbtc/static/jl3d/mmi/m6-closedoor.png';
this.m7 = []; this.m7 = [];
this.m7['momc'] = '/static/jl3d/mmi/m7-momc.png'; this.m7['momc'] = '/cbtc/static/jl3d/mmi/m7-momc.png';
this.m7['aomc'] = '/static/jl3d/mmi/m7-aomc.png'; this.m7['aomc'] = '/cbtc/static/jl3d/mmi/m7-aomc.png';
this.m7['aoac'] = '/static/jl3d/mmi/m7-aoac.png'; this.m7['aoac'] = '/cbtc/static/jl3d/mmi/m7-aoac.png';
this.m7['none'] = '/static/jl3d/mmi/none.png'; this.m7['none'] = '/cbtc/static/jl3d/mmi/none.png';
this.m8 = []; this.m8 = [];
this.m8['dahua'] = '/static/jl3d/mmi/m8-dahua.png'; this.m8['dahua'] = '/cbtc/static/jl3d/mmi/m8-dahua.png';
this.m8['jinjizhidong'] = '/static/jl3d/mmi/m8-jinjizhidong.png'; this.m8['jinjizhidong'] = '/cbtc/static/jl3d/mmi/m8-jinjizhidong.png';
this.m8['doornotclose'] = '/static/jl3d/mmi/m8-doornotclose.png'; this.m8['doornotclose'] = '/cbtc/static/jl3d/mmi/m8-doornotclose.png';
this.m8['none'] = '/static/jl3d/mmi/none.png'; this.m8['none'] = '/cbtc/static/jl3d/mmi/none.png';
this.m9 = []; this.m9 = [];
this.m9['rad'] = '/static/jl3d/mmi/m9-rad.png'; this.m9['rad'] = '/cbtc/static/jl3d/mmi/m9-rad.png';
this.m9['atp'] = '/static/jl3d/mmi/m9-atp.png'; this.m9['atp'] = '/cbtc/static/jl3d/mmi/m9-atp.png';
this.m9['ato'] = '/static/jl3d/mmi/m9-ato.png'; this.m9['ato'] = '/cbtc/static/jl3d/mmi/m9-ato.png';
this.m9['none'] = '/static/jl3d/mmi/none.png'; this.m9['none'] = '/cbtc/static/jl3d/mmi/none.png';
this.m10 = []; this.m10 = [];
this.m10['jinduan'] = '/static/jl3d/mmi/m10-jinduan.png'; this.m10['jinduan'] = '/cbtc/static/jl3d/mmi/m10-jinduan.png';
this.m10['shiwei'] = '/static/jl3d/mmi/m10-shiwei.png'; this.m10['shiwei'] = '/cbtc/static/jl3d/mmi/m10-shiwei.png';
this.m10['querenxinhao'] = '/static/jl3d/mmi/m10-querenxinhao.png'; this.m10['querenxinhao'] = '/cbtc/static/jl3d/mmi/m10-querenxinhao.png';
this.m10['none'] = '/static/jl3d/mmi/none.png'; this.m10['none'] = '/cbtc/static/jl3d/mmi/none.png';
this.c1 = []; this.c1 = [];
this.c1['qianyin'] = '/static/jl3d/mmi/c1-qianyin.png'; this.c1['qianyin'] = '/cbtc/static/jl3d/mmi/c1-qianyin.png';
this.c1['duoxing'] = '/static/jl3d/mmi/c1-duoxing.png'; this.c1['duoxing'] = '/cbtc/static/jl3d/mmi/c1-duoxing.png';
this.c1['zhidong'] = '/static/jl3d/mmi/c1-zhidong.png'; this.c1['zhidong'] = '/cbtc/static/jl3d/mmi/c1-zhidong.png';
this.c1['none'] = '/static/jl3d/mmi/none.png'; this.c1['none'] = '/cbtc/static/jl3d/mmi/none.png';
this.c2 = []; this.c2 = [];
this.c2['rm'] = '/static/jl3d/mmi/m1-rm.png'; this.c2['rm'] = '/cbtc/static/jl3d/mmi/m1-rm.png';
this.c2['cmi'] = '/static/jl3d/mmi/c2-cm-i.png'; this.c2['cmi'] = '/cbtc/static/jl3d/mmi/c2-cm-i.png';
this.c2['cmc'] = '/static/jl3d/mmi/c2-cm-c.png'; this.c2['cmc'] = '/cbtc/static/jl3d/mmi/c2-cm-c.png';
this.c2['ami'] = '/static/jl3d/mmi/c2-am-i.png'; this.c2['ami'] = '/cbtc/static/jl3d/mmi/c2-am-i.png';
this.c2['amc'] = '/static/jl3d/mmi/c2-am-c.png'; this.c2['amc'] = '/cbtc/static/jl3d/mmi/c2-am-c.png';
this.c2['none'] = '/static/jl3d/mmi/none.png'; this.c2['none'] = '/cbtc/static/jl3d/mmi/none.png';
this.c3 = []; this.c3 = [];
this.c3['normal'] = '/static/jl3d/mmi/c3-normal.png'; this.c3['normal'] = '/cbtc/static/jl3d/mmi/c3-normal.png';
this.c3['lose'] = '/static/jl3d/mmi/c3-lose.png'; this.c3['lose'] = '/cbtc/static/jl3d/mmi/c3-lose.png';
this.c5 = []; this.c5 = [];
this.c5['normal'] = '/static/jl3d/mmi/c5-normal.png'; this.c5['normal'] = '/cbtc/static/jl3d/mmi/c5-normal.png';
this.c5['lose'] = '/static/jl3d/mmi/c5-lose.png'; this.c5['lose'] = '/cbtc/static/jl3d/mmi/c5-lose.png';
} }

View File

@ -45,7 +45,7 @@ export default {
width:500px; width:500px;
height:333px; height:333px;
background-size:100% 100%; background-size:100% 100%;
background-image:url('/static/jl3d/tms.png'); background-image:url('/cbtc/static/jl3d/tms.png');
position:absolute; position:absolute;
bottom:0; bottom:0;
right:0; right:0;

View File

@ -54,7 +54,7 @@
<div> <div>
当前模型资源名称 当前模型资源名称
</div> </div>
<div style="width:128px;height:128px;background-image: url('/static/texture/add.png');background-size: 100% 100%;"></div> <div style="width:128px;height:128px;background-image: url('/cbtc/static/texture/add.png');background-size: 100% 100%;"></div>
</div> </div>
</el-tab-pane> --> </el-tab-pane> -->

View File

@ -274,7 +274,7 @@ export default {
width:60%; width:60%;
height:60%; height:60%;
text-align:center; text-align:center;
background-image: url('/static/texture/modelfile.png'); background-image: url('/cbtc/static/texture/modelfile.png');
background-size: 100% 100%; background-size: 100% 100%;
} }
.modelid{ .modelid{

View File

@ -181,6 +181,7 @@
this.jlmap3dedit.changeStationPos(changeStation); this.jlmap3dedit.changeStationPos(changeStation);
}, },
testrail(){ testrail(){
this.jlmap3dedit.vexscaloff();
this.jlmap3dedit.testrail(); this.jlmap3dedit.testrail();
}, },
autoss(){ autoss(){
@ -191,10 +192,11 @@
this.jlmap3dedit.exportsection(); this.jlmap3dedit.exportsection();
}, },
alignment(alignmentCode,direct){ alignment(alignmentCode,direct){
this.jlmap3dedit.vexscaloff();
this.jlmap3dedit.alignmentSection(alignmentCode,direct); this.jlmap3dedit.alignmentSection(alignmentCode,direct);
}, },
flat(alignmentCode){ flat(alignmentCode){
this.jlmap3dedit.vexscaloff();
this.jlmap3dedit.flatSection(alignmentCode); this.jlmap3dedit.flatSection(alignmentCode);
}, },
save() { save() {

View File

@ -90,7 +90,7 @@ export default {
// background-color: #FFFFFF; // background-color: #FFFFFF;
// border-radius:5px; // border-radius:5px;
background-image:url("/static/texture/devicelistpane.png"); background-image:url("/cbtc/static/texture/devicelistpane.png");
background-repeat: no-repeat; background-repeat: no-repeat;
overflow: hidden; overflow: hidden;
background-size:90% 100%; background-size:90% 100%;

View File

@ -89,7 +89,7 @@ export default {
// background-color: #FFFFFF; // background-color: #FFFFFF;
// border-radius:5px; // border-radius:5px;
background-image:url("/static/texture/devicelistpane.png"); background-image:url("/cbtc/static/texture/devicelistpane.png");
background-repeat: no-repeat; background-repeat: no-repeat;
overflow: hidden; overflow: hidden;
background-size:90% 100%; background-size:90% 100%;

View File

@ -63,7 +63,7 @@ export default {
width: 20%; width: 20%;
height: 50%; height: 50%;
z-index: 10; z-index: 10;
background-image:url("/static/texture/devicemsgpane.png"); background-image:url("/cbtc/static/texture/devicemsgpane.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size: 90% 100%; background-size: 90% 100%;

View File

@ -343,7 +343,7 @@
position: absolute; position: absolute;
right:15px; right:15px;
bottom:5px; bottom:5px;
background-image:url("/static/texture/xiuli.png"); background-image:url("/cbtc/static/texture/xiuli.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100%; background-size:100%;
} }
@ -354,7 +354,7 @@
position: absolute; position: absolute;
right:345px; right:345px;
bottom:5px; bottom:5px;
background-image:url("/static/texture/gousuodingwei.png"); background-image:url("/cbtc/static/texture/gousuodingwei.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100%; background-size:100%;
} }
@ -365,7 +365,7 @@
position: absolute; position: absolute;
right:180px; right:180px;
bottom:5px; bottom:5px;
background-image:url("/static/texture/gousuofanwei.png"); background-image:url("/cbtc/static/texture/gousuofanwei.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100%; background-size:100%;
} }
@ -375,7 +375,7 @@
position: absolute; position: absolute;
right:125px; right:125px;
top:5px; top:5px;
background-image:url("/static/texture/xx.png"); background-image:url("/cbtc/static/texture/xx.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100%; background-size:100%;
} }

View File

@ -81,7 +81,7 @@
position: absolute; position: absolute;
right:15px; right:15px;
bottom:5px; bottom:5px;
background-image:url("/static/texture/xiuli.png"); background-image:url("/cbtc/static/texture/xiuli.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100%; background-size:100%;
} }
@ -91,7 +91,7 @@
position: absolute; position: absolute;
right:125px; right:125px;
top:5px; top:5px;
background-image:url("/static/texture/xx.png"); background-image:url("/cbtc/static/texture/xx.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100%; background-size:100%;
} }

View File

@ -333,7 +333,7 @@ export default {
right:185px; right:185px;
top:5px; top:5px;
z-index:30; z-index:30;
background-image:url("/static/texture/room.png"); background-image:url("/cbtc/static/texture/room.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100%; background-size:100%;
} }

View File

@ -133,7 +133,7 @@ export default {
z-index: 350; z-index: 350;
top:0; top:0;
left:0; left:0;
background-image:url("/static/background/other.jpg"); background-image:url("/cbtc/static/background/other.jpg");
// background-repeat:no-repeat; // background-repeat:no-repeat;
z-index: 350; z-index: 350;
background-size:100%; background-size:100%;
@ -152,38 +152,38 @@ export default {
} }
.selectButtonImg1{ .selectButtonImg1{
background-image:url("/static/vrtest/maintainer.png"); background-image:url("/cbtc/static/vrtest/maintainer.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100% 100%; background-size:100% 100%;
} }
.selectButtonImg2{ .selectButtonImg2{
background-image:url("/static/vrtest/zc.png"); background-image:url("/cbtc/static/vrtest/zc.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100% 100%; background-size:100% 100%;
} }
.selectButtonImg3{ .selectButtonImg3{
background-image:url("/static/vrtest/maintainervr.png"); background-image:url("/cbtc/static/vrtest/maintainervr.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100% 100%; background-size:100% 100%;
} }
.selectButtonImg4{ .selectButtonImg4{
background-image:url("/static/vrtest/vr.png"); background-image:url("/cbtc/static/vrtest/vr.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100% 100%; background-size:100% 100%;
} }
.selectButtonImg5{ .selectButtonImg5{
background-image:url("/static/vrtest/trainrescue.png"); background-image:url("/cbtc/static/vrtest/trainrescue.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100% 100%; background-size:100% 100%;
} }
.selectButtonImg6{ .selectButtonImg6{
background-image:url("/static/vrtest/trvr.png"); background-image:url("/cbtc/static/vrtest/trvr.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100% 100%; background-size:100% 100%;
} }

View File

@ -81,7 +81,7 @@
position: absolute; position: absolute;
right:15px; right:15px;
bottom:5px; bottom:5px;
background-image:url("/static/texture/xiuli.png"); background-image:url("/cbtc/static/texture/xiuli.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100%; background-size:100%;
} }
@ -91,7 +91,7 @@
position: absolute; position: absolute;
right:125px; right:125px;
top:5px; top:5px;
background-image:url("/static/texture/xx.png"); background-image:url("/cbtc/static/texture/xx.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100%; background-size:100%;
} }

View File

@ -81,7 +81,7 @@
position: absolute; position: absolute;
right:15px; right:15px;
bottom:5px; bottom:5px;
background-image:url("/static/texture/xiuli.png"); background-image:url("/cbtc/static/texture/xiuli.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100%; background-size:100%;
} }
@ -91,7 +91,7 @@
position: absolute; position: absolute;
right:125px; right:125px;
top:5px; top:5px;
background-image:url("/static/texture/xx.png"); background-image:url("/cbtc/static/texture/xx.png");
background-repeat:no-repeat; background-repeat:no-repeat;
background-size:100%; background-size:100%;
} }

View File

@ -251,7 +251,7 @@ export default {
/* bottom:0; */ /* bottom:0; */
position: absolute; position: absolute;
background-size: 100% 100%; background-size: 100% 100%;
background-image: url('/static/texture/scene.png'); background-image: url('/cbtc/static/texture/scene.png');
border-radius:10px; border-radius:10px;
} }
.listmenu{ .listmenu{

View File

@ -105,7 +105,7 @@ export default {
top:0; top:0;
width: 300px; width: 300px;
height: 600px; height: 600px;
background-image:url("/static/texture/menu.png"); background-image:url("/cbtc/static/texture/menu.png");
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: 100%; background-size: 100%;
border-radius:5px; border-radius:5px;

View File

@ -128,7 +128,7 @@ export default {
bottom:0; bottom:0;
width: 45%; width: 45%;
height: 20%; height: 20%;
background-image:url('/static/texture/msg.png'); background-image:url('/cbtc/static/texture/msg.png');
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: 100%; background-size: 100%;
} }

View File

@ -42,17 +42,20 @@
</div> --> </div> -->
</div> </div>
<div class="chat-box-content"> <div class="chat-box-content">
<div v-for="(item, index) in treeData" :key="index" class="proper_box"> <div style="position:relative">
<div class="proper_title">{{ item.label }}</div> <div v-for="(item, index) in treeData" :key="index" class="proper_box">
<div v-for="(data, i) in item.children" :key="i" style="position: relative; width: 73px; heigth: 73px; margin-left: 5px; float: left;"> <div class="proper_title">{{ item.label }}</div>
<div v-if="data.show && item.id == 'driver'" class="proper_content_box" :class="{'active': data.active}" @click="handleCheckChange(data)">{{ data.label + (data.userId? '(' + (simulationUsers[data.userId]||{}).nickName + ')': '') }}</div> <div v-for="(data, i) in item.children" :key="i" style="position: relative; width: 73px; heigth: 73px; margin-left: 5px; float: left;">
<div v-if="item.id != 'driver'" class="proper_content_box" :class="{'active':data.active}" @click="handleCheckChange(data)">{{ data.label + (data.userId? '(' + (simulationUsers[data.userId]||{}).nickName + ')': '') }}</div> <div v-if="data.show && item.id == 'driver'" class="proper_content_box" :class="{'active': data.active}" @click="handleCheckChange(data)">{{ data.label + (data.userId? '(' + (simulationUsers[data.userId]||{}).nickName + ')': '') }}</div>
<div v-if="data.loading" class="mask_loading"> <div v-if="item.id != 'driver'" class="proper_content_box" :class="{'active':data.active}" @click="handleCheckChange(data)">{{ data.label + (data.userId? '(' + (simulationUsers[data.userId]||{}).nickName + ')': '') }}</div>
<i class="el-icon-loading" style="margin-bottom: 4px;" /> <div v-if="data.loading" class="mask_loading">
<span>呼叫中</span> <i class="el-icon-loading" style="margin-bottom: 4px;" />
<span>呼叫中</span>
</div>
<div v-if="data.isConnect||data.disabled" class="content_connect" />
</div> </div>
<div v-if="data.isConnect||data.disabled" class="content_connect" />
</div> </div>
<div v-if="connectSuccess" class="connectSuccess" />
</div> </div>
</div> </div>
<div class="chat-box-content1"> <div class="chat-box-content1">
@ -168,6 +171,7 @@ export default {
commonConversation: false, commonConversation: false,
seconds:0, seconds:0,
inter:null, inter:null,
connectSuccess:false,
recorders: null, recorders: null,
microphone:null, microphone:null,
createLoading:false, createLoading:false,
@ -283,6 +287,20 @@ export default {
}); });
} }
this.filterNode(); this.filterNode();
if (activeTrainList.length <= 0) {
this.resetCoversition();
this.treeData.forEach(item => {
if (item.children) {
const memberList = Object.values(item.children);
memberList.forEach(data =>{
data.active = false;
data.isConnect = false;
data.loading = false;
data.disabled = false;
});
}
});
}
// if (this.$refs.tree) { // if (this.$refs.tree) {
// this.$refs.tree.filter(this.queryMember); // this.$refs.tree.filter(this.queryMember);
// } // }
@ -455,6 +473,7 @@ export default {
} }
}, },
acceptUser(memberId) { acceptUser(memberId) {
this.connectSuccess = true;
this.treeData.forEach(data => { this.treeData.forEach(data => {
if (data.children) { if (data.children) {
const member = data.children[memberId]; const member = data.children[memberId];
@ -509,6 +528,7 @@ export default {
} }
} }
startConversition(this.group, this.memberIdList, this.memberObject).then(resp => { startConversition(this.group, this.memberIdList, this.memberObject).then(resp => {
this.connectSuccess = true;
if (this.memberObject == 'ALL_STATION') { if (this.memberObject == 'ALL_STATION') {
const stationList = this.treeData[1].children; const stationList = this.treeData[1].children;
const member = stationList['ALL_STATION']; const member = stationList['ALL_STATION'];
@ -748,6 +768,7 @@ export default {
quitConversition() { quitConversition() {
this.quitLoading = true; this.quitLoading = true;
overSimulationConversition(this.group, this.conversitionId).then(resp => { overSimulationConversition(this.group, this.conversitionId).then(resp => {
this.connectSuccess = false;
this.conversitionMemberList = []; this.conversitionMemberList = [];
this.messageList = []; this.messageList = [];
this.quitLoading = false; this.quitLoading = false;
@ -887,6 +908,7 @@ export default {
resetCoversition() { resetCoversition() {
this.commonMessageList = []; this.commonMessageList = [];
this.conversitionStateMap = {}; this.conversitionStateMap = {};
this.messageList = this.commonMessageList;
} }
} }
}; };
@ -1141,5 +1163,13 @@ export default {
.chat-box-footer-send.disbled{ .chat-box-footer-send.disbled{
cursor: no-drop; cursor: no-drop;
} }
.connectSuccess{
position:absolute;
width:100%;
height:100%;
left:0;
top:0;
z-index:2;
}
</style> </style>

View File

@ -19,7 +19,7 @@
<!-- 排班计划 --> <!-- 排班计划 -->
<el-button v-if="scheduleLoadShow" type="primary" size="small" @click="jumpScheduling">派班计划加载</el-button> <el-button v-if="scheduleLoadShow" type="primary" size="small" @click="jumpScheduling">派班计划加载</el-button>
<el-button v-if="schedulePreviewShow" type="primary" size="small" @click="schedulingView">派班计划预览</el-button> <el-button v-if="schedulePreviewShow" type="primary" size="small" @click="schedulingView">派班计划预览</el-button>
<el-button v-if="isContest" size="small" @click="fieldPractice">实操练习</el-button> <el-button v-if="isContest" size="small" :disabled="practiceDisabled" @click="fieldPractice">实操练习</el-button>
<!-- <el-button v-if="isContest" size="small" @click=" fieldTeach">实操教学</el-button> --> <!-- <el-button v-if="isContest" size="small" @click=" fieldTeach">实操教学</el-button> -->
<!-- <el-button v-if="isContest" size="small" @click=" fieldExam">实操测验</el-button> --> <!-- <el-button v-if="isContest" size="small" @click=" fieldExam">实操测验</el-button> -->
<el-button v-if="isContest" size="small" @click="goTheoryQuiz">理论考试</el-button> <el-button v-if="isContest" size="small" @click="goTheoryQuiz">理论考试</el-button>
@ -46,6 +46,7 @@ import ChangeMap from './dispatherContest/changeMap';
import { getSessionStorage } from '@/utils/auth'; import { getSessionStorage } from '@/utils/auth';
import Scheduling from '@/views/newMap/displayNew/demon/scheduling'; import Scheduling from '@/views/newMap/displayNew/demon/scheduling';
import SchedulingView from '@/views/newMap/displayNew/demon/schedulingView'; import SchedulingView from '@/views/newMap/displayNew/demon/schedulingView';
import { EventBus } from '@/scripts/event-bus';
export default { export default {
name:'DemonMenu', name:'DemonMenu',
components:{ components:{
@ -102,6 +103,7 @@ export default {
group:'', group:'',
mapId:'', mapId:'',
lineCode:'', lineCode:'',
practiceDisabled:false,
deviceShow: false, deviceShow: false,
drivingShow: false, drivingShow: false,
jl3dpassflow:this.$t('display.demon.passengerflow'), jl3dpassflow:this.$t('display.demon.passengerflow'),
@ -124,6 +126,12 @@ export default {
this.group = this.$route.query.group; this.group = this.$route.query.group;
this.mapId = this.$route.query.mapId; this.mapId = this.$route.query.mapId;
this.lineCode = this.$route.query.lineCode; this.lineCode = this.$route.query.lineCode;
EventBus.$on('loadScene', () => {
this.practiceDisabled = true;
});
EventBus.$on('quitScene', () => {
this.practiceDisabled = false;
});
}, },
methods:{ methods:{
menuClick() { menuClick() {

View File

@ -39,7 +39,7 @@
<el-button type="primary" size="small" @click="back">退出</el-button> <el-button type="primary" size="small" @click="back">退出</el-button>
<template v-if="!dataError"> <template v-if="!dataError">
<template v-if="isScriptLoad"> <template v-if="isScriptLoad">
<el-button type="danger" size="small" @click="handleQuitQuest">退出剧本</el-button> <el-button type="danger" size="small" @click="handleQuitQuest">退出场景</el-button>
<el-button type="success" size="small" :disabled="!isScriptRun" @click="endTraining">结束</el-button> <el-button type="success" size="small" :disabled="!isScriptRun" @click="endTraining">结束</el-button>
<el-button type="primary" size="small" :disabled="isScriptRun" @click="startTraining">开始</el-button> <el-button type="primary" size="small" :disabled="isScriptRun" @click="startTraining">开始</el-button>
</template> </template>
@ -93,12 +93,12 @@ import { PermissionType } from '@/scripts/ConstDic';
import { getCountTime } from '@/utils/index'; import { getCountTime } from '@/utils/index';
import { prefixIntrger } from '@/utils/date'; import { prefixIntrger } from '@/utils/date';
import { ScriptMode, TrainingMode } from '@/scripts/ConstDic'; import { ScriptMode, TrainingMode } from '@/scripts/ConstDic';
import { quitScriptNew } from '@/api/simulation'; // import { quitScriptNew } from '@/api/simulation';
import SelectRole from '@/views/newMap/displayNew/scriptDisplay/component/selectRole'; import SelectRole from '@/views/newMap/displayNew/scriptDisplay/component/selectRole';
import { setGoodsTryUse } from '@/api/management/goods'; import { setGoodsTryUse } from '@/api/management/goods';
// import {loadScriptNewMode } from '@/api/simulation'; // import {loadScriptNewMode } from '@/api/simulation';
import {endScriptTraining } from '@/api/script'; import {endScriptTraining } from '@/api/script';
import {loadDraftScriptNewMode } from '@/api/designPlatform'; import {competitionPracticalSceneStart, exitCompetitionPracticalScene} from '@/api/competition';
import { launchFullscreen } from '@/utils/screen'; import { launchFullscreen } from '@/utils/screen';
import { createSimulationNew } from '@/api/simulation'; import { createSimulationNew } from '@/api/simulation';
import Vue from 'vue'; import Vue from 'vue';
@ -379,7 +379,7 @@ export default {
}); });
}, },
handleQuitQuest() { handleQuitQuest() {
quitScriptNew(this.group).then(resp => { exitCompetitionPracticalScene(this.group).then(resp => {
getSimulationInfoNew(this.group).then((res)=>{ getSimulationInfoNew(this.group).then((res)=>{
this.quitQuest(); this.quitQuest();
// this.initLoadPage(); // this.initLoadPage();
@ -506,7 +506,7 @@ export default {
}, },
runScriptMode(memberId) { runScriptMode(memberId) {
// this.$store.dispatch('scriptRecord/updateBgSet', true); // this.$store.dispatch('scriptRecord/updateBgSet', true);
loadDraftScriptNewMode(memberId, this.group, this.scriptMode) competitionPracticalSceneStart(this.group, memberId, this.scriptMode)
.then(res=>{ .then(res=>{
this.isScriptRun = true; this.isScriptRun = true;
if (this.mapLocation) { if (this.mapLocation) {

View File

@ -31,7 +31,8 @@
</template> </template>
<script> <script>
import { ScriptMode } from '@/scripts/ConstDic'; import { ScriptMode } from '@/scripts/ConstDic';
import {getScriptByIdNew, loadScript } from '@/api/script'; import {getDraftScriptByGroupNew } from '@/api/script';
import {loadCompetitionPracticalScene} from '@/api/competition';
import { EventBus } from '@/scripts/event-bus'; import { EventBus } from '@/scripts/event-bus';
export default { export default {
@ -73,7 +74,7 @@ export default {
if (process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'test') { if (process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'test') {
this.mainSceneData = [ this.mainSceneData = [
{type: '车辆故障', scene: '列车救援'}, {type: '车辆故障', scene: '列车救援'},
{type: '信号系统故障', scene: '道岔故障', id: '9'}, {type: '信号系统故障', scene: '道岔故障', id: '11'},
{type: '信号系统故障', scene: '区域控制器故障'}, {type: '信号系统故障', scene: '区域控制器故障'},
{type: '信号系统故障', scene: '联锁故障'}, {type: '信号系统故障', scene: '联锁故障'},
{type: '供电系统故障', scene: '接触轨(网)断电'}, {type: '供电系统故障', scene: '接触轨(网)断电'},
@ -93,12 +94,13 @@ export default {
}, },
async handleLoad(row) { async handleLoad(row) {
this.row = row; this.row = row;
const res = await getScriptByIdNew(row.id); const response = await loadCompetitionPracticalScene(this.$route.query.group, row.id);
if (res.code == 200) { if (response.code == 200) {
const response = await loadScript(this.$route.query.group, row.id); const res = await getDraftScriptByGroupNew(this.$route.query.group);
if (response.code == 200) { if (res.code == 200) {
const playerList = []; const playerList = [];
EventBus.$emit('clearRunSeries'); EventBus.$emit('clearRunSeries');
EventBus.$emit('loadScene');
if (res.data.memberList && res.data.memberList.length > 0) { if (res.data.memberList && res.data.memberList.length > 0) {
this.form.type = ''; this.form.type = '';
res.data.memberList.sort((a, b) => { res.data.memberList.sort((a, b) => {

View File

@ -27,7 +27,9 @@ export default {
// //
'$store.state.socket.simulationScriptTip':function(val, old) { '$store.state.socket.simulationScriptTip':function(val, old) {
if (val && this.$store.state.training.scriptOperationType === 'teach') { if (val && this.$store.state.training.scriptOperationType === 'teach') {
if (val.type == 'Conversation') { if (val.type == 'Accept_Conversation_Invitation') {
this.scriptTipMessage = '请接受会话邀请';
} else if (val.type == 'Conversation') {
this.scriptTipMessage = '请说:' + val.content; this.scriptTipMessage = '请说:' + val.content;
} else if (val.type == 'Operation') { } else if (val.type == 'Operation') {
this.scriptTipMessage = covertOperate(val.operationType, val.operationParamMap); this.scriptTipMessage = covertOperate(val.operationType, val.operationParamMap);