修改三维课程大铁组件
This commit is contained in:
parent
5714bae120
commit
25a9f51dab
@ -823,7 +823,6 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
|||||||
// console.log(trainmodel.openleft);
|
// console.log(trainmodel.openleft);
|
||||||
// console.log(trainmodel.openright);
|
// console.log(trainmodel.openright);
|
||||||
if(trainmodel.code == data.code){
|
if(trainmodel.code == data.code){
|
||||||
console.log(data);
|
|
||||||
if(trainmodel.right == "0"){
|
if(trainmodel.right == "0"){
|
||||||
if(data.doorCode == "2"){
|
if(data.doorCode == "2"){
|
||||||
|
|
||||||
@ -834,7 +833,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
|||||||
actions["traindoor"].top[an].time = actions["traindoor"].top[an]._clip.duration;
|
actions["traindoor"].top[an].time = actions["traindoor"].top[an]._clip.duration;
|
||||||
actions["traindoor"].top[an].timeScale = -1;
|
actions["traindoor"].top[an].timeScale = -1;
|
||||||
actions["traindoor"].top[an].play();
|
actions["traindoor"].top[an].play();
|
||||||
|
|
||||||
}
|
}
|
||||||
}else if(trainmodel.openleft != data.open && data.open == "1"){
|
}else if(trainmodel.openleft != data.open && data.open == "1"){
|
||||||
trainmodel.openleft = "1";
|
trainmodel.openleft = "1";
|
||||||
@ -1008,6 +1007,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
|
|||||||
}
|
}
|
||||||
function signalupdate(data) {
|
function signalupdate(data) {
|
||||||
code = data.code;
|
code = data.code;
|
||||||
|
console.log(data);
|
||||||
if(data.red == 1){
|
if(data.red == 1){
|
||||||
signallist.list[code].mesh.getObjectByName("red").material.map = materials["red"];
|
signallist.list[code].mesh.getObjectByName("red").material.map = materials["red"];
|
||||||
signallist.list[code].mesh.getObjectByName("red").material.map.needsUpdate = true;
|
signallist.list[code].mesh.getObjectByName("red").material.map.needsUpdate = true;
|
||||||
|
@ -55,13 +55,16 @@ export function Lesson3dPlayer(dom,lessonData,lessonIndex) {
|
|||||||
|
|
||||||
let animateManager = new AnimateManager();
|
let animateManager = new AnimateManager();
|
||||||
|
|
||||||
|
|
||||||
let controlManager = new ControlManager( dom,scene,lessonData,lessonIndex);
|
let controlManager = new ControlManager( dom,scene,lessonData,lessonIndex);
|
||||||
|
|
||||||
let assetModelManager = new AssetModelManager(scope,scene,controlManager);
|
let assetModelManager = new AssetModelManager(scope,scene,controlManager);
|
||||||
assetModelManager.lessonAssetsLoader(lessonData).then((result) => {
|
assetModelManager.lessonAssetsLoader(lessonData).then((result) => {
|
||||||
scope.nowSceneType = lessonData.lessonProgress[0].progressScene;
|
scope.nowSceneType = lessonData.lessonProgress[0].progressScene;
|
||||||
animateManager.initAnimation(assetModelManager);
|
animateManager.initAnimation(assetModelManager);
|
||||||
controlManager.init(animateManager.actions,assetModelManager);
|
|
||||||
|
|
||||||
|
controlManager.init(animateManager.actions,assetModelManager,lessonData.trainDeviceData);
|
||||||
|
|
||||||
startLesson();
|
startLesson();
|
||||||
animate();
|
animate();
|
||||||
|
@ -13,6 +13,7 @@ export function ControlManager(dom,scene,lessonData,lessonIndex) {
|
|||||||
this.controls = {};
|
this.controls = {};
|
||||||
this.nowCamera = null;
|
this.nowCamera = null;
|
||||||
this.eventHitMode = false;
|
this.eventHitMode = false;
|
||||||
|
let modelManager;
|
||||||
let nowRole = "";
|
let nowRole = "";
|
||||||
let roleMode = false;
|
let roleMode = false;
|
||||||
|
|
||||||
@ -25,6 +26,9 @@ export function ControlManager(dom,scene,lessonData,lessonIndex) {
|
|||||||
let eventTrigger;
|
let eventTrigger;
|
||||||
let nowActions;
|
let nowActions;
|
||||||
|
|
||||||
|
let trainDeviceMode = false;
|
||||||
|
let trainDeviceList = [];
|
||||||
|
|
||||||
let renderer = new THREE.WebGLRenderer({ antialias: true });
|
let renderer = new THREE.WebGLRenderer({ antialias: true });
|
||||||
renderer.setClearColor(new THREE.Color(0x000000));
|
renderer.setClearColor(new THREE.Color(0x000000));
|
||||||
renderer.setViewport( 0, 0, dom.offsetWidth, dom.offsetHeight);
|
renderer.setViewport( 0, 0, dom.offsetWidth, dom.offsetHeight);
|
||||||
@ -227,9 +231,14 @@ export function ControlManager(dom,scene,lessonData,lessonIndex) {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
this.init = function(actions){
|
this.init = function(actions,assetModelManager,trainDeviceData){
|
||||||
// worldOctree.fromGraphNode( standstationPZ );
|
// worldOctree.fromGraphNode( standstationPZ );
|
||||||
actionList = actions;
|
actionList = actions;
|
||||||
|
modelManager = assetModelManager;
|
||||||
|
if(trainDeviceData){
|
||||||
|
trainDeviceMode = true;
|
||||||
|
trainDeviceList = trainDeviceData;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
this.updatePos = function(pos){
|
this.updatePos = function(pos){
|
||||||
@ -262,6 +271,7 @@ export function ControlManager(dom,scene,lessonData,lessonIndex) {
|
|||||||
// console.log("mousedown-----------------------");
|
// console.log("mousedown-----------------------");
|
||||||
// console.log(raycasterBoxs);
|
// console.log(raycasterBoxs);
|
||||||
// console.log(roleMode);
|
// console.log(roleMode);
|
||||||
|
|
||||||
if(raycasterBoxs.length>0 && roleMode){
|
if(raycasterBoxs.length>0 && roleMode){
|
||||||
var mouse = new THREE.Vector2();
|
var mouse = new THREE.Vector2();
|
||||||
|
|
||||||
@ -302,6 +312,32 @@ export function ControlManager(dom,scene,lessonData,lessonIndex) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(trainDeviceMode == true){
|
||||||
|
var mouse = new THREE.Vector2();
|
||||||
|
|
||||||
|
var raycaster = new THREE.Raycaster();
|
||||||
|
|
||||||
|
mouse.x = ( event.clientX / dom.offsetWidth ) * 2 - 1;
|
||||||
|
|
||||||
|
mouse.y = - ( event.clientY / dom.offsetHeight ) * 2 + 1;
|
||||||
|
|
||||||
|
raycaster.setFromCamera(mouse,scope.nowCamera);
|
||||||
|
|
||||||
|
var intersects = raycaster.intersectObject( modelManager.otherModel.children[1],true);
|
||||||
|
if(intersects.length>0){
|
||||||
|
for(let td=0;td<trainDeviceList.length;td++){
|
||||||
|
|
||||||
|
if(trainDeviceList[td].id == intersects[0].object.name){
|
||||||
|
trainDeviceList[td].color = "#fff";
|
||||||
|
trainDeviceList[td].value = "已检查";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
} );
|
} );
|
||||||
|
|
||||||
|
|
||||||
|
@ -22,7 +22,6 @@ let delta;
|
|||||||
let scene;
|
let scene;
|
||||||
|
|
||||||
export function Lesson3dEditor(dom,lessonData) {
|
export function Lesson3dEditor(dom,lessonData) {
|
||||||
|
|
||||||
// let stats = new Stats();
|
// let stats = new Stats();
|
||||||
// dom.appendChild( stats.dom );
|
// dom.appendChild( stats.dom );
|
||||||
let lessonIndex = 0;
|
let lessonIndex = 0;
|
||||||
|
461
src/jlmap3d/lesson3dedit/toolsmodel/zzwwtrain.js
Normal file
461
src/jlmap3d/lesson3dedit/toolsmodel/zzwwtrain.js
Normal file
@ -0,0 +1,461 @@
|
|||||||
|
|
||||||
|
export function ZzwwTrain() {
|
||||||
|
let scope = this;
|
||||||
|
this.deviceList = [
|
||||||
|
{
|
||||||
|
id:"ZLQ",
|
||||||
|
name:"止轮器",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"FD",
|
||||||
|
name:"风笛",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"SD",
|
||||||
|
name:"上灯",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"SDD",
|
||||||
|
name:"上大灯",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"XDD",
|
||||||
|
name:"下大灯",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"YGQ",
|
||||||
|
name:"雨X刮器",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"DFBL",
|
||||||
|
name:"挡风玻璃",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"BYC",
|
||||||
|
name:"百叶窗",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"DCFS",
|
||||||
|
name:"调车扶手",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"XTB",
|
||||||
|
name:"下踏板",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"CG",
|
||||||
|
name:"车钩",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"GS",
|
||||||
|
name:"钩舌",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"CG1",
|
||||||
|
name:"车钩",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZJSM",
|
||||||
|
name:"折角塞门",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZDGRG",
|
||||||
|
name:"制动管软管",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZDGRG1",
|
||||||
|
name:"制动管软管",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"FCD",
|
||||||
|
name:"防尘堵",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"AQL",
|
||||||
|
name:"安全链",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"AQL1",
|
||||||
|
name:"安全链",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"PZQ",
|
||||||
|
name:"排障器",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"PZQ1",
|
||||||
|
name:"排障器",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"PSQ",
|
||||||
|
name:"排石器",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"PSQ1",
|
||||||
|
name:"排石器1",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZJF",
|
||||||
|
name:"中继阀",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZYFG",
|
||||||
|
name:"作用风缸",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZDSM",
|
||||||
|
name:"制动塞门",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"",
|
||||||
|
name:"",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZDSM1",
|
||||||
|
name:"制动塞门",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"JCXHCGQ",
|
||||||
|
name:"信号传感器",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"TJ",
|
||||||
|
name:"托架",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"KYJ",
|
||||||
|
name:"空压机",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"KYJPD",
|
||||||
|
name:"空压机皮带",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"PDYL",
|
||||||
|
name:"皮带压轮",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZXTH",
|
||||||
|
name:"轴箱弹簧",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZXDG",
|
||||||
|
name:"轴箱端盖",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"YYJZQ",
|
||||||
|
name:"液压减震器",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"CLTM",
|
||||||
|
name:"车轮踏面",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"QYZ",
|
||||||
|
name:"牵引座",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"QYG",
|
||||||
|
name:"牵引杆",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"GB",
|
||||||
|
name:"拐臂",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"SDCGQ",
|
||||||
|
name:"速度传感器",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZDG",
|
||||||
|
name:"制动缸",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZW",
|
||||||
|
name:"闸瓦",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZWT",
|
||||||
|
name:"闸瓦托",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZWTZG",
|
||||||
|
name:"闸瓦调整杆",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"RYX",
|
||||||
|
name:"燃油箱",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"YW",
|
||||||
|
name:"油位",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"XDCX",
|
||||||
|
name:"蓄电池箱",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"RLZDJAZZ",
|
||||||
|
name:"人力制动机",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZFG",
|
||||||
|
name:"总风缸",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"XYQ",
|
||||||
|
name:"消音器",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"JCXHCGQ1",
|
||||||
|
name:"信号传感器",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"KLQ",
|
||||||
|
name:"空滤器",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"GWS",
|
||||||
|
name:"钩尾销",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"FDJ",
|
||||||
|
name:"发动机",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"CL",
|
||||||
|
name:"车轮",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"CZ",
|
||||||
|
name:"车轴",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"CDZ",
|
||||||
|
name:"传动轴",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"CZCLX",
|
||||||
|
name:"车轴齿轮箱",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"CZCLX1",
|
||||||
|
name:"车轴齿轮箱1",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"ZJHXX",
|
||||||
|
name:"中间换向箱",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"GDZ",
|
||||||
|
name:"固定轴",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"CC",
|
||||||
|
name:"车窗",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"CM",
|
||||||
|
name:"车门",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:"BPX",
|
||||||
|
name:"备品箱",
|
||||||
|
color:"#ff0000",
|
||||||
|
status:"",
|
||||||
|
value:"未检查",
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
@ -54,6 +54,16 @@
|
|||||||
v-show="lessonTools[3].isShow ">
|
v-show="lessonTools[3].isShow ">
|
||||||
</Job-Pane>
|
</Job-Pane>
|
||||||
|
|
||||||
|
<TrainTest-Pane
|
||||||
|
:trainDeviceData='trainDeviceData'
|
||||||
|
:lessonData='lessonData'
|
||||||
|
:lessonEditIndex='lessonEditIndex'
|
||||||
|
ref="jobpane"
|
||||||
|
v-show="lessonTools[5].isShow ">
|
||||||
|
</TrainTest-Pane>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<Tool-Bar v-show="lessonTools[4].isShow "></Tool-Bar>
|
<Tool-Bar v-show="lessonTools[4].isShow "></Tool-Bar>
|
||||||
|
|
||||||
<div id="lesson3ddraw" class="lesson3ddraw">
|
<div id="lesson3ddraw" class="lesson3ddraw">
|
||||||
@ -132,12 +142,13 @@
|
|||||||
import ExplainPane from '@/views/jlmap3d/lesson3dedit/tools/explainpane';
|
import ExplainPane from '@/views/jlmap3d/lesson3dedit/tools/explainpane';
|
||||||
import JobPane from '@/views/jlmap3d/lesson3dedit/tools/jobpane';
|
import JobPane from '@/views/jlmap3d/lesson3dedit/tools/jobpane';
|
||||||
import ToolBar from '@/views/jlmap3d/lesson3dedit/tools/toolbar';
|
import ToolBar from '@/views/jlmap3d/lesson3dedit/tools/toolbar';
|
||||||
|
import TrainTestPane from '@/views/jlmap3d/lesson3dedit/tools/traintestpane';
|
||||||
|
|
||||||
import { Lesson3dEditor } from '@/jlmap3d/lesson3dedit/lesson3deditor.js';
|
import { Lesson3dEditor } from '@/jlmap3d/lesson3dedit/lesson3deditor.js';
|
||||||
|
|
||||||
import { LessonData } from '@/jlmap3d/lesson3dedit/model/lessondata.js';
|
import { LessonData } from '@/jlmap3d/lesson3dedit/model/lessondata.js';
|
||||||
import { JobPaneData } from '@/jlmap3d/lesson3dedit/toolsmodel/jobpanedata.js';
|
import { JobPaneData } from '@/jlmap3d/lesson3dedit/toolsmodel/jobpanedata.js';
|
||||||
|
import { ZzwwTrain } from '@/jlmap3d/lesson3dedit/toolsmodel/zzwwtrain.js';
|
||||||
|
|
||||||
import { getLesson3dData,updateLesson3dData } from '@/api/jmap/lesson3d';
|
import { getLesson3dData,updateLesson3dData } from '@/api/jmap/lesson3d';
|
||||||
export default {
|
export default {
|
||||||
@ -152,7 +163,8 @@
|
|||||||
ProcessLog,
|
ProcessLog,
|
||||||
ExplainPane,
|
ExplainPane,
|
||||||
JobPane,
|
JobPane,
|
||||||
ToolBar
|
ToolBar,
|
||||||
|
TrainTestPane
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -175,6 +187,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
jobPaneData:{},
|
jobPaneData:{},
|
||||||
|
trainDeviceData:{},
|
||||||
lessonEditIndex:0,
|
lessonEditIndex:0,
|
||||||
lessonTools:[
|
lessonTools:[
|
||||||
{
|
{
|
||||||
@ -202,6 +215,11 @@
|
|||||||
type:"",
|
type:"",
|
||||||
isShow:false,
|
isShow:false,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name:"大铁车检组件",
|
||||||
|
type:"",
|
||||||
|
isShow:false,
|
||||||
|
},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -232,7 +250,12 @@
|
|||||||
|
|
||||||
this.lessonData = new LessonData();
|
this.lessonData = new LessonData();
|
||||||
this.jobPaneData = new JobPaneData();
|
this.jobPaneData = new JobPaneData();
|
||||||
|
this.trainDeviceData = new ZzwwTrain();
|
||||||
|
|
||||||
let loadData;
|
let loadData;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if(data.data.data){
|
if(data.data.data){
|
||||||
loadData = JSON.parse(data.data.data);
|
loadData = JSON.parse(data.data.data);
|
||||||
|
|
||||||
@ -241,8 +264,12 @@
|
|||||||
this.examMode = loadData.setup.examMode;
|
this.examMode = loadData.setup.examMode;
|
||||||
this.jobPaneData.dataList = loadData.toolJobPane;
|
this.jobPaneData.dataList = loadData.toolJobPane;
|
||||||
this.$refs.jobpane.initJobList(this.jobPaneData.dataList);
|
this.$refs.jobpane.initJobList(this.jobPaneData.dataList);
|
||||||
|
|
||||||
this.lessonTools = loadData.lessonTools;
|
this.lessonTools = loadData.lessonTools;
|
||||||
|
|
||||||
|
if(this.lessonTools[5].isShow){
|
||||||
|
loadData.trainDeviceData = this.trainDeviceData.deviceList;
|
||||||
|
}
|
||||||
|
|
||||||
this.lessonData.loadLessonProgress(loadData.lessonProgress);
|
this.lessonData.loadLessonProgress(loadData.lessonProgress);
|
||||||
}else{
|
}else{
|
||||||
this.lessonData.initLessonProgress();
|
this.lessonData.initLessonProgress();
|
||||||
|
175
src/views/jlmap3d/lesson3dedit/tools/traintestpane.vue
Normal file
175
src/views/jlmap3d/lesson3dedit/tools/traintestpane.vue
Normal file
@ -0,0 +1,175 @@
|
|||||||
|
<template>
|
||||||
|
|
||||||
|
<div class="traintestpaneover" :style="{'background-image': 'url('+lessonbg+')'}">
|
||||||
|
<div class="traintesttittle"> 待检查设备:</div>
|
||||||
|
<div class="addtraintestdivs" :style="{'color':item.color}" v-for="(item,index) in trainDeviceData.deviceList" @click="selsectTrainDevice(item)">
|
||||||
|
{{item.name}}:{{item.value}}
|
||||||
|
</div>
|
||||||
|
<!-- <div class="addtraintestdiv"
|
||||||
|
:style="{'background-image': 'url('+localstatic+'/lesson3d/addbutton.png)'}"
|
||||||
|
@click="addjob(index)"></div> -->
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import Vue from 'vue';
|
||||||
|
import localStore from 'storejs';
|
||||||
|
import { JL3D_LOCAL_STATIC } from '@/api/jlmap3d/assets3d.js';
|
||||||
|
|
||||||
|
|
||||||
|
//岗位
|
||||||
|
export default {
|
||||||
|
name: 'TrainTestPane',
|
||||||
|
props:['trainDeviceData','lessonData','lessonEditIndex'],
|
||||||
|
|
||||||
|
components: {
|
||||||
|
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
localstatic:JL3D_LOCAL_STATIC,
|
||||||
|
jobList:[],
|
||||||
|
showJobList:false,
|
||||||
|
showJob:false,
|
||||||
|
selectedJob:null,
|
||||||
|
lessonbg:JL3D_LOCAL_STATIC+"/lesson3d/lessonbg.png",
|
||||||
|
lkgwbg:JL3D_LOCAL_STATIC+"/lesson3d/lkgw.png",
|
||||||
|
jobpic:JL3D_LOCAL_STATIC+"/lesson3d/jobpic.png",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
|
||||||
|
},
|
||||||
|
watch: {
|
||||||
|
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
// this.initJobList();
|
||||||
|
},
|
||||||
|
beforeDestroy() {
|
||||||
|
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
openList(){
|
||||||
|
if(this.showJobList ==false){
|
||||||
|
this.showJobList = true;
|
||||||
|
// this.showJob = true;
|
||||||
|
}else{
|
||||||
|
this.showJobList = false;
|
||||||
|
this.selectedJob = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
initJobList(data){
|
||||||
|
this.jobList = data;
|
||||||
|
},
|
||||||
|
selectJob(item){
|
||||||
|
this.selectedJob = item;
|
||||||
|
|
||||||
|
},
|
||||||
|
addjob(index){
|
||||||
|
this.selectedJob.controlList[index].data.push({
|
||||||
|
cname:this.generateUUID(),
|
||||||
|
text:"内容",
|
||||||
|
explainRole:"角色",
|
||||||
|
nextNode:"null",
|
||||||
|
sceneId:this.lessonData.lessonData.lessonProgress[this.lessonEditIndex].id,
|
||||||
|
type:"",
|
||||||
|
});
|
||||||
|
},
|
||||||
|
selsectTrainDevice(selectTool,jobList){
|
||||||
|
|
||||||
|
},
|
||||||
|
generateUUID() {
|
||||||
|
var d = new Date().getTime();
|
||||||
|
if (window.performance && typeof window.performance.now === "function") {
|
||||||
|
d += performance.now(); //use high-precision timer if available
|
||||||
|
}
|
||||||
|
var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
|
||||||
|
var r = (d + Math.random() * 16) % 16 | 0;
|
||||||
|
d = Math.floor(d / 16);
|
||||||
|
return (c == 'x' ? r : (r & 0x3 | 0x8)).toString(16);
|
||||||
|
});
|
||||||
|
return uuid;
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<style rel="stylesheet/scss" lang="scss" scoped>
|
||||||
|
@import "src/styles/mixin.scss";
|
||||||
|
|
||||||
|
.traintestpaneover{
|
||||||
|
position: absolute;
|
||||||
|
width:300px;
|
||||||
|
height:350px;
|
||||||
|
overflow-y:auto;
|
||||||
|
overflow-x:hidden;
|
||||||
|
border:solid 2px #000;
|
||||||
|
color:#fff;
|
||||||
|
left:0;
|
||||||
|
bottom:0;
|
||||||
|
z-index:1;
|
||||||
|
}
|
||||||
|
.traintestdivtext{
|
||||||
|
// position: absolute;
|
||||||
|
bottom: 0;
|
||||||
|
font-size: 25px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.traintesttabmsg{
|
||||||
|
width:300px;
|
||||||
|
height:100px;
|
||||||
|
border:solid 2px #000;
|
||||||
|
// position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.traintesttabmsgtext{
|
||||||
|
width:200px;
|
||||||
|
height:90px;
|
||||||
|
// margin-top: 5px;
|
||||||
|
// margin-left: 2px;
|
||||||
|
border:solid 2px #000;
|
||||||
|
color:#fff;
|
||||||
|
position: absolute;
|
||||||
|
font-size: 25px;
|
||||||
|
right:10px;
|
||||||
|
top:10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.traintesttittle{
|
||||||
|
font-size: 30px;
|
||||||
|
color:#fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.addtraintestdivs{
|
||||||
|
|
||||||
|
width:98%;
|
||||||
|
margin: 1%;
|
||||||
|
border:solid 2px #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.statraintestdivs{
|
||||||
|
|
||||||
|
width:50%;
|
||||||
|
margin: 1%;
|
||||||
|
border:solid 2px #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.addtraintestdiv{
|
||||||
|
width:98%;
|
||||||
|
height:64px;
|
||||||
|
margin: 1%;
|
||||||
|
border:solid 2px #000;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</style>
|
@ -78,6 +78,14 @@
|
|||||||
@changeCameraPos="changeCameraPos">
|
@changeCameraPos="changeCameraPos">
|
||||||
</Tool-Bar>
|
</Tool-Bar>
|
||||||
|
|
||||||
|
<TrainTest-Pane
|
||||||
|
:trainDeviceData='trainDeviceData'
|
||||||
|
:lessonData='lessonData'
|
||||||
|
:lessonPlayIndex='lessonPlayIndex'
|
||||||
|
ref="jobpane"
|
||||||
|
v-show="lessonTools[5].isShow ">
|
||||||
|
</TrainTest-Pane>
|
||||||
|
|
||||||
<Result-Tips
|
<Result-Tips
|
||||||
:examStatus='examStatus'
|
:examStatus='examStatus'
|
||||||
ref="rtui">
|
ref="rtui">
|
||||||
@ -136,12 +144,14 @@
|
|||||||
import ExplainPane from '@/views/jlmap3d/lesson3dplayer/tools/explainpane';
|
import ExplainPane from '@/views/jlmap3d/lesson3dplayer/tools/explainpane';
|
||||||
import JobPane from '@/views/jlmap3d/lesson3dplayer/tools/jobpane';
|
import JobPane from '@/views/jlmap3d/lesson3dplayer/tools/jobpane';
|
||||||
import ToolBar from '@/views/jlmap3d/lesson3dplayer/tools/toolbar';
|
import ToolBar from '@/views/jlmap3d/lesson3dplayer/tools/toolbar';
|
||||||
|
import TrainTestPane from '@/views/jlmap3d/lesson3dplayer/tools/traintestpane';
|
||||||
|
|
||||||
|
|
||||||
import { Lesson3dPlayer } from '@/jlmap3d/lesson3d/lesson3dplayer.js';
|
import { Lesson3dPlayer } from '@/jlmap3d/lesson3d/lesson3dplayer.js';
|
||||||
|
|
||||||
import { LessonData } from '@/jlmap3d/lesson3d/model/lessondata.js';
|
import { LessonData } from '@/jlmap3d/lesson3d/model/lessondata.js';
|
||||||
import { JobPaneData } from '@/jlmap3d/lesson3d/toolsmodel/jobpanedata.js';
|
import { JobPaneData } from '@/jlmap3d/lesson3d/toolsmodel/jobpanedata.js';
|
||||||
|
import { ZzwwTrain } from '@/jlmap3d/lesson3dedit/toolsmodel/zzwwtrain.js';
|
||||||
|
|
||||||
import { getLesson3dData,updateLesson3dData } from '@/api/jmap/lesson3d';
|
import { getLesson3dData,updateLesson3dData } from '@/api/jmap/lesson3d';
|
||||||
|
|
||||||
@ -158,7 +168,8 @@
|
|||||||
ExplainPane,
|
ExplainPane,
|
||||||
JobPane,
|
JobPane,
|
||||||
ToolBar,
|
ToolBar,
|
||||||
ResultTips
|
ResultTips,
|
||||||
|
TrainTestPane
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -203,6 +214,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
jobPaneData:{},
|
jobPaneData:{},
|
||||||
|
trainDeviceData:{},
|
||||||
lessonPlayIndex:0,
|
lessonPlayIndex:0,
|
||||||
lessonTools:[
|
lessonTools:[
|
||||||
{
|
{
|
||||||
@ -225,6 +237,11 @@
|
|||||||
name:"导航工具栏",
|
name:"导航工具栏",
|
||||||
isShow:false,
|
isShow:false,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name:"大铁车检组件",
|
||||||
|
type:"",
|
||||||
|
isShow:false,
|
||||||
|
},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -257,6 +274,7 @@
|
|||||||
|
|
||||||
this.lessonData = new LessonData();
|
this.lessonData = new LessonData();
|
||||||
this.jobPaneData = new JobPaneData();
|
this.jobPaneData = new JobPaneData();
|
||||||
|
this.trainDeviceData = new ZzwwTrain();
|
||||||
let loadData;
|
let loadData;
|
||||||
|
|
||||||
|
|
||||||
@ -280,7 +298,9 @@
|
|||||||
this.$refs.jobpane.initJobList(this.jobPaneData.dataList);
|
this.$refs.jobpane.initJobList(this.jobPaneData.dataList);
|
||||||
this.lessonTools = loadData.lessonTools;
|
this.lessonTools = loadData.lessonTools;
|
||||||
this.lessonData.loadLessonProgress(loadData.lessonProgress);
|
this.lessonData.loadLessonProgress(loadData.lessonProgress);
|
||||||
|
if(this.lessonTools[5].isShow){
|
||||||
|
loadData.trainDeviceData = this.trainDeviceData.deviceList;
|
||||||
|
}
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
this.lessonData.initLessonProgress();
|
this.lessonData.initLessonProgress();
|
||||||
|
175
src/views/jlmap3d/lesson3dplayer/tools/traintestpane.vue
Normal file
175
src/views/jlmap3d/lesson3dplayer/tools/traintestpane.vue
Normal file
@ -0,0 +1,175 @@
|
|||||||
|
<template>
|
||||||
|
|
||||||
|
<div class="traintestpaneover" :style="{'background-image': 'url('+lessonbg+')'}">
|
||||||
|
<div class="traintesttittle"> 待检查设备:</div>
|
||||||
|
<div class="addtraintestdivs" :style="{'color':item.color}" v-for="(item,index) in trainDeviceData.deviceList" @click="selsectTrainDevice(item)">
|
||||||
|
{{item.name}}:{{item.value}}
|
||||||
|
</div>
|
||||||
|
<!-- <div class="addtraintestdiv"
|
||||||
|
:style="{'background-image': 'url('+localstatic+'/lesson3d/addbutton.png)'}"
|
||||||
|
@click="addjob(index)"></div> -->
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import Vue from 'vue';
|
||||||
|
import localStore from 'storejs';
|
||||||
|
import { JL3D_LOCAL_STATIC } from '@/api/jlmap3d/assets3d.js';
|
||||||
|
|
||||||
|
|
||||||
|
//岗位
|
||||||
|
export default {
|
||||||
|
name: 'TrainTestPane',
|
||||||
|
props:['trainDeviceData','lessonData','lessonPlayIndex'],
|
||||||
|
|
||||||
|
components: {
|
||||||
|
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
localstatic:JL3D_LOCAL_STATIC,
|
||||||
|
jobList:[],
|
||||||
|
showJobList:false,
|
||||||
|
showJob:false,
|
||||||
|
selectedJob:null,
|
||||||
|
lessonbg:JL3D_LOCAL_STATIC+"/lesson3d/lessonbg.png",
|
||||||
|
lkgwbg:JL3D_LOCAL_STATIC+"/lesson3d/lkgw.png",
|
||||||
|
jobpic:JL3D_LOCAL_STATIC+"/lesson3d/jobpic.png",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
|
||||||
|
},
|
||||||
|
watch: {
|
||||||
|
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
// this.initJobList();
|
||||||
|
},
|
||||||
|
beforeDestroy() {
|
||||||
|
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
openList(){
|
||||||
|
if(this.showJobList ==false){
|
||||||
|
this.showJobList = true;
|
||||||
|
// this.showJob = true;
|
||||||
|
}else{
|
||||||
|
this.showJobList = false;
|
||||||
|
this.selectedJob = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
initJobList(data){
|
||||||
|
this.jobList = data;
|
||||||
|
},
|
||||||
|
selectJob(item){
|
||||||
|
this.selectedJob = item;
|
||||||
|
|
||||||
|
},
|
||||||
|
addjob(index){
|
||||||
|
this.selectedJob.controlList[index].data.push({
|
||||||
|
cname:this.generateUUID(),
|
||||||
|
text:"内容",
|
||||||
|
explainRole:"角色",
|
||||||
|
nextNode:"null",
|
||||||
|
sceneId:this.lessonData.lessonData.lessonProgress[this.lessonEditIndex].id,
|
||||||
|
type:"",
|
||||||
|
});
|
||||||
|
},
|
||||||
|
selsectTrainDevice(selectTool,jobList){
|
||||||
|
|
||||||
|
},
|
||||||
|
generateUUID() {
|
||||||
|
var d = new Date().getTime();
|
||||||
|
if (window.performance && typeof window.performance.now === "function") {
|
||||||
|
d += performance.now(); //use high-precision timer if available
|
||||||
|
}
|
||||||
|
var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
|
||||||
|
var r = (d + Math.random() * 16) % 16 | 0;
|
||||||
|
d = Math.floor(d / 16);
|
||||||
|
return (c == 'x' ? r : (r & 0x3 | 0x8)).toString(16);
|
||||||
|
});
|
||||||
|
return uuid;
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<style rel="stylesheet/scss" lang="scss" scoped>
|
||||||
|
@import "src/styles/mixin.scss";
|
||||||
|
|
||||||
|
.traintestpaneover{
|
||||||
|
position: absolute;
|
||||||
|
width:300px;
|
||||||
|
height:350px;
|
||||||
|
overflow-y:auto;
|
||||||
|
overflow-x:hidden;
|
||||||
|
border:solid 2px #000;
|
||||||
|
color:#fff;
|
||||||
|
left:0;
|
||||||
|
bottom:0;
|
||||||
|
z-index:1;
|
||||||
|
}
|
||||||
|
.traintestdivtext{
|
||||||
|
// position: absolute;
|
||||||
|
bottom: 0;
|
||||||
|
font-size: 25px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.traintesttabmsg{
|
||||||
|
width:300px;
|
||||||
|
height:100px;
|
||||||
|
border:solid 2px #000;
|
||||||
|
// position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.traintesttabmsgtext{
|
||||||
|
width:200px;
|
||||||
|
height:90px;
|
||||||
|
// margin-top: 5px;
|
||||||
|
// margin-left: 2px;
|
||||||
|
border:solid 2px #000;
|
||||||
|
color:#fff;
|
||||||
|
position: absolute;
|
||||||
|
font-size: 25px;
|
||||||
|
right:10px;
|
||||||
|
top:10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.traintesttittle{
|
||||||
|
font-size: 30px;
|
||||||
|
color:#fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.addtraintestdivs{
|
||||||
|
|
||||||
|
width:98%;
|
||||||
|
margin: 1%;
|
||||||
|
border:solid 2px #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.statraintestdivs{
|
||||||
|
|
||||||
|
width:50%;
|
||||||
|
margin: 1%;
|
||||||
|
border:solid 2px #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.addtraintestdiv{
|
||||||
|
width:98%;
|
||||||
|
height:64px;
|
||||||
|
margin: 1%;
|
||||||
|
border:solid 2px #000;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</style>
|
Loading…
Reference in New Issue
Block a user