924 lines
41 KiB
JavaScript
924 lines
41 KiB
JavaScript
import defaultStyle from '../defaultStyle';
|
||
import deviceType from '../../constant/deviceType';
|
||
|
||
class SkinCode extends defaultStyle {
|
||
constructor() {
|
||
super();
|
||
this.fontFamily = '宋体';
|
||
this[deviceType.Section] = {
|
||
elemnetType:['name', 'standTrackText', 'reentryTrackText', 'transferTrackText', 'line', 'separator', 'speedLimit', 'speedLimitName'],
|
||
active: {
|
||
routeColor: true // 进路触发颜色
|
||
},
|
||
name: {
|
||
z: 10,
|
||
position: 0, // 区段名称位置 1 上面 -1 下面 0 对称
|
||
distance: 10, // 文字离区段距离
|
||
fontSize: 12, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
fontColor: '#FFFFFF', // 字体颜色
|
||
textAlign: 'center', // 水平对齐方式
|
||
textPosition: 'inside', // 文字位置
|
||
textVerticalAlign: 'middle', // 文字垂直对齐方式
|
||
approachColor: '#FFFFFF'
|
||
},
|
||
logicText: {
|
||
z: 10,
|
||
position: 0, // 区段名称位置 1 上面 -1 下面 0 对称
|
||
distance: 12, // 文字离区段距离
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
fontColor: '#FFFFFF', // 字体颜色
|
||
textAlign: 'center', // 水平对齐方式
|
||
textPosition: 'inside', // 文字位置
|
||
textVerticalAlign: 'middle' // 文字垂直对齐方式
|
||
},
|
||
standTrackText: {
|
||
z: 10,
|
||
position: 0, // 区段名称位置 1 上面 -1 下面 0 对称
|
||
distance: 24, // 文字离区段距离
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
fontColor: '#FFFFFF', // 字体颜色
|
||
textAlign: 'center', // 水平对齐方式
|
||
textPosition: 'inside', // 文字位置
|
||
textVerticalAlign: 'middle' // 文字垂直对齐方式
|
||
},
|
||
reentryTrackText: {
|
||
z: 10,
|
||
position: 0, // 区段名称位置 1 上面 -1 下面 0 对称
|
||
distance: 36, // 文字离区段距离
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
fontColor: '#FFFFFF', // 字体颜色
|
||
textAlign: 'center', // 水平对齐方式
|
||
textPosition: 'inside', // 文字位置
|
||
textVerticalAlign: 'middle' // 文字垂直对齐方式
|
||
},
|
||
transferTrackText: {
|
||
z: 10,
|
||
position: 0, // 区段名称位置 1 上面 -1 下面 0 对称
|
||
distance: 36, // 文字离区段距离
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
fontColor: '#FFFFFF', // 字体颜色
|
||
textAlign: 'center', // 水平对齐方式
|
||
textPosition: 'inside', // 文字位置
|
||
textVerticalAlign: 'middle' // 文字垂直对齐方式
|
||
},
|
||
destinationText: {
|
||
z: 10,
|
||
position: 0, // 区段名称位置 1 上面 -1 下面 0 对称
|
||
distance: 12, // 文字离区段距离
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'bold', // 字体粗细
|
||
fontColor: 'yellow', // 字体颜色
|
||
textAlign: 'center', // 水平对齐方式
|
||
textPosition: 'inside', // 文字位置
|
||
textVerticalAlign: 'middle' // 文字垂直对齐方式
|
||
},
|
||
line: {
|
||
z: 0,
|
||
width: 5, // 区段宽度
|
||
beyondWidth: 0, // 区段宽超出宽度
|
||
invadeColor: '#FFFFFF', // 区段侵入颜色
|
||
spareColor: '#618cc3', // 区段空闲颜色
|
||
communicationOccupiedColor: '#FF00FF', // 区段通信车占用颜色
|
||
unCommunicationOccupiedColor: '#DE310C', // 区段非通讯车占用颜色
|
||
routeLockColor: '#3FFD46', // 区段进路锁定颜色
|
||
faultLockColor: '#006400', // 区段故障锁定颜色
|
||
undefinedColor: '#0071C1', // 区段未定义颜色
|
||
blockColor: '#00FF00', // 区段封锁颜色
|
||
atcExcisionColor: '#A0522D', // 区段atc切除颜色
|
||
atsExcisionColor: '#A0522D', // 区段ats切除颜色
|
||
timeReleaseColor: '#3F3F3F', // 区段延时释放颜色
|
||
protectiveLockColor: '#FFFF00', // 区段保护锁闭
|
||
protectiveTimeReleaseColor: '#0071C1', // 区段保护延时解锁
|
||
logicalColor: '#FFFF00', // 逻辑区段颜色 (未用)
|
||
logicalTextColor: '#C0C0C0', // 逻辑区段名称颜色 (未用)
|
||
invalidColor: '#B18E38' // 区段ARB故障颜色
|
||
},
|
||
speedLimit: { // 限速元素
|
||
z: 2,
|
||
width: 1, // 限速线的宽度
|
||
distance: 5, // 限速线距离区段距离
|
||
lineColor: '#C0C000', // 限速线颜色 (黄色透明光)
|
||
nameShow: true // 名称显示
|
||
},
|
||
speedLimitName: {
|
||
z: 10,
|
||
leftName: true, // 左侧限速值是否展示
|
||
rightName: true, // 右侧限速值是否展示
|
||
nameBackgroundIsRect: false, // 限速值背景是否为矩形
|
||
nameBackgroundBorderWidth: 0, // 限速值背景是否边框宽度
|
||
nameBackgroundBorderColor: '#000', // 限速值背景边框颜色
|
||
limitValueDistance: -15,
|
||
kilometerFontSize: 8, // 公里标大小
|
||
kilometerColor: '#fff', // 公里标颜色
|
||
nameNumberFontSize: 11, // 限速值大小
|
||
nameNumberColor: '#C00808', // 限速值颜色
|
||
nameBackground: '#C0C000', // 限速名称背景颜色
|
||
drogueWidth: 19, // 浮标宽度
|
||
drogueHeight: 12 // 浮标高度
|
||
},
|
||
separator: {
|
||
z: 3, // 分割符层级
|
||
width: 1.5, // 物理区段分隔符宽度
|
||
logicWidth:1.5, // 逻辑区段分隔符宽度
|
||
endWidth: 1.5, // 尽头分隔符宽度
|
||
endColor: '#FFFFFF', // 尽头分隔符颜色
|
||
color: '#FFFFFF', // 区段边界符颜色
|
||
halfHeight: 5 // 区段分隔符高度的一半
|
||
},
|
||
shuttleBack: { // 折返进路 (存在此对象 显示折返箭头)
|
||
z: 10,
|
||
width: 1.5,
|
||
color: '#FFFFFF',
|
||
distance: 5 // 限速线距离区段距离
|
||
},
|
||
trainPosition:{
|
||
display: false // 列车实时位置显示
|
||
}
|
||
};
|
||
|
||
this[deviceType.Signal] = {
|
||
distance: 10, // 设备距离区段的距离
|
||
post: {
|
||
standardLength: 6, // 高柱长度
|
||
standardHeight: 6, // 灯柱高度
|
||
standardColor: '#FFFFFF', // 灯柱颜色
|
||
standardVerticalWidth: 2, // 灯柱竖杆宽度
|
||
standardRailWidth: 2 // 灯柱横杆宽度
|
||
},
|
||
text: {
|
||
show: true, // 信号机名称显示
|
||
distance: 3, // 文字和灯杆的距离
|
||
isAlignCenter: false, // 信号字体对其方式
|
||
fontSize: 11, // 信号机名称字体大小
|
||
fontWeight: 'bold', // 信号机名称字体粗细
|
||
defaultColor: '#FFFFFF', // 信号灯字体默认色
|
||
blockColor: '#EF0C08', // 信号灯字体锁定颜色
|
||
checkColor: '#00FF00' // 信号保护区段检查颜色
|
||
},
|
||
lamp: {
|
||
bgShow: false, // 是否被选中
|
||
guidName: 'singleRY', // 成都三号线引导类型
|
||
borderVariable: true, // 信号灯边框可变
|
||
stopWidth: 2, // 禁止线宽度
|
||
borderWidth: 2, // 信号灯边框线宽度
|
||
borderColor: '#3149C3', // 信号灯边框线颜色
|
||
radiusR: 6, // 信号灯半径
|
||
grayColor: '#7F7F7F', // 信号灯灰色
|
||
redColor: '#FF0000', // 信号灯红色
|
||
greenColor: '#00FF00', // 信号灯绿色
|
||
yellowColor: '#FFFF00', // 信号灯黄色
|
||
whiteColor: '#FFFFFF', // 信号灯白色
|
||
blueColor: '#0070C0', // 信号灯蓝色
|
||
faultType: 'light' // 信号机故障类型 (light闪)
|
||
},
|
||
route: {
|
||
direction: true, // 自动通过方向
|
||
offset: { x: 4, y: 0}, // 自动通过偏移量
|
||
routeColor: '#00FF00', // 自动进路
|
||
radiusR: 6
|
||
},
|
||
auto: {
|
||
signalFrontTriangle: true, // 信号灯前三角展示
|
||
fleetModeTriangle: true, // 自动进路显示三角形非箭头
|
||
direction: false, // 自动通过方向
|
||
offset: { x: -4, y: 0}, // 自动通过偏移量
|
||
width: 5, // 自动宽度
|
||
manualControl: '#FFFF00', // 人工控制
|
||
autoRoute: '#00FF00', // 自动进路
|
||
autoTrigger: '#FFFF00', // 自动触发
|
||
outConflict: '#C00808' // 出车冲突
|
||
},
|
||
delay: {
|
||
direction: false, // 延时解锁方向
|
||
offset: { x: -5, y: 0}, // 延时解锁偏移量
|
||
fontSize: 11, // 延迟解锁字体大小
|
||
fontColor: '#C00808', // 延迟解锁颜色
|
||
fontWeight: 'bold' // 字体粗细
|
||
|
||
},
|
||
button: {
|
||
distance: 5, // 信号灯按钮距离区段的距离
|
||
borderDashColor: '#FFFFFF', // 信号灯按钮边线
|
||
buttonColor: 'darkgreen', // 信号灯按钮颜色
|
||
buttonLightenColor: '#E4EF50' // 信号灯按钮闪烁颜色
|
||
},
|
||
lowButton:{
|
||
display: false // 现地 信号机按钮
|
||
},
|
||
sigBack: {
|
||
fillColor:'rgba(0,0,0,0)', // 信号背景颜色
|
||
strokecolor:'#F00', // 信号描边颜色
|
||
lineWidth: 1, // 信号背景描边宽度
|
||
distanceX: 2, // 信号背景x偏移距离
|
||
distanceY: 1 // 信号背景Y偏移距离
|
||
}
|
||
};
|
||
|
||
// 供电线路
|
||
this[deviceType.Power] = {
|
||
noElectricStrokeColor:'#808080', // 无电颜色
|
||
defaultStrokeColor: '#F00', // 线条颜色
|
||
extendLength: 10 // 延伸长度
|
||
};
|
||
|
||
// 延续保护计时
|
||
this[deviceType.OverAp] = {
|
||
show: false
|
||
};
|
||
|
||
// 屏蔽门
|
||
this[deviceType.Psd] = {
|
||
// 成都三号线屏蔽门
|
||
elemnetType:['safetyDoorNormal'],
|
||
safetyDoorNormal: { // 屏蔽门
|
||
z:0,
|
||
height: 3, // 站台屏蔽门高度
|
||
distance: 8, // 站台和屏蔽门之间的距离
|
||
defaultColor: '#00FF00', // 屏蔽门默认颜色
|
||
splitDoorColor: '#C00808' // 屏蔽门切除颜色
|
||
}
|
||
};
|
||
|
||
this[deviceType.StationStand] = {
|
||
// 成都三号线站台元素 站台 站台紧急关闭 扣车元素 停站时间 运行等级 跳停
|
||
elemnetType:['solidStand', 'emergentRhombus', 'detainNormal', 'stopTime', 'level', 'jumpCircle'],
|
||
// 站台
|
||
solidStand:{
|
||
// 层级
|
||
z:0,
|
||
spareColor: '#ffffff', // 站台空闲颜色
|
||
jumpStopColor: '#808080', // 站台跳停颜色
|
||
designatedJumpStopColor: '#808080', // 站台指定列车跳停颜色
|
||
headFontSize: 10, // 站台首端字体大小
|
||
stopColor: '#FFF000' // 站台列车停站颜色
|
||
},
|
||
// 站台紧急关闭
|
||
emergentRhombus:{
|
||
z:1,
|
||
flicker: true, // 闪烁
|
||
mergentR: 5, // 站台紧急关闭半径
|
||
mergentN: 4, // 站台紧急关闭边数
|
||
insideOffset: { x: 0, y: -30 }, // 内站台紧急关闭偏移量
|
||
outsideOffset: { x: 0, y: 30}, // 外站台紧急关闭偏移量
|
||
closeColor: '#F61107' // 站台紧急关闭颜色
|
||
},
|
||
// 扣车元素 普通扣车
|
||
detainNormal:{
|
||
z:0,
|
||
position: -1, // 扣车标识在站台上显示方向
|
||
text: '扣', // 扣车显示内容
|
||
insideOffset: {x: -8, y: 20}, // 内站台扣车偏移量
|
||
outsideOffset: {x: -8, y: 20}, // 外站台扣车偏移量
|
||
centerTrainColor: '#C0C0C0', // 中心扣车颜色
|
||
andCenterTrainColor: '#C0C0C0', // 车站+中心扣车颜色
|
||
detainTrainTextColor: '#E4EF50', // 车站扣除文字颜色
|
||
fontSize: 10, // 字体大小
|
||
fontWeight: 'normal'
|
||
},
|
||
// 停站时间
|
||
stopTime:{
|
||
z:1,
|
||
textFontSize: 10, // 停站时间字体大小
|
||
textColor: '#FFFFFF', // 停站时间字体颜色
|
||
position: -1, // 停站时间方向
|
||
offset: {x: -8, y: 10} // 停站时间偏移量
|
||
},
|
||
// 运行等级
|
||
level:{
|
||
z:1,
|
||
textFontSize: 10, // 运行等级字体大小
|
||
position: 1, // 运行等级方向
|
||
offset: {x: -8, y: 15}, // 运行等级偏移量
|
||
textColor: '#FFF000' // 停站等级字体颜色
|
||
},
|
||
// 跳停
|
||
jumpCircle: {
|
||
z:1,
|
||
position: 1, // 停跳方向
|
||
text: '跳', // 停跳显示内容
|
||
offset: {x: -8, y: 10},
|
||
textColor: '#00ffcc', // 停跳文字颜色
|
||
arcColor: '#00ffcc', // 停跳圆圈颜色
|
||
fillColor: 'rgba(0,0,0,0)', // 透明填充颜色
|
||
r: 8, // 圆半径大小
|
||
fontWeight: 'normal', // 文字居中
|
||
fontSize: 11 // 文字大小
|
||
},
|
||
|
||
common: { // 通用属性
|
||
textFontSize: 10, // 站台默认字体大小
|
||
functionButtonShow: '03' // 功能灯按钮显示条件(prdType)
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
lampColor: '#5A5D5A' // 功能按钮颜色
|
||
},
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
}
|
||
// reentry: {}, // 站台折返策略
|
||
// trainStop: {}, // 停车标志
|
||
// trainDepart: {}, // 停车计时
|
||
};
|
||
|
||
this[deviceType.StationCounter] = {
|
||
text: {
|
||
distance: 2, // 计数器名称和文字的距离
|
||
fontColor: '#FFFFFF', // 计数器字体颜色
|
||
borderColor: '#E4EF50' // 计数器边框颜色
|
||
}
|
||
};
|
||
|
||
this[deviceType.StationDelayUnlock] = {
|
||
text: {
|
||
distance: 3, // 延迟解锁和设备之间的距离
|
||
fontColor: '#FFFFFF', // 延时解锁字体颜色
|
||
borderColor: '#FFFFFF' // 延迟解锁边框颜色
|
||
}
|
||
};
|
||
|
||
this[deviceType.StationTurnBack] = { // 站后折返
|
||
displayCondition: '01', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示)
|
||
lamp: {
|
||
fill: '#f1f1f1', // 填充色
|
||
radiusR: 7 // 控制灯大小
|
||
},
|
||
text: {
|
||
titleTextShow: false,
|
||
fontWeight: 580,
|
||
fontSize: 10,
|
||
distance: 10
|
||
},
|
||
rect: {
|
||
fill: 'rgba(0,0,0,0)',
|
||
stroke: '#fff',
|
||
lineWidth: 0,
|
||
padding: 6
|
||
}
|
||
};
|
||
|
||
this[deviceType.Station] = {
|
||
// 成都三号线车站元素 车站名称
|
||
elemnetType:['stationText'],
|
||
stationText:{
|
||
z:0,
|
||
fontWeight:'normal', // 字体粗细
|
||
textPadding:[0, 0], // 字体边距
|
||
borderColor:'', // 字体边框颜色
|
||
textBorderWidth:0 // 字体边框宽度
|
||
},
|
||
|
||
kmPostShow: false, // 公里标显示
|
||
kilometerPosition: 'up', // 公里标朝向
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#FFFF00', // 控制灯颜色
|
||
guideColor: '#5A5D5A' // 引导总锁灯颜色
|
||
},
|
||
turnBack: { // 按图折返
|
||
lamp: 1, // 灯数量
|
||
lampSpace: 60 // 灯间距
|
||
},
|
||
StationControl:{
|
||
text: {
|
||
distance: 2, // 灯和文字之间的距离
|
||
fontSize: 11, // 字体大小
|
||
fontFormat: 'consolas', // 字体格式
|
||
fontColor: '#ffffff', // 字体颜色
|
||
fontWeight: 'normal', // 字体粗细
|
||
textAlign: 'middle', // 字体水平对齐
|
||
textVerticalAlign: 'top' // 字体垂直对齐
|
||
},
|
||
lamp: {
|
||
count: 4, // 控制模式的个数
|
||
offset: {x: 0, y: 0}, // 偏移量
|
||
radiusR: 6, // 控制模式灯的半径
|
||
distance: 46, // 控制模式之间灯之间的距离
|
||
grayColor: '#7F7F7F', // 控制模式灰色
|
||
greenColor: '#00FF00', // 控制模式绿色
|
||
redColor: '#FF0000', // 控制模式红色
|
||
yellowColor: '#FFFF00', // 控制模式黄色
|
||
purpleColor:'#840084' // 控制模式紫色
|
||
},
|
||
emergencyControl: { // 紧急站控
|
||
show: true,
|
||
offset: { x: 0, y: 0 },
|
||
text: '紧急站控',
|
||
arrowShow: false,
|
||
grayColor: '#7F7F7F'
|
||
},
|
||
centerControl: { // 中控
|
||
show: true,
|
||
offset: { x: 0, y: 0 },
|
||
text: '中控',
|
||
buttonShow: false,
|
||
arrowShow: false,
|
||
grayColor: '#7F7F7F'
|
||
},
|
||
substationControl: { // 站控按钮
|
||
show: true,
|
||
offset: { x: 0, y: 0 },
|
||
text: '站控',
|
||
arrowShow: false,
|
||
grayColor: '#7F7F7F'
|
||
},
|
||
interconnectedControl: { // 联锁控
|
||
show: true,
|
||
offset: { x: 0, y: 0 },
|
||
text: '联锁控',
|
||
arrowShow: false,
|
||
grayColor: '#7F7F7F'
|
||
}
|
||
}
|
||
};
|
||
|
||
this[deviceType.Switch] = {
|
||
text: {
|
||
show: true, // 道岔名称显示
|
||
position: 0, // 区段名称位置 1 上面 -1 下面 0 对称
|
||
offset: {x: 5, y: -10}, // 道岔名称与区段距离
|
||
fontSize: 11, // 字体大小
|
||
fontColor: '#fff', // 道岔名称颜色
|
||
fontWeight: 'normal', // 字体粗细
|
||
borderColor: '#FE0000', // 道岔边框颜色
|
||
lossColor: '#C00808', // 道岔失去颜色
|
||
locateColor: '#00FF00', // 道岔定位颜色
|
||
inversionColor: '#FFFF00', // 道岔反位颜色
|
||
monolockLocationColor: '#00FF00', // 道岔单锁'定位'颜色 (绿色)
|
||
monolockInversionColor: '#FFFF00', // 道岔单锁'反位'颜色 (黄色)
|
||
faultFlashing: true // 故障闪烁
|
||
},
|
||
sectionAction: {
|
||
flag: false, // 道岔 关联区段显示
|
||
spareColor: '#5b5b5b' // 区段显示颜色
|
||
},
|
||
core: {
|
||
length: 6 // 道岔单边长度
|
||
},
|
||
jointImg: { // 道岔 A B C D四元素属性配置
|
||
trapezoidLength: 8 // 直角梯形元素默认长度
|
||
},
|
||
arcBlcok: { // 圆形封锁图形
|
||
show: false, // 显示
|
||
arcBorderColor: 'green', // 默认边框颜色
|
||
locationColor: 'green', // 定位封锁颜色
|
||
inversionColor: '#FFFF00' // 反位封锁颜色
|
||
},
|
||
rectLock: { // 矩形封锁框图形
|
||
rectWidth: 18, // 矩形框 宽高
|
||
rectBorderColor: '#fff', // 矩形边框颜色
|
||
monolock: true, // 单锁显示
|
||
block: true, // 封锁显示
|
||
blockColor: 'red' // 封锁颜色
|
||
}
|
||
};
|
||
|
||
this[deviceType.LcControl] = {
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#FFFF00' // 控制灯颜色
|
||
}
|
||
};
|
||
this[deviceType.PowerSupply] = {
|
||
displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示)
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#00FF00', // 控制灯颜色
|
||
offColor: '#000',
|
||
strokeColor: '#fff'
|
||
}
|
||
};
|
||
this[deviceType.Maintain] = {
|
||
displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示)
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#00FF00' // 控制灯颜色
|
||
}
|
||
};
|
||
this[deviceType.NoOneReturn] = {
|
||
displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示)
|
||
text: {
|
||
fontSize: 11,
|
||
fontWeight: 'normal',
|
||
distance: 5
|
||
},
|
||
lamp: {
|
||
radiusR: 6,
|
||
controlColor: '#FFFFFF'
|
||
}
|
||
};
|
||
this[deviceType.AtsControl] = {
|
||
displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示)
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#00FF00', // 控制灯颜色
|
||
offColor: '#FF0000'
|
||
}
|
||
};
|
||
this[deviceType.MaintenanceLamps] = {
|
||
displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示)
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#b5b3b3' // 控制灯颜色
|
||
}
|
||
};
|
||
this[deviceType.ZcCommunication] = {
|
||
displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示)
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#00FF00' // 控制灯颜色
|
||
}
|
||
};
|
||
this[deviceType.ChainControl] = {
|
||
displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示)
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#00FF00', // 控制灯颜色
|
||
offColor: '#ff0000'
|
||
}
|
||
};
|
||
this[deviceType.IntersiteControl] = {
|
||
displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示)
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#00FF00' // 控制灯颜色
|
||
}
|
||
};
|
||
this[deviceType.CenterCommunication] = {
|
||
displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示)
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#00FF00' // 控制灯颜色
|
||
}
|
||
};
|
||
this[deviceType.LeuControl] = {
|
||
displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示)
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#00FF00' // 控制灯颜色
|
||
}
|
||
};
|
||
this[deviceType.LocalControl] = {
|
||
displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示)
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#00FF00', // 控制灯颜色
|
||
offColor: '#ff0000'
|
||
}
|
||
};
|
||
this[deviceType.ZcControl] = {
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#00FF00' // 控制灯颜色
|
||
}
|
||
};
|
||
|
||
this[deviceType.LimitControl] = {
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#ECE9D8' // 控制灯颜色
|
||
}
|
||
};
|
||
|
||
this[deviceType.Line] = {
|
||
lineColor: '#FFFFFF' // 线条颜色
|
||
};
|
||
this[deviceType.Automactic] = {
|
||
// 是否显示
|
||
visible: true,
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
subtitleText: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 17 // 等于副标题距离
|
||
},
|
||
lamp: {
|
||
lineDash: null, // 灯的包围框
|
||
stroke: '#FFFFFF', // 框的颜色
|
||
fill: 'rgba(0,0,0,0)', // 填充色
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#b5b3b3', // 控制灯颜色 (灰色)
|
||
lightColor: '#FFFF00' // 控制灯亮颜色
|
||
}
|
||
};
|
||
this[deviceType.AutomaticRoute] = {
|
||
// 是否显示
|
||
displayCondition: '03', // 显示条件prdType 为01
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
fill: 'rgba(0,0,0,0)', // 填充色
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#b5b3b3', // 控制灯颜色 (灰色)
|
||
lightColor: '#FFFF00' // 控制灯亮颜色
|
||
}
|
||
};
|
||
this[deviceType.AutoTurnBack] = {
|
||
// 是否显示
|
||
visibleConditions: '03',
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
subtitleText: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 17 // 等于副标题距离
|
||
},
|
||
lamp: {
|
||
borderShow: false, // 是否显示边框
|
||
lineDash: null, // 灯的包围框
|
||
stroke: '#FFFFFF', // 框的颜色
|
||
fill: 'rgba(0,0,0,0)', // 填充色
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#b5b3b3', // 控制灯颜色 (灰色)
|
||
lightUpColor: '#ffff00' // 点亮灯颜色
|
||
},
|
||
OutFrame: {
|
||
|
||
}
|
||
};
|
||
|
||
/** 引导总锁 */
|
||
this[deviceType.GuideLock] = {
|
||
// 是否显示
|
||
displayCondition: '03', // 显示条件 (01所有模式下显示 02 行调显示 03现地显示)
|
||
text: {
|
||
fontSize: 11, // 字体大小
|
||
fontWeight: 'normal', // 字体粗细
|
||
distance: 5 // 灯跟文字距离
|
||
},
|
||
lamp: {
|
||
fill: 'rgba(0,0,0,0)', // 填充色
|
||
radiusR: 6, // 控制灯大小
|
||
controlColor: '#b5b3b3', // 控制灯颜色 (灰色)
|
||
lightUpColor: '#FF0000' // 点亮灯颜色
|
||
}
|
||
};
|
||
|
||
this[deviceType.TrainWindow] = {
|
||
lineColor: '#4DD43F', // 车次窗颜色
|
||
lineDash: null, // 车次窗虚线间隔
|
||
lineWidth: 1, // 车次窗线宽
|
||
trainWindowSmooth: 0, // 车次窗矩形圆滑程度
|
||
show: true // 车次窗是否显示
|
||
};
|
||
this[deviceType.SplitStation] = {
|
||
lineLength: 15, // 箭头线长度
|
||
lineWidth: 2, // 线宽
|
||
height: 35, // 分隔整体高度
|
||
strokeColor: '#00FF00', // 线颜色
|
||
triangleFillColor: '#00FF00', // 三角填充颜色
|
||
textFill: '#FFFFFF', // 文字颜色
|
||
verticalDistance: 10, // 箭头三角垂直高度
|
||
horizontalDistance: 7// 箭头三角水平高度
|
||
};
|
||
this[deviceType.Train] = {
|
||
trainBody: {
|
||
fontFamily: 'consolas',
|
||
trainBodyLineWidth: 1, // 车身line宽
|
||
changeTrainWidth: false, // 是否根据车身上车组号、服务号、车次号、目的地码显示情况改变列车长度
|
||
specialTrainType: [
|
||
{
|
||
type: '03',
|
||
serviceNumber: '---',
|
||
nameFormat: 'groupNumber:serviceNumber'
|
||
},
|
||
{
|
||
type: '03',
|
||
nameFormat: 'serviceNumber:trainNumber'
|
||
}
|
||
], // 特殊列车类型需设置显示格式
|
||
lrPadding: 4, // 两边间隔
|
||
upPadding: 4, // 上边距离
|
||
trainBodyFillColor: '#000099', // 列车车身填充颜色
|
||
trainNameFormat: 'serviceNumber:targetCode'// 列车显示格式
|
||
},
|
||
directionArrow: {
|
||
},
|
||
soonerOrLater: {
|
||
level: 3,
|
||
trainBody: true,
|
||
earlyColor: '#00FF00',
|
||
lateColor: '#800000',
|
||
normalColor: '#FFF'
|
||
},
|
||
hsda: {
|
||
lrPaddingHSDA: 3, // HSDA两边间隔
|
||
upPaddingHSDA: 4, // HSDA上边距离
|
||
trainHSDATextFontSize: 9, // 列车HDSA字号
|
||
textHContent: '扣', // textH文本
|
||
textSContent: '跳', // textS文本
|
||
textDContent: '门', // textD文本
|
||
textAContent: '警' // textA文本
|
||
},
|
||
trainNumber: {
|
||
targetCodePrefix: '000', // 目的地码前缀
|
||
defaultTargetCode: 'DDD', // 默认目的地码
|
||
trainTargetTextAlign: 'left', // 目的地码文字显示位置
|
||
trainNumberOffset: { x: 24, y: 4}// 目的地码偏移量
|
||
},
|
||
trainServer: {
|
||
serviceNumberPrefix: '000', // 服务号(表号)前缀
|
||
defaultServiceNumber: 'TTT', // 默认服务号(表号)
|
||
defaultServerNoColor: '#FFFFFF', // 默认服务号状态显示颜色
|
||
trainServerOffset: { x: 4, y: 4} // 列车服务号偏移
|
||
},
|
||
trainTarget: {
|
||
tripNumberPrefix: '000', // 车次号前缀
|
||
defaultTripNumber: 'DDD', // 默认车次号2
|
||
trainTargetOffset: { x: 36, y: 4}, // 列车车次号偏移
|
||
trainTargetTextAlign: 'right' // 车次号文字显示位置
|
||
},
|
||
trainTargetNumber: {
|
||
groupNumberPrefix: '000', // 车组号前缀
|
||
defaultGroupNumber: 'EEE', // 默认车组号
|
||
trainTargetNumberOffset: {x: -4, y: 4}// 车组号偏移量
|
||
},
|
||
trainHead: {
|
||
trainConntWidth: 3, // 列车竖杠的宽度
|
||
trainHeadFillColor: '#000000', // 列车车头矩形填充颜色
|
||
trainHeadRectHeight: 20, // 列车车头矩形高度
|
||
directionStopType:'normal', // special 西安二号线 停车 列车方向图标不消失 normal 正常
|
||
trainHeadHeight: 'trainBox', // 列车车头高度取决于trainBox高度
|
||
trainHeadArrowWidth: 6, // 列车车头三角宽度
|
||
trainHeadArrowOffsetX: 5 // 列车车头三角偏移
|
||
},
|
||
common: {
|
||
trainHeight: 20, // 列车高度
|
||
trainHeadDistance: 4, // 列车和车头之间的间距
|
||
trainWidth: 48, // 列车长度
|
||
trainTextFontSize: 12, // 列车字号
|
||
fontFamily: 'consolas', // 默认字体 族类
|
||
haveTextHSDA: true, // 是否需创建textHSDA对象
|
||
haveArrowText: true, // 是否需创建arrowText对象
|
||
textOffset: 4, // 字体偏移(用以控制字体据车头的距离)
|
||
trainWidthMoreText: 8, // 计算列车长度时--列车长比text多出尺寸
|
||
trainTip:true // 鼠标悬停列车状态信息框是否显示
|
||
},
|
||
trainStatusStyle: {
|
||
trainTypeStatus: [
|
||
{type: '03', serviceNumberColor: '#FFF000', groupNumberColor: '#FFF000'},
|
||
{type: '02', trainNumberColor: '#FFF000', groupNumberColor: '#FFF000'}
|
||
], // 列车类型对应的识别号样式
|
||
defaultDestinationColor: '#FFFFFF', // 默认目的地状态显示颜色
|
||
destinationStatusSetText: 'trainWindowBorder', // 目的地状态设置的对应哪个颜色
|
||
destinationStatus: [
|
||
{status: '01', showColor: '#FFFFFF'},
|
||
{status: '02', showColor: '#00FF00'},
|
||
{status: '03', showColor: '#A0522D'}
|
||
], // 目的地状态 01准点 02早点 03晚点 04头码车
|
||
serverNoType: [
|
||
{type: '01', showColor: '#FFFFFF'},
|
||
{type: '02', showColor: '#FFF000'}
|
||
], // 服务号状态类型 01显示服务号 计划车 02显示车组号: 头码车与人工车
|
||
directionType: [
|
||
{
|
||
type: 1,
|
||
lineLShow: false,
|
||
lineRShow: true,
|
||
arrowLShow: false,
|
||
arrowRShow: true
|
||
},
|
||
{
|
||
type: 0,
|
||
lineLShow: true,
|
||
lineRShow: false,
|
||
arrowLShow: true,
|
||
arrowRShow: false
|
||
}
|
||
], // 列车运行方向状态类型对应车头显示状态 1从左往右 0从右往左
|
||
directionStopType: [
|
||
{
|
||
type: 1,
|
||
lineLShow: false,
|
||
lineRShow: true
|
||
},
|
||
{
|
||
type: 0,
|
||
lineLShow: true,
|
||
lineRShow: false
|
||
}
|
||
], // 列车停止方向类型对应车头显示状态 1从左往右 0从右往左
|
||
driveModeStatus: [
|
||
{
|
||
status: 'AM',
|
||
trainLColor: '#FF8000',
|
||
trainRColor: '#FF8000'
|
||
},
|
||
{
|
||
status: 'CM',
|
||
trainLColor: '#FFFF00',
|
||
trainRColor: '#FFFF00'
|
||
},
|
||
{
|
||
status: 'RM',
|
||
trainLColor: '#C2C2C2',
|
||
trainRColor: '#C2C2C2'
|
||
},
|
||
{
|
||
status: 'NRM',
|
||
trainLColor: '#FF0000',
|
||
trainRColor: '#FF0000'
|
||
}
|
||
], // 列车运行模式对应车头颜色 ATO自动驾驶模式AM ATP监控下的人工驾驶模式CM 限制人工驾驶模式RM 非限制人工驾驶模式NRM
|
||
communicationStatus: [
|
||
{status: 'CBTC', trainColor: '#000099'},
|
||
{status: 'ITC', trainColor: '#747474'},
|
||
{status: 'IL', trainColor: '#747474'}
|
||
] // 设置通信状态 cbtc级别CBTC 点式通信ITC 联锁级IL
|
||
}
|
||
};
|
||
this[deviceType.FloodGate] = {};
|
||
this[deviceType.DirectionRod] = {};
|
||
this[deviceType.IndicatorLight] = {};
|
||
}
|
||
}
|
||
|
||
export default new SkinCode();
|