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
});
}
/** 加载场景 */
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{
// uploadurl = "https://joylink.club/jlfile";
// asseturl = "https://joylink.club/oss/joylink";
uploadurl = "../static";
asseturl = "../static";
uploadurl = "../cbtc/static";
asseturl = "../cbtc/static";
}
const BASE_UPLOAD_API = uploadurl;
export const BASE_ASSET_API = asseturl;

View File

@ -1,5 +1,5 @@
<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-if="checkFieldType(item, 'text')">
<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] = {
_type: deviceType.IscsText,
zlevel: 1,
z: 7
z: 6
};
/** 线段渲染配置 */
deviceRender[deviceType.IscsLine] = {
_type: deviceType.IscsLine,
zlevel: 1,
z: 4
z: 5
};
/** 矩形渲染配置 */
deviceRender[deviceType.IscsRect] = {
_type: deviceType.IscsRect,
zlevel:1,
z: 6
z: 5
};
/** 菱形渲染配置 */
deviceRender[deviceType.IscsRhombus] = {
@ -220,7 +220,7 @@ deviceRender[deviceType.IscsArrow] = {
deviceRender[deviceType.IscsRadioText] = {
_type: deviceType.IscsRadioText,
zlevel:1,
z: 5
z: 6
};
/** 图片渲染配置 */
deviceRender[deviceType.IscsPicture] = {
@ -360,7 +360,7 @@ deviceRender[deviceType.AfcDoorUnite] = {
deviceRender[deviceType.RectText] = {
_type: deviceType.RectText,
zlevel: 1,
z: 4
z: 5
};
/** 福州 三角形 */

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -19,10 +19,10 @@ export function TrainList() {
// model
THREE.Loader.Handlers.add( /\.dds$/i, new THREE.DDSLoader() ) ;
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();
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;

View File

@ -322,7 +322,6 @@ export function JLmap3dEdit(dom, data, mapid) {
this.testrail = function(){
if(stationStopGroup.children.length == 0){
for(let k in scope.mapdata.sectionlist.sections.datalist){
if(scope.mapdata.sectionlist.sections.datalist[k].standTrack == true){
var geometry = new THREE.PlaneGeometry( 10, 10, 4 );
var material = new THREE.MeshBasicMaterial( {color: 0xffff00, side: THREE.DoubleSide} );
@ -343,31 +342,28 @@ export function JLmap3dEdit(dom, data, mapid) {
}else{
for(let i=0,leni = stationStopGroup.children.length;i<leni;i++){
let k = stationStopGroup.children[i].code;
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{
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(){
console.log("autoss");
console.log(scope.mapdata);
// console.log(scope.mapdata);
scope.mapdata.signallist.resetsignal(scope.mapdata);
scope.mapdata.switchlist.resetswitch(scope.mapdata);
//old
// scope.mapdata.signallist.resetsignal(scope.mapdata.linklist);
};
//区段左右相邻的区段对齐
//区段左右对齐
this.alignmentSection = function(alignmentCode,direct){
let oldobject = scope.mapdata.sectionlist.sections.datalist[alignmentCode].mesh;
let alignmentModel = scope.mapdata.sectionlist.sections.datalist[alignmentCode];
@ -481,6 +477,7 @@ export function JLmap3dEdit(dom, data, mapid) {
objectparent.add(newAlignmentSection);
};
//区段平整
this.flatSection = function(alignmentCode){
let oldobject = scope.mapdata.sectionlist.sections.datalist[alignmentCode].mesh;
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;
objectparent.add(newAlignmentSection);
}
//屏幕自适应
function onWindowResize() {
//窗口自适应
scope.camera.aspect = window.innerWidth / window.innerHeight;
@ -613,6 +612,7 @@ export function JLmap3dEdit(dom, data, mapid) {
}
//画面渲染
function render() {
scope.renderer.render( scope.scene, scope.camera );

View File

@ -733,7 +733,7 @@ export function SectionList() {
// console.log("-------------------");
// console.log(jlmap3ddata.sectionlist.sections.datalist);
// 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.repeat.set( 1,1);

View File

@ -20,7 +20,7 @@ export function SectionList() {
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.repeat.set( 1,1);
@ -72,7 +72,7 @@ export function SectionList() {
sectiondata[i].standRightLeftX = sectiondata[i].points[1].x;
sectiondata[i].standRightRightY = sectiondata[i].points[1].y;
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){
// scope.sections.datalist[sectiondata[i].code].lengthFact = 63;
@ -384,14 +384,14 @@ export function SectionList() {
assetloader.modellist[num2].mesh.rotation.x = 0;
}
}
//根据站台区段创建站台位置 128停车点距离
//根据站台区段创建站台位置 120停车点距离
for(let j=0,lenj=stations.length;j<lenj;j++){
// console.log(j);
console.log(stations[j]);
let direction1 = scope.sections.datalist[stations[j].stands[0].section];
let direction2 = scope.sections.datalist[stations[j].stands[1].section];
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 mesh;
if(stations[j].stands[0].inside == true){
@ -414,7 +414,7 @@ export function SectionList() {
};
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.repeat.set( 1,1);
@ -804,7 +804,7 @@ export function SectionList() {
}
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.repeat.set( 1,1);
@ -862,7 +862,7 @@ export function SectionList() {
});
if(newsection.standTrack == false){
testmesh2 = new THREE.Mesh( geometry, selectmaterial );
testmesh2 = new THREE.Mesh( geometry, randomMaterail );
}else{
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].standRightRightY = section2d[i].points[1].y;
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) {
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) {

View File

@ -5,16 +5,16 @@ var Staticmodel = {
deviceType: "Switch",
type: "fuzhou",
picUrl: "",
assetUrl: "./../static/MODEL/device/switch/ZD6D.FBX"
assetUrl: "./../cbtc/static/MODEL/device/switch/ZD6D.FBX"
},//"https://joylink.club/oss/wx/switch/switch.FBX"
//../../static/MODEL/device/switch.FBX
//../../cbtc/static/MODEL/device/switch.FBX
Signal: {
id: "2",
name: "信号机",
deviceType: "Signal",
type: "low",
picUrl: "",
assetUrl: "../../static/MODEL/device/signal/signal.FBX"
assetUrl: "../../cbtc/static/MODEL/device/signal/signal.FBX"
},
stationstand: {
id: "3",
@ -22,9 +22,9 @@ var Staticmodel = {
deviceType: "stationstand",
type: "low",
picUrl: "",
assetUrl: "../../static/MODEL/device/stationstand/stationstand.FBX"
assetUrl: "../../cbtc/static/MODEL/device/stationstand/stationstand.FBX"
//https://joylink.club/oss/wx/stationstand/stationstand.FBX
//../../static/MODEL/device/stationstand.FBX
//../../cbtc/static/MODEL/device/stationstand.FBX
},
section: {
@ -33,9 +33,9 @@ var Staticmodel = {
deviceType: "section",
type: "low",
picUrl: "",
assetUrl: "../../static/MODEL/device/section/section.FBX"
assetUrl: "../../cbtc/static/MODEL/device/section/section.FBX"
//https://joylink.club/oss/wx/stationstand/stationstand.FBX
//../../static/MODEL/device/stationstand.FBX
//../../cbtc/static/MODEL/device/stationstand.FBX
},
room: {
@ -44,9 +44,9 @@ var Staticmodel = {
deviceType: "room",
type: "low",
picUrl: "",
assetUrl: "../../static/MODEL/device/room/room.FBX"
assetUrl: "../../cbtc/static/MODEL/device/room/room.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();
beauty.src = "../../static/texture/guide.png";
beauty.src = "../../cbtc/static/texture/guide.png";
//canvas文字贴图方法
//PS:待提炼 增强功能
function getTextCanvas(text){

View File

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

View File

@ -1,7 +1,7 @@
import { getBaseUrl } from '@/utils/baseUrl';
const BASE_API = getBaseUrl();
let modelurl = "../../static/MODEL/jdq/";
let modelurl = "../../cbtc/static/MODEL/jdq/";
// if(BASE_API == 'https://joylink.club/jlcloud'){
// modelurl = "https://joylink.club/oss/jdq/";
// }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();
var bgTexture = new THREE.TextureLoader().load("../../static/background/other.jpg");
var bgTexture = new THREE.TextureLoader().load("../../cbtc/static/background/other.jpg");
scene.background = bgTexture;
//定义全局光
@ -540,7 +540,7 @@ export function Jl3ddevice(dom,serviceid) {
}
var beauty = new Image();
beauty.src = "../../static/texture/guide.png";
beauty.src = "../../cbtc/static/texture/guide.png";
//canvas文字贴图方法
//PS:待提炼 增强功能
function getTextCanvas(text){

View File

@ -56,7 +56,7 @@ export function Jl3ddevice(dom,serviceid) {
//定义场景(渲染容器)
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;
//定义全局光
@ -537,7 +537,7 @@ export function Jl3ddevice(dom,serviceid) {
}
var beauty = new Image();
beauty.src = "../../static/texture/guide.png";
beauty.src = "../../cbtc/static/texture/guide.png";
//canvas文字贴图方法
//PS:待提炼 增强功能
function getTextCanvas(text){

View File

@ -110,7 +110,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
var rails = null;
this.webwork=new Worker('../../static/workertest/trainworker.js');
this.webwork=new Worker('../../cbtc/static/workertest/trainworker.js');
// 地图模型数据
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
// 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.setLoop( true );
// sound.setVolume( 0 );
@ -159,7 +159,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
if(assetsdata.link){
scope.datatype = "old";
// 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.socketon(scope.Subscribe.topic);
@ -208,7 +208,7 @@ export function JLmapDriving(dom,data,mapId,storemod,translation,routegroup,proj
}, 2000);
}else{
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);
datanew();

View File

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

View File

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

View File

@ -19,6 +19,10 @@ let controller1, controller2,raycastervr;
//地板
let floors = [];
var loader = new THREE.TextureLoader();
var circle;
export function Jl3dTrainRescueVr(dom,group,skinCode) {
var scope = this;
@ -99,9 +103,35 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
this.controls.target.set( 0, 1.6, 0 );
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(){
@ -133,7 +163,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
document.addEventListener( "mousedown", onselect, false );
let vrwebworker = new Worker("../../static/workertest/vrwebworker.js");
let vrwebworker = new Worker("../../cbtc/static/workertest/vrwebworker.js");
let connectmsg = {
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 ) {
@ -322,10 +326,52 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
intersectObjects( controller1 );
if (mixers){
for (let k in mixers) {
delta = clock.getDelta();
mixers[k].update(delta);
// for (let k in mixers) {
if(mixers["animatemodel"]._actions[0].isRunning()){
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();
updateControlModel();
@ -333,14 +379,15 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
}
//
let controlStage = 0;
let controlStage = false;
//animateStage 动画播放阶段
//0两侧千斤顶升降
//1中间千斤顶平移
//2中间千斤顶升降
let animateStage = 0;
let animateStage = "0";
function updateControlModel(){
if(controlMoveSwitch == true){
console.log(nowControlModel.name);
console.log(TrainRescueStatic.animatemodel.action.time);
// console.log(nowControlModel);
// console.log(TrainRescueStatic.handR.mesh);
@ -349,38 +396,173 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
// console.log(originPoint);
// rad *= ( endNorm.cross( startNorm ).dot( eye ) < 0 ? 1 : -1);
if(nowControlModel.name == "5"){
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 rad = v1.angleTo(v2);
console.log(rad);
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;
}
}
}else{
if(nowControlModel.name == "1" || nowControlModel.name == "4"){
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);
console.log(rad);
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;
TrainRescueStatic.animatemodel.action.paused = false;
TrainRescueStatic.animatemodel.action.play();
}else if(rad<1.20){
TrainRescueStatic.animatemodel.action.timeScale = 1;
TrainRescueStatic.animatemodel.action.paused = false;
TrainRescueStatic.animatemodel.action.play();
}else{
TrainRescueStatic.animatemodel.action.paused = true;
rad = 1.25;
}
}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;
}
}
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;
}
}
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();
beauty.src = "../../static/texture/scene.png";
beauty.src = "../../cbtc/static/texture/scene.png";
//canvas文字贴图方法
//PS:待提炼 增强功能
function getTextCanvas(text){

View File

@ -4,36 +4,36 @@ var TrainRescueStatic = {
name: "动画模型",
deviceType: "animatemodel",
type: "animatemodel",
url: "../../static/vrtest/trainrescue/DH923.FBX"
url: "../../cbtc/static/vrtest/trainrescue/DH923.FBX"
},//"https://joylink.club/oss/wx/switch/switch.FBX"
//../../static/MODEL/device/switch.FBX
//../../cbtc/static/MODEL/device/switch.FBX
floorplane: {
id: "2",
name: "行走范围",
deviceType: "runplane",
type: "runplane",
url: "../../static/vrtest/trainrescue/diban.FBX"
url: "../../cbtc/static/vrtest/trainrescue/diban.FBX"
},
controlmodel: {
id: "3",
name: "控制台",
deviceType: "controlmodel",
type: "controlmodel",
url: "../../static/vrtest/trainrescue/kongzhigan.FBX"
url: "../../cbtc/static/vrtest/trainrescue/kongzhigan.FBX"
},
other: {
id: "4",
name: "其他",
deviceType: "other",
type: "other",
url: "../../static/vrtest/trainrescue/TK.FBX"
url: "../../cbtc/static/vrtest/trainrescue/TK.FBX"
},
handR: {
id: "5",
name: "handr",
deviceType: "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();
this.webwork = new Worker("../../static/workertest/trainworker.js");
this.webwork = new Worker("../../cbtc/static/workertest/trainworker.js");
//初始化加载数据和模型getPublishMapDetail
getPublishMapDetail(skinCode).then(data => {
let mapnetdata = data.data;
@ -124,7 +124,7 @@ export function JLmap3dMaintainer(dom, data,skinCode,storemod,routegroup,project
}else{
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.socketon(scope.Subscribe.topic);
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
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.setLoop( true );
scope.sound.setVolume( 3 );

View File

@ -17,7 +17,7 @@ export function VrGui(){
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( {
map: texturePlane,
side: THREE.DoubleSide,
@ -36,7 +36,7 @@ export function VrGui(){
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( {
map: texture,
transparent: true,
@ -48,7 +48,7 @@ export function VrGui(){
buttonHome.position.z = 0.02;
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( {
map: texture,
transparent: true,
@ -60,7 +60,7 @@ export function VrGui(){
buttonStationList.position.z = 0.02;
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( {
map: texture,
transparent: true,
@ -78,7 +78,7 @@ export function VrGui(){
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( {
map: texture,
transparent: true,
@ -90,7 +90,7 @@ export function VrGui(){
buttonPreviousFault.position.z = 0.02;
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( {
// map: texture,
// transparent: true,
@ -102,7 +102,7 @@ export function VrGui(){
// buttonPrevious.position.z = 0.02;
// 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( {
map: texture,
transparent: true,
@ -114,7 +114,7 @@ export function VrGui(){
buttonNextFault.position.z = 0.02;
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( {
map: texture,
transparent: true,
@ -127,7 +127,7 @@ export function VrGui(){
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( {
map: texture,
transparent: true,
@ -145,7 +145,7 @@ export function VrGui(){
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( {
map: texture,
transparent: true,
@ -157,7 +157,7 @@ export function VrGui(){
button1.position.z = 0.02;
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( {
map: texture,
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( {
map: texture,
transparent: true,
@ -183,7 +183,7 @@ export function VrGui(){
button2.position.z = 0.02;
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( {
map: texture,
transparent: true,
@ -208,7 +208,7 @@ export function VrGui(){
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( {
map: textureshebei,
transparent: true,
@ -220,7 +220,7 @@ export function VrGui(){
buttonShiBei.position.z = 0.02;
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( {
map: texturezhankong,
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( {
map: texture,
transparent: true,
@ -246,7 +246,7 @@ export function VrGui(){
buttonStation1.position.z = 0.02;
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( {
map: texture,
transparent: true,
@ -452,7 +452,7 @@ export function VrGui(){
var beauty = new Image();
beauty.src = "../../static/texture/scene.png";
beauty.src = "../../cbtc/static/texture/scene.png";
//canvas文字贴图方法
//PS:待提炼 增强功能
function getTextCanvas(text,type){

View File

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

View File

@ -5,16 +5,16 @@ var Staticmodel = {
deviceType: "man",
type: "man",
picUrl: "",
assetUrl: "../../static/MODEL/passflow/man1.FBX"
assetUrl: "../../cbtc/static/MODEL/passflow/man1.FBX"
},//"https://joylink.club/oss/wx/switch/switch.FBX"
//../../static/MODEL/device/switch.FBX
//../../cbtc/static/MODEL/device/switch.FBX
man2: {
id: "2",
name: "人物2",
deviceType: "man",
type: "man",
picUrl: "",
assetUrl: "../../static/MODEL/passflow/man2.FBX"
assetUrl: "../../cbtc/static/MODEL/passflow/man2.FBX"
},
station: {
id: "3",
@ -22,7 +22,7 @@ var Staticmodel = {
deviceType: "station",
type: "hrb",
picUrl: "",
assetUrl: "../../static/MODEL/passflow/station.FBX"
assetUrl: "../../cbtc/static/MODEL/passflow/station.FBX"
},
zhajiin: {
id: "4",
@ -30,7 +30,7 @@ var Staticmodel = {
deviceType: "zhajiin",
type: "hrb",
picUrl: "",
assetUrl: "../../static/MODEL/passflow/zhajiin.FBX"
assetUrl: "../../cbtc/static/MODEL/passflow/zhajiin.FBX"
},
zhajiout: {
id: "5",
@ -38,7 +38,7 @@ var Staticmodel = {
deviceType: "zhajiout",
type: "hrb",
picUrl: "",
assetUrl: "../../static/MODEL/passflow/zhajiout.FBX"
assetUrl: "../../cbtc/static/MODEL/passflow/zhajiout.FBX"
},
monitor: {
id: "6",
@ -46,7 +46,7 @@ var Staticmodel = {
deviceType: "monitor",
type: "hrb",
picUrl: "",
assetUrl: "../../static/MODEL/passflow/monitor.FBX"
assetUrl: "../../cbtc/static/MODEL/passflow/monitor.FBX"
},
train: {
id: "7",
@ -54,7 +54,7 @@ var Staticmodel = {
deviceType: "train",
type: "hrb",
picUrl: "",
assetUrl: "../../static/MODEL/train/train.FBX"
assetUrl: "../../cbtc/static/MODEL/train/train.FBX"
},
section: {
id: "8",
@ -62,7 +62,7 @@ var Staticmodel = {
deviceType: "section",
type: "hrb",
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 passerwebwork = new Worker("../../static/workertest/passsimulation/passer.js");
let stationwebwork = new Worker("../../static/workertest/passsimulation/station.js");
// let passerwebwork = new Worker("../../cbtc/static/workertest/passsimulation/passer.js");
let stationwebwork = new Worker("../../cbtc/static/workertest/passsimulation/station.js");
let stationzon = new ZoneManager();
//老版本临时ai控制
@ -297,7 +297,7 @@ export function Jl3dpassflow(dom,skinCode,routegroup,viewMap) {
// load a resource
loader.load(
// resource URL
'../../static/jl3d/path/path.obj',
'../../cbtc/static/jl3d/path/path.obj',
// called when resource is loaded
function ( object ) {

View File

@ -103,7 +103,7 @@ export function JLmap3d(dom, data,skinCode,storemod,routegroup,project) {
//连接到通信
//console.log(this.Subscribe.config);
this.webwork = new Worker("../../static/workertest/trainworker.js");
this.webwork = new Worker("../../cbtc/static/workertest/trainworker.js");
//初始化加载数据和模型getPublishMapDetail
getPublishMapDetail(skinCode).then(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);
if(assetsdata.link){
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.socketon(scope.Subscribe.topic);
SimulationLoad(mapnetdata,scope,netdata.data,mapdata,camera,controls,scenesimulation,storemod);
}else{
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.socketon(scope.Subscribe.topic);
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.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]*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
}
}
let oldlengthfact = _movemesh.lengthFact;
_movemesh.lengthFact = closedSpline.arcLengthDivisions/4;
if(newpointlist.length>2){
_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;
// closedSpline.arcLengthDivisions;

View File

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

View File

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

View File

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

View File

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

View File

@ -19,7 +19,7 @@ export function SectionListN() {
var autorail;
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.repeat.set( 1,1);

View File

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

View File

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

View File

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

View File

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

View File

@ -50,7 +50,7 @@ export default {
{ prop: 'description', label: '场景描述', type: 'textarea' },
{ prop: 'disposalProcesses', label: '处置流程', type: 'textarea' },
{ 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' }
]
};

View File

@ -94,9 +94,9 @@ export default {
}
};
},
mounted() {
created() {
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;
});
},

View File

@ -1,6 +1,6 @@
<template>
<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" -->
<el-table :data="actionList" border style="width:100%;" height="550" :span-method="objectSpanMethod">
<el-table-column label="步骤名称" width="100">
@ -121,7 +121,8 @@
<operate-statistic ref="operateStatistic" @submitOperateStatistic="submitOperateStatistic" />
<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>
</span>
</el-dialog>
@ -198,6 +199,7 @@ export default {
if (response.data.commandEvaluationRuleVOs) {
response.data.commandEvaluationRuleVOs.forEach(data=>{
commandEvaluationRuleVOs[data.actionId] = data;
// commandEvaluationRuleVOs[data.actionId].inputVisible = false;
});
}
const stepVOs = {};
@ -234,7 +236,7 @@ export default {
}
});
lastData = JSON.parse(lastData);
const lastMemberList = [];
const lastMemberList = {};
lastData.forEach((member, index)=>{
const userName = member.userName ? '-' + member.userName : '';
const name = member.name ? '-' + member.name : '';
@ -252,7 +254,7 @@ export default {
member.label = member.type + name + userName;
member.normalName = member.type + name;
}
lastMemberList.push(member);
lastMemberList[member.id] = member;
this.memberList = lastMemberList;
this.dialogVisible = true;
});
@ -348,9 +350,11 @@ export default {
});
},
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.$refs['saveTagInput' + actionId].$refs.input.focus();
self.$refs['saveTagInput' + actionId].$refs.input.focus();
});
},
handleInputConfirm(actionId) {
@ -391,7 +395,14 @@ export default {
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);
const stepVOs = Object.values(this.stepVOs);
commandEvaluationRuleVOs = commandEvaluationRuleVOs.filter(eachData=>{
@ -412,6 +423,7 @@ export default {
delete data.deductScoreVisible;
});
}
// && operationStatisticVO.itemVOS
if (operationStatisticVO) {
this.formModel.operationStatisticVO = operationStatisticVO;
}
@ -477,8 +489,8 @@ export default {
},
objectSort(keyName) {
return function (objectN, objectM) {
var valueN = objectN[keyName];
var valueM = objectM[keyName];
var valueN = parseInt(objectN[keyName]);
var valueM = parseInt(objectM[keyName]);
if (valueN > valueM) return 1;
else if (valueN < valueM) return -1;
else return 0;

View File

@ -3,7 +3,7 @@
<div class="OperateStatisticIn">
<div class="OperateStatisticInName">编辑运营统计</div>
<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-input-number
v-model="formModel.score"
@ -82,7 +82,7 @@ export default {
},
confirm() {
const self = this;
this.$refs.dataform.validateForm(() => {
this.$refs.dataform.validate(() => {
const itemVOS = self.formModel.itemVOS;
if (itemVOS.length > 0) {
let result = true;

View File

@ -105,30 +105,102 @@ export default {
id: 'environment',
type: 'totalSystem',
children: [
{
name: '大系统',
{
name: '车站模式管理器',
mode: 'environment02',
id: 'environmentOne',
type: 'interface'
},
{
name: '冷水系统',
},
{
name: '时间表管理器',
mode: 'environment02',
id: 'environmentTwo',
type: 'interface'
},
{
name: '隧道通风系统',
},
{
name: '隧道通风系统',
mode: 'environment02',
id: 'environmentThree',
type: 'interface'
},
},
{
name: '车站小系统1',
name: '大系统',
mode: 'environment02',
id: 'environmentFour',
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>
<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-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-input-number v-model="form.radius" controls-position="right" :min="3" size="small" />
</el-form-item>
@ -41,7 +44,8 @@ export default {
buttonText: '立即创建',
showDeleteButton: false,
form: {
code: '',
code: '',
z2: 1,
fillColor: '',
borderWidth: '',
strokeColor: '',
@ -71,7 +75,8 @@ export default {
this.buttonText = '修改';
this.showDeleteButton = 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.borderWidth = model.borderWidth;
this.form.strokeColor = model.strokeColor;
@ -92,7 +97,8 @@ export default {
y: this.form.y
},
code: this.isUpdate ? this.form.code : getUID('IscsCircle', this.iscs.iscsCircleList),
_type: 'IscsCircle',
_type: 'IscsCircle',
z2: this.form.z2,
fillColor: this.form.fillColor,
borderWidth: this.form.borderWidth,
strokeColor: this.form.strokeColor,

View File

@ -1,6 +1,9 @@
<template>
<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-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-input-number v-model="form.lineWidth" controls-position="right" :min="1" :max="50" size="small" />
</el-form-item>
@ -119,7 +122,8 @@ export default {
showDeleteButton: false,
form: {
classify:'solid',
code: '',
code: '',
z2: 0,
lineWidth: '',
fillColor: '#fff',
arrowShow: 'none',
@ -154,7 +158,8 @@ export default {
this.buttonText = '修改';
this.showDeleteButton = 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.fillColor = model.fillColor;
if (model.point1) {
@ -184,7 +189,8 @@ export default {
const lineModel = {
points: this.form.points,
code: this.isUpdate ? this.form.code : getUID('IscsLine', this.iscs.iscsLineList),
_type: 'IscsLine',
_type: 'IscsLine',
z2: this.form.z2,
lineWidth: this.form.lineWidth,
fillColor: this.form.fillColor,
classify: this.form.classify,

View File

@ -1,6 +1,9 @@
<template>
<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-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-input-number v-model="form.width" controls-position="right" :min="1" size="small" />
</el-form-item>
@ -50,7 +53,8 @@ export default {
buttonText: '立即创建',
showDeleteButton: false,
form: {
code: '',
code: '',
z2: 1,
fillColor: '',
borderWidth: '',
strokeColor: '',
@ -82,7 +86,8 @@ export default {
this.buttonText = '修改';
this.showDeleteButton = 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.borderWidth = model.borderWidth;
this.form.strokeColor = model.strokeColor;
@ -105,7 +110,8 @@ export default {
y: this.form.y
},
code: this.isUpdate ? this.form.code : getUID('IscsRect', this.iscs.iscsRectList),
_type: 'IscsRect',
_type: 'IscsRect',
z2: this.form.z2,
fillColor: this.form.fillColor,
borderWidth: this.form.borderWidth,
strokeColor: this.form.strokeColor,

View File

@ -1,7 +1,10 @@
<template>
<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-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-form-item>
<el-form-item label="高度:" prop="height">
@ -52,7 +55,8 @@ export default {
buttonText: '立即创建',
showDeleteButton: false,
form: {
code: '',
code: '',
z2: 1,
fillColor: '',
borderWidth: '',
direction:'left',
@ -84,7 +88,8 @@ export default {
this.buttonText = '修改';
this.showDeleteButton = 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.borderWidth = model.borderWidth;
this.form.strokeColor = model.strokeColor;
@ -107,7 +112,8 @@ export default {
y: this.form.y
},
code: this.isUpdate ? this.form.code : getUID('IscsTriangle', this.iscs.iscsTriangleList),
_type: 'IscsTriangle',
_type: 'IscsTriangle',
z2: this.form.z2,
fillColor: this.form.fillColor,
borderWidth: this.form.borderWidth,
strokeColor: this.form.strokeColor,

View File

@ -41,6 +41,22 @@
@createDataModel="createDataModel"
@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-tabs>
</el-card>
@ -53,6 +69,8 @@ import IscsLine from '../icscComponents/line';
import IscsText from '../icscComponents/text';
import IscsRect from '../icscComponents/rect';
import IscsButton from '../icscComponents/button';
import IscsCircle from '../icscComponents/circle';
import IscsTriangle from '../icscComponents/triangle';
export default {
name: 'IscsOperate',
@ -60,7 +78,9 @@ export default {
IscsRect,
IscsLine,
IscsText,
IscsButton
IscsButton,
IscsCircle,
IscsTriangle
},
mixins: [
],

View File

@ -41,6 +41,30 @@
@createDataModel="createDataModel"
@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-tabs>
</el-card>
@ -53,6 +77,10 @@ import IscsLine from '../icscComponents/line';
import IscsText from '../icscComponents/text';
import IscsRect from '../icscComponents/rect';
import IscsButton from '../icscComponents/button';
import IscsCircle from '../icscComponents/circle';
import IscsTriangle from '../icscComponents/triangle';
import StateTable from '../icscComponents/stateTable';
export default {
name: 'IscsOperate',
@ -60,7 +88,10 @@ export default {
IscsRect,
IscsLine,
IscsText,
IscsButton
IscsButton,
IscsCircle,
IscsTriangle,
StateTable
},
mixins: [
],

View File

@ -1,5 +1,5 @@
<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>
</template>
@ -23,6 +23,10 @@ export default {
canvasHeight: {
type: Number,
default: 500
},
scaleRate:{
type: Number,
default: 1
}
},
data() {
@ -47,7 +51,7 @@ export default {
height: this.canvasHeight
},
options: {
scaleRate: 1,
scaleRate: this.scaleRate,
offsetX: 0,
offsetY: 0
},
@ -78,5 +82,11 @@ export default {
.iscs-canvas{
margin: 0 auto;
}
.iscsCanvas{
width: 100%;
height: 100%;
overflow-y: auto;
overflow-x: hidden;
}
</style>

View File

@ -1,13 +1,16 @@
<template>
<div style="height: 100%; width: 100%;overflow-y: auto;">
<psd-system v-if="mode=='psdSystem'" />
<substation v-else-if="mode=='substation'" />
</div>
</template>
<script>
import PsdSystem from './psdSystem/index.vue';
import Substation from './powerMonitor/substation.vue';
export default {
components:{
PsdSystem
PsdSystem,
Substation
},
data() {
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:[],
group:'',
lineCode:'',
buttonId:'electric',
buttonId:'substation',
buttonList:{
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 },
ffas: {name:'火灾报警系统', type:'totalSystem', id: 'ffas', mode: 'ffas', active:false, icon:iscs_icon4,
children:[
@ -385,6 +399,7 @@ export default {
bottom: 0;
left: 0;
padding-left: 5px;
z-index:3;
}
.bottom-box-in{
display: inline-block;

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -151,45 +151,45 @@
return {
move:0,
movex:"20%",
apoimg:"/static/jl3d/control/green.png",
sgimg:"/static/jl3d/control/redz.png",
jgimg:"/static/jl3d/control/greenz.png",
atpimg:"/static/jl3d/control/atp.png",
slimg:"/static/jl3d/control/gray.png",
zuoimg:"/static/jl3d/control/zuo.png",
niuimg:"/static/jl3d/control/niu.png",
apoimg:"/cbtc/static/jl3d/control/green.png",
sgimg:"/cbtc/static/jl3d/control/redz.png",
jgimg:"/cbtc/static/jl3d/control/greenz.png",
atpimg:"/cbtc/static/jl3d/control/atp.png",
slimg:"/cbtc/static/jl3d/control/gray.png",
zuoimg:"/cbtc/static/jl3d/control/zuo.png",
niuimg:"/cbtc/static/jl3d/control/niu.png",
toutransform:"rotate(0deg)",
redlimg:"/static/jl3d/control/redl.png",
greenimg:"/static/jl3d/control/green.png",
urgestopimg:"/static/jl3d/control/urgestop.png",
redlimg:"/cbtc/static/jl3d/control/redl.png",
greenimg:"/cbtc/static/jl3d/control/green.png",
urgestopimg:"/cbtc/static/jl3d/control/urgestop.png",
iconrotate:0,
doordirecttou:"rotate(0deg)",
doormodetou:"rotate(0deg)",
watertou:"rotate(0deg)",
washtou:"rotate(0deg)",
greenzimg:"/static/jl3d/control/greenz.png",
redzimg:"/static/jl3d/control/redz.png",
redimg:"/static/jl3d/control/red.png",
greenlimg:"/static/jl3d/control/greenl.png",
grayimg:"/static/jl3d/control/gray.png",
aircomimg:"/static/jl3d/control/aircom.png",
greenzimg:"/cbtc/static/jl3d/control/greenz.png",
redzimg:"/cbtc/static/jl3d/control/redz.png",
redimg:"/cbtc/static/jl3d/control/red.png",
greenlimg:"/cbtc/static/jl3d/control/greenl.png",
grayimg:"/cbtc/static/jl3d/control/gray.png",
aircomimg:"/cbtc/static/jl3d/control/aircom.png",
passlighttf:"rotate(0deg)",
sivtf:"rotate(0deg)",
driverlighttf:"rotate(0deg)",
headlighttf:"rotate(0deg)",
// atoOn:null,
atobuttonimg:"/static/jl3d/control/green.png",
atobuttonimg:"/cbtc/static/jl3d/control/green.png",
// driveMode:null,
rmbuttonimg:"/static/jl3d/control/green.png",
rmbuttonimg:"/cbtc/static/jl3d/control/green.png",
// runLevel:null,
cbtcbuttonimg:"/static/jl3d/control/green.png",
cbtcbuttonimg:"/cbtc/static/jl3d/control/green.png",
doorleftstatus:false,
doorrightstatus:false,
doorleftimg:"/static/jl3d/control/green.png",
doorrightimg:"/static/jl3d/control/green.png",
doorleftimg:"/cbtc/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 );
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 material = new THREE.MeshBasicMaterial( {map: texture, side: THREE.DoubleSide} );
var kd = new THREE.Mesh( geometry, material );

View File

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

View File

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

View File

@ -54,7 +54,7 @@
<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>
</el-tab-pane> -->

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -19,7 +19,7 @@
<!-- 排班计划 -->
<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="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=" fieldExam">实操测验</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 Scheduling from '@/views/newMap/displayNew/demon/scheduling';
import SchedulingView from '@/views/newMap/displayNew/demon/schedulingView';
import { EventBus } from '@/scripts/event-bus';
export default {
name:'DemonMenu',
components:{
@ -102,6 +103,7 @@ export default {
group:'',
mapId:'',
lineCode:'',
practiceDisabled:false,
deviceShow: false,
drivingShow: false,
jl3dpassflow:this.$t('display.demon.passengerflow'),
@ -124,6 +126,12 @@ export default {
this.group = this.$route.query.group;
this.mapId = this.$route.query.mapId;
this.lineCode = this.$route.query.lineCode;
EventBus.$on('loadScene', () => {
this.practiceDisabled = true;
});
EventBus.$on('quitScene', () => {
this.practiceDisabled = false;
});
},
methods:{
menuClick() {

View File

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

View File

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

View File

@ -27,7 +27,9 @@ export default {
//
'$store.state.socket.simulationScriptTip':function(val, old) {
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;
} else if (val.type == 'Operation') {
this.scriptTipMessage = covertOperate(val.operationType, val.operationParamMap);