# coding:utf-8
#JSRUN引擎2.0,支持多达30种语言在线运行,全仿真在线交互输入输出。
str = '''
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.ComponentModel;
using Tpm3dPrinterMainCtrl.Core.DTL;
using Tpm3dPrinterMainCtrl.Core.Utils;
namespace Tpm3dPrinterMainCtrl.EliteCtrlSysView.ViewModel
{
public class LaserParameterDefineTek1PanelModel : INotifyPropertyChanged
{
private TpmJobLaserParamDTO selectedTpmJobFeelTek1LaserParam;
private IList<TpmJobLaserParamDTO> tpmJobFeelTek1LaserParams;
public TpmJobLaserParamDTO SelectedTpmJobFeelTek1LaserParam
{
get { return selectedTpmJobFeelTek1LaserParam; }
}
private bool isLeftLaserSameParameter;
public bool IsLeftLaserSameParameter
{
get { return this.isLeftLaserSameParameter; }
set
{
this.isLeftLaserSameParameter = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("IsLeftLaserSameParameter"));
}
}
}
public IList<TpmJobLaserParamDTO> TpmJobFeelTek1LaserParams
{
get { return this.tpmJobFeelTek1LaserParams; }
set
{
this.tpmJobFeelTek1LaserParams = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("TpmJobFeelTek1LaserParams"));
}
}
}
public void initByDbData(TpmJobLaserParamDTO selectedTpmJobFeelTek1LaserParam, IList<TpmJobLaserParamDTO> tpmJobFeelTek1LaserParams)
{
this.selectedTpmJobFeelTek1LaserParam = selectedTpmJobFeelTek1LaserParam;
this.tpmJobFeelTek1LaserParams = tpmJobFeelTek1LaserParams;
for (var i = 0; i < this.tpmJobFeelTek1LaserParams.Count; i++)
{
var item = this.tpmJobFeelTek1LaserParams[i];
if (item.ScanMode == 0)
{
item.ScanModeName = I18nUtil.GetConstString("边框线-填充线");
}
if (item.ScanMode == 1)
{
item.ScanModeName = I18nUtil.GetConstString("边框线-填充线-边框线");
}
if (item.ScanMode == 2)
{
item.ScanModeName = I18nUtil.GetConstString("填充线");
}
}
}
public int ScanMode
{
get { return selectedTpmJobFeelTek1LaserParam.ScanMode; }
set
{
selectedTpmJobFeelTek1LaserParam.ScanMode = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ScanMode"));
}
}
}
public string LaserParamName
{
get { return selectedTpmJobFeelTek1LaserParam.LaserParamName; }
set
{
selectedTpmJobFeelTek1LaserParam.LaserParamName = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("LaserParamName"));
}
}
}
#region UpSkin 4个参数
public float ChainPowerUpSkinBorder
{
get { return selectedTpmJobFeelTek1LaserParam.ChainPowerUpSkinBorder; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainPowerUpSkinBorder = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainPowerUpSkinBorder"));
}
}
}
public int ChainSpeedUpSkinBorder
{
get { return selectedTpmJobFeelTek1LaserParam.ChainSpeedUpSkinBorder; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainSpeedUpSkinBorder = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainSpeedUpSkinBorder"));
}
}
}
public float ChainPowerUpSkinHatch
{
get { return selectedTpmJobFeelTek1LaserParam.ChainPowerUpSkinHatch; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainPowerUpSkinHatch = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainPowerUpSkinHatch"));
}
}
}
public int ChainSpeedUpSkinHatch
{
get { return selectedTpmJobFeelTek1LaserParam.ChainSpeedUpSkinHatch; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainSpeedUpSkinHatch = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainSpeedUpSkinHatch"));
}
}
}
#endregion
#region DownSkin 4个参数
public float ChainPowerDownSkinBorder
{
get { return selectedTpmJobFeelTek1LaserParam.ChainPowerDownSkinBorder; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainPowerDownSkinBorder = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainPowerDownSkinBorder"));
}
}
}
public int ChainSpeedDownSkinBorder
{
get { return selectedTpmJobFeelTek1LaserParam.ChainSpeedDownSkinBorder; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainSpeedDownSkinBorder = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainSpeedDownSkinBorder"));
}
}
}
public float ChainPowerDownSkinHatch
{
get { return selectedTpmJobFeelTek1LaserParam.ChainPowerDownSkinHatch; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainPowerDownSkinHatch = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainPowerDownSkinHatch"));
}
}
}
public int ChainSpeedDownSkinHatch
{
get { return selectedTpmJobFeelTek1LaserParam.ChainSpeedDownSkinHatch; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainSpeedDownSkinHatch = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainSpeedDownSkinHatch"));
}
}
}
#endregion
#region InSkin 4个参数
public float ChainPowerInSkinBorder
{
get { return selectedTpmJobFeelTek1LaserParam.ChainPowerInSkinBorder; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainPowerInSkinBorder = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainPowerInSkinBorder"));
}
}
}
public int ChainSpeedInSkinBorder
{
get { return selectedTpmJobFeelTek1LaserParam.ChainSpeedInSkinBorder; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainSpeedInSkinBorder = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainSpeedInSkinBorder"));
}
}
}
public float ChainPowerInSkinHatch
{
get { return selectedTpmJobFeelTek1LaserParam.ChainPowerInSkinHatch; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainPowerInSkinHatch = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainPowerInSkinHatch"));
}
}
}
public int ChainSpeedInSkinHatch
{
get { return selectedTpmJobFeelTek1LaserParam.ChainSpeedInSkinHatch; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainSpeedInSkinHatch = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainSpeedInSkinHatch"));
}
}
}
#endregion
#region HoleSkin 4个参数
public float ChainPowerHoleSkinBorder
{
get { return selectedTpmJobFeelTek1LaserParam.ChainPowerHoleSkinBorder; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainPowerHoleSkinBorder = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainPowerHoleSkinBorder"));
}
}
}
public int ChainSpeedHoleSkinBorder
{
get { return selectedTpmJobFeelTek1LaserParam.ChainSpeedHoleSkinBorder; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainSpeedHoleSkinBorder = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainSpeedHoleSkinBorder"));
}
}
}
public float ChainPowerHoleSkinHatch
{
get { return selectedTpmJobFeelTek1LaserParam.ChainPowerHoleSkinHatch; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainPowerHoleSkinHatch = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainPowerHoleSkinHatch"));
}
}
}
public int ChainSpeedHoleSkinHatch
{
get { return selectedTpmJobFeelTek1LaserParam.ChainSpeedHoleSkinHatch; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainSpeedHoleSkinHatch = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainSpeedHoleSkinHatch"));
}
}
}
#endregion
#region ZConnection 4个参数
public float ChainPowerZConnectionBorder
{
get { return selectedTpmJobFeelTek1LaserParam.ChainPowerZConnectionBorder; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainPowerZConnectionBorder = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainPowerZConnectionBorder"));
}
}
}
public int ChainSpeedZConnectionBorder
{
get { return selectedTpmJobFeelTek1LaserParam.ChainSpeedZConnectionBorder; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainSpeedZConnectionBorder = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainSpeedZConnectionBorder"));
}
}
}
public float ChainPowerZConnectionHatch
{
get { return selectedTpmJobFeelTek1LaserParam.ChainPowerZConnectionHatch; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainPowerZConnectionHatch = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainPowerZConnectionHatch"));
}
}
}
public int ChainSpeedZConnectionHatch
{
get { return selectedTpmJobFeelTek1LaserParam.ChainSpeedZConnectionHatch; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainSpeedZConnectionHatch = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainSpeedZConnectionHatch"));
}
}
}
#endregion
public int PowerIncBeginLayers
{
get { return selectedTpmJobFeelTek1LaserParam.PowerIncBeginLayers; }
set
{
selectedTpmJobFeelTek1LaserParam.PowerIncBeginLayers = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("PowerIncBeginLayers"));
}
}
}
public float ChainPowerIncPercent
{
get { return selectedTpmJobFeelTek1LaserParam.ChainPowerIncPercent; }
set
{
selectedTpmJobFeelTek1LaserParam.ChainPowerIncPercent = value;
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("ChainPowerIncPercent"));
}
}
}
public event PropertyChangedEventHandler PropertyChanged;
}
}
'''
i18nStr = '''
static Dictionary<string, string[]> languageMap = new Dictionary<string, string[]> {
{
"软件尚未注册,请先注册!",
new string[1] {
"Software Not Registered, Please Register First!"
}
},
{
"设备管理",
new string[1] {
"Machine Operation"
}
},
{
"人工操作",
new string[1] {
"Manual Operation"
}
},
{
"人工操作-激光校准",
new string[1] {
"Manual Laser Calibration"
}
},
{
"作业生产历史",
new string[1] {
"Job Records"
}
},
{
"单层曝光",
new string[1] {
"Scan Single Layer"
}
},
{
"作业管理",
new string[1] {
"Job Management"
}
},
{
"作业零件管理",
new string[1] {
"File Management"
}
},
{
"预置区间",
new string[1] {
"Preset Region"
}
},
{
"校正方块设定",
new string[1] {
"Correction Square"
}
},
{
"准备打印设定",
new string[1] {
"Prepare Print Settings"
}
},
{
"核心区间",
new string[1] {
"Settings"
}
},
{
"零件图像视图",
new string[1] {
"Working Layer"
}
},
{
"属性名称",
new string[1] {
"property"
}
},
{
"属性值",
new string[1] {
"value"
}
},
{
"工作状态",
new string[1] {
"Work Status"
}
},
{
"工作台温度",
new string[1] {
"Platform Temp"
}
},
{
"成型桶温度",
new string[1] {
"Chamber Temp"
}
},
{
"工作台加热功率",
new string[1] {
"Platform Heating Power"
}
},
{
"成型桶加热功率",
new string[1] {
"Chamber Heating Power"
}
},
{
"氮气状态",
new string[1] {
"Nitrogen Status"
}
},
{
"当前作业已进行",
new string[1] {
"Current Progress"
}
},
{
"氧气浓度",
new string[1] {
"Oxygen"
}
},
{
"厚度",
new string[1] {
"Layer Thickness"
}
},
{
"螺杆、导柱已润滑保养:",
new string[1] {
"Screw and Guider Maintained:"
}
},
{
"成型桶密封条已更换:",
new string[1] {
"Chamber Sealing Strip Replaced:"
}
},
{
"油雾分离器已检查:",
new string[1] {
"Oil Mist Separator Checked:"
}
},
{
"冷水机滤芯已保养:",
new string[1] {
"Chiller Filter Maintained:"
}
},
{
"刮板导柱已润滑保养:",
new string[1] {
"Recoater Guider Maintained:"
}
},
{
"PPS滤芯请于{0:d}天内更换。",
new string[1] {
"Please Replace the PPS Air Filter within {0:d} days."
}
},
{
"错误:初始化PLC通信端口失败!",
new string[1] {
"Error: PLC connection failed!"
}
},
{
"错误:初始化步进电机控制卡失败!",
new string[1] {
"Error: Motor control card connection fail!"
}
},
{
"错误:初始化工作台温度控制器通信端口失败!",
new string[1] {
"Error: Platform temperature controller connection fail!"
}
},
{
"错误:初始化成型桶温度控制器通信端口失败!",
new string[1] {
"Error: Chamber temperature controller connection fail!"
}
},
{
"错误:初始化激光控制器失败!",
new string[1] {
"Error: Failed to initialize laser controller!"
}
},
{
"错误:外围设备控制端口初始化不正确,不能启动实际零件生产过程!",
new string[1] {
"Error: The job can not start, because of the peripheral interface is not initialized correctly."
}
},
{
"盈普激光烧结过程控制软件 V3.0",
new string[1] {
"TPM3D EliteCtrlSys V3.0"
}
},
{
"盈普激光烧结过程控制软件",
new string[1] {
"TPM3D EliteCtrlSys"
}
},
{
"版本:V3.0",
new string[1] {
"Version:3.0"
}
},
{
"版权所有©上海盈普三维打印科技有限公司",
new string[1] {
"Copyright @ Shanghai TPM 3D Printing Technology Co., Ltd."
}
},
{
"忘记密码",
new string[1] {
"Forget your password"
}
},
{
"登录",
new string[1] {
"Login"
}
},
{
"取消",
new string[1] {
"Cancel"
}
},
{
"切换",
new string[1] {
"Switch Account"
}
},
{
"登录失败",
new string[1] {
"Login Failed"
}
},
{
"是否切换用户?",
new string[1] {
"Switch user?"
}
},
{
"确认",
new string[1] {
"Confirm"
}
},
{
"导入",
new string[1] {
"Import"
}
},
{
"导出",
new string[1] {
"Export"
}
}
,
{
"材料参数",
new string[1] {
"Material Parameters"
}
},
{
"激光参数",
new string[1] {
"Laser Scanning Parameters"
}
},
{
"人工操作参数设置",
new string[1] {
"Manual Operation Parameters"
}
},
{
"激光设备参数设定",
new string[1] {
"Laser Device Parameters"
}
},
{
"机械设备参数设定",
new string[1] {
"Motion Parameters"
}
},
{
"PLC和温控参数设定",
new string[1] {
"PLC and Temperature Control Parameters"
}
},
{
"其他设定",
new string[1] {
"Other Parameters"
}
},
{
"错误信息:",
new string[1] {
"Error Msg:"
}
},
{
"设备运行监视情况",
new string[1] {
"Hardware Interface"
}
},
{
"保养信息",
new string[1] {
"Maintenance Info"
}
},
{
"成型桶",
new string[1] {
"Build Chamber"
}
},
{
"工作台",
new string[1] {
"Working Platform"
}
},
{
"桶底",
new string[1] {
"Moving Plate"
}
},
{
"层数",
new string[1] {
"Layers"
}
},
{
"温度",
new string[1] {
"Temperature"
}
},
{
"继续作业",
new string[1] {
"Continue Job"
}
},
{
"暂停",
new string[1] {
"Pause"
}
},
{
"终止作业",
new string[1] {
"End Job"
}
},
{
"创建打印作业",
new string[1] {
"Create Job"
}
},
{
"提示:",
new string[1] {
"Tips:"
}
}
,
{
" 请创建打印作业,人工操作清理设备、查看作业生产历史和单层曝光,另外可以调整设备内部的参数,例如激光参数、激光设备参数、PLC和温控参数设置等等。",
new string[1] {
" Please create a job, and clean the machine, check the job records and scan single layer, and adjust the parameters, such as laser parameters, laser scan parameters, PLC and Thermostat Parameters etc."
}
},
{
"加粉",
new string[1] {
"Dosage"
}
},
{
"加热",
new string[1] {
"Heating"
}
},
{
"铺粉架",
new string[1] {
"Recoater"
}
},
{
"加粉数量(格)",
new string[1] {
"Amount(Factors)"
}
},
{
"氮气开关",
new string[1] {
"Nitrogen Switch"
}
},
{
"开始加热",
new string[1] {
"Start Heating"
}
},
{
"停止加热",
new string[1] {
"Stop Heating"
}
},
{
"速度",
new string[1] {
"Speed"
}
},
{
"路径",
new string[1] {
"Move"
}
},
{
"位置",
new string[1] {
"Pos"
}
},
{
"激光校正",
new string[1] {
"Laser Calibration"
}
},
{
"参考位置",
new string[1] {
"Reference Position"
}
},
{
"下极限位置",
new string[1] {
"Bottom Position"
}
},
{
"上移",
new string[1] {
"Up"
}
} ,
{
"下移",
new string[1] {
"Down"
}
},
{
" 在人工操作可以手动控制刮刀,供粉桶,工作台,测试加热功能。\r\n\r\n 在设备打印过程中不能使用人工操作,如果需要使用必须暂停或终止打印。",
new string[1] {
" User can control the recoater, powder feeding bins, container platform and test the heating system on the manual operation.\r\n\r\n You can't use manual operation during the printing process. If you need to use it, you must pause or stop the printing."
}
},
{
"人工操作-激光参数",
new string[1] {
"Manual Operation - Laser Calibration"
}
},
{
"工作台坐标定位(单位: MM)",
new string[1] {
"Scanner Position (Unit: mm)"
}
},
{
"激光开关控制",
new string[1] {
"Laser Control"
}
},
{
"左激光",
new string[1] {
"Left Laser"
}
},
{
"右激光",
new string[1] {
"Right Laser"
}
},
{
"设定激光功率",
new string[1] {
"Laser Power"
}
},
{
"激光定时点射",
new string[1] {
"Shot"
}
},
{
"选择正方块",
new string[1] {
"Choose Square"
}
},
{
"打印范围",
new string[1] {
"Image Size"
}
},
{
"点帧数",
new string[1] {
"Table Size"
}
},
{
"打印校正方块",
new string[1] {
"Scan Square"
}
},
{
"激光定点",
new string[1] {
"Anchor"
}
},
{
"生产作业日志",
new string[1] {
"Job Log"
}
},
{
"作业详情",
new string[1] {
"Job Detail"
}
},
{
"作业编号",
new string[1] {
"No."
}
},
{
"作业文件路径",
new string[1] {
"Job File Path"
}
},
{
"零件数",
new string[1] {
"File Quantity"
}
},
{
"开始层",
new string[1] {
"Begin Layer"
}
},
{
"结束层",
new string[1] {
"End Layer"
}
},
{
"开始时间",
new string[1] {
"Begin Time"
}
},
{
"结束时间",
new string[1] {
"End Time"
}
},
{
"部件路径",
new string[1] {
"Part Path"
}
},
{
"激光扫描参数",
new string[1] {
"Laser Parameters"
}
},
{
" 查看过往打印的作业历史,仔细看到之前打印的零件数量,层数,激光参数和时间。点击设备运行情况监视(左侧)便能看到作业记录的温度。",
new string[1] {
" View the history of the print job, carefully see the number of parts, layers, laser parameters and time. Click on the equipment to monitor the situation (left) to see the temperature recorded in the hardware interface."
}
},
{
"删除作业数据",
new string[1] {
"Delete Job"
}
},
{
"激光参数定义(双激光)",
new string[1] {
"Laser Scanning Parameter Settings (Dual Laser)"
}
},
{
"边框线-填充线",
new string[1] {
"Border-Hatch"
}
},
{
"边框线-填充线-边框线",
new string[1] {
"Border - Hatch - Border"
}
},
{
"填充线",
new string[1] {
"Hatch"
}
},
{
"激光参数列表",
new string[1] {
"Laser Parameter List"
}
},
{
"参数名称",
new string[1] {
"Parameter Set"
}
},
{
"激光扫描模式",
new string[1] {
"Laser Scan Mode"
}
},
{
"激光补偿开始层数",
new string[1] {
"Compensation Start Layer"
}
},
{
"功率补偿",
new string[1] {
"Compensation"
}
},
{
" 您已进入激光参数的窗口,可以在这修改激光参数。",
new string[1] {
" you have entered the laser parameter settings, where you can modify laser parameters"
}
},
{
"能量百分比",
new string[1] {
"Power"
}
},
{
"扫描速度",
new string[1] {
"Speed"
}
},
{
"激光能量衰减补偿参数",
new string[1] {
"Power Compensation"
}
},
{
"%/层",
new string[1] {
"%/Layer"
}
},
{
"保存",
new string[1] {
"Save"
}
},
{
"删除",
new string[1] {
"Delete"
}
},
{
"确定",
new string[1] {
"Confirm"
}
},
{
"激光设备参数设置 (双扫描卡)",
new string[1] {
"Laser Device Parameter Settings (Dual Scanning Card)"
}
},
{
"扫描器1",
new string[1] {
"Scanning Card 1"
}
},
{
"扫描器2",
new string[1] {
"Scanning Card 2"
}
},
{
"机械设备参数",
new string[1] {
"Motion Parameter Settings"
}
},
{
"其他参数设定",
new string[1] {
"Other Parameters"
}
}
,{"人工操作参数设定",new string[1] {"Manual Operation Parameter Settings"}}
,{"铺粉架操作",new string[1] {"Recoater"}}
,{"铺粉架位置",new string[1] {"Position"}}
,{"铺粉架速度",new string[1] {"Speed"}}
,{"铺粉架路径",new string[1] {"Powder Movement"}}
,{"工作台操作",new string[1] {"Building Platform"}}
,{"工作台位置",new string[1] {"Position"}}
,{"工作台速度",new string[1] {"Speed"}}
,{"工作台路径",new string[1] {"Movement"}}
,{"加粉操作",new string[1] {"Dosage"}}
,{"加粉数量",new string[1] {"Dosage"}}
,{"格",new string[1] {"Factors"}}
,{"激光操作",new string[1] {"Laser Operation"}}
,{"激光定点X坐标",new string[1] {"X Position"}}
,{"激光定点Y坐标",new string[1] {"Y Operation"}}
,{"毫秒",new string[1] {"ms"}}
,{"导入零件",new string[1] {"Import Part"}}
,{"层",new string[1] {"Layer"}}
,{"查看",new string[1] {"View"}}
,{"扫描零件边框线",new string[1] {"Bordering"}}
,{"扫描零件填充线",new string[1] {"Scan Hatching"}}
,{"开始曝光",new string[1] {"Start Scan"}}
,{"预设区间",new string[1] {"Preset Region"}}
,{"预设区间设置",new string[1] {"Preset Region Setting"}}
,{"选择材料",new string[1] {"Material"}}
,{"创建材料",new string[1] {"Create Material"}}
,{"新增材料",new string[1] {"Add Material"}}
,{"创建",new string[1] {"Create"}}
,{"取消创建",new string[1] {"Cancel Create"}}
,{"刮板移动速度",new string[1] {"Recoater Speed"}}
,{"工作台下降速度",new string[1] {"Platform Down Speed"}}
,{"预设加热阶段",new string[1] {"Preheat Region"}}
,{"首次铺粉",new string[1] {"Initial Dosage"}}
,{"次",new string[1] {"Times"}}
,{"桶底温度",new string[1] {"Moving Plate Temperature"}}
,{"工作台预加热中间温度",new string[1] {"Platform Middle Temp"}}
,{"工作台预加热开始固定功率",new string[1] {"Power Before Middle Temp"}}
,{"预热时间",new string[1] {"Heating Up Duration"}}
,{"分钟",new string[1] {"minutes"}}
,{"自动铺粉",new string[1] {"Auto Recoat"}}
,{"铺粉间隔时间",new string[1] {"Recoater Interval"}}
,{"秒",new string[1] {"s"}}
,{"预铺粉阶段1",new string[1] {"Prerecoat Region 1"}}
,{"左加粉数量",new string[1] {"Dosage (Left)"}}
,{"右加粉数量",new string[1] {"Dosage (Right)"}}
,{"回收落粉的间隔加粉次数",new string[1] {"Recoator Empty Factor"}}
,{"刮粉前等待时间",new string[1] {"Delay Before Recoat"}}
,{"额外加粉",new string[1] {"Additional Powder"}}
,{"预铺粉阶段2",new string[1] {"Prerecoat Region 2"}}
,{"加热模式",new string[1] {"Heating Mode"}}
,{"自动",new string[1] {"Auto"}}
,{"手动",new string[1] {"Manual"}}
,{"连续加热",new string[1] {"Continuous Heating"}}
,{"工作台温度增量",new string[1] {"Temp. Increment"}}
,{"打开激光前的加热时间",new string[1] {"Heating Time Before Opening "}}
,{"扫描顺序",new string[1] {"Drawing Order"}}
,{"先边框后填充",new string[1] {"Polylines First"}}
,{"先填充后边框",new string[1] {"Hatches First"}}
,{"加粉模式",new string[1] {"Dosage Mode"}}
,{"同侧",new string[1] {"Same Side"}}
,{"异侧",new string[1] {"Opposite Side"}}
,{"双侧",new string[1] {"Both Side"}}
,{"刮刀加热固定功率",new string[1] {"Scraper Heating Fixed Power"}}
,{"核心区间默认值",new string[1] {"Core Region Default"}}
,{"左标准加粉数量",new string[1] {"Standard Dosage (Left)"}}
,{"工作台加热功率补偿上限",new string[1] {"Platform Power Upper"}}
,{"右标准加粉数量",new string[1] {"Standard Dosage (Right)"}}
,{"工作台加热功率补偿下限",new string[1] {"Platform Power Lower"}}
,{"加粉增量最少值",new string[1] {"Additional Min Factor"}}
,{"标准填充扫描长度",new string[1] {"Standard Scan Length"}}
,{"加粉增量最大值",new string[1] {"Additional Max Factor"}}
,{"最大值填充扫描长度",new string[1] {"Max Scan Length"}}
,{"结束预铺粉阶段",new string[1] {"Final recaot Region"}}
,{"自动停止加热",new string[1] {"Heating Off"}}
,{"关闭氮气",new string[1] {"Disconnect Air"}}
,{"关闭前氮气维持时间",new string[1] {"Purging Time"}}
,{"主动冷却延时时间",new string[1] {"Auto-cooling Delay Time"}}
,{" 您可以在这里设置所有的作业成型参数,例如打印前的铺粉动作,打印后的结束铺粉设置,温度,和下粉格数调整等等。",new string[1] {" You can set all the job parameters here, such as powder recoating before printing, powder recoating after printing, temperature, and powder dosage etc."}}
,{"选择参数",new string[1] {"Select Parameter"}}
,{"点阵数",new string[1] {"Table Size"}}
,{"新增参数",new string[1] {"Add Parameter"}}
,{"提示列表",new string[1] {"Prompt list"}}
,{"显示顺序",new string[1] {"Display Order"}}
,{"提示内容",new string[1] {"Content"}}
,{"选中明细项",new string[1] {"Select Details"}}
,{"顺序",new string[1] {"Order"}}
,{"内容",new string[1] {"Content"}}
,{"新增",new string[1] {"Add"}}
,{"退出新增",new string[1] {"Exit"}}
,{"创建作业-选择/新建EJW工程保存位置",new string[1] {"Create or Select Job / Save New EJW Projects Location"}}
,{"文件名",new string[1] {"Name"}}
,{"新建ejw文件",new string[1] {"New EJW File"}}
,{"跳过",new string[1] {"Skip"}}
,{"上一步",new string[1] {"Previous"}}
,{"选择文件",new string[1] {"Select File"}}
,{"零件预览",new string[1] {"Part Overview"}}
,{"未设置",new string[1] {"Undefined Parameters"}}
,{"已设置",new string[1] {"Defined Parameters"}}
,{"当前作业:",new string[1] {"Current Job:"}}
,{"未选择EJW文件",new string[1] {"No EJW File Selected"}}
,{" 您已进入工程文件窗口,请点击创建新工程,或选择历史工程。",new string[1] {" You have entered the Project File section, please click Create New Project or Select History Project."}}
,{"工程文件不存在!",new string[1] {"Project file does not exist!"}}
,{"文件夹已存在无法创建!",new string[1] {"Folder already exists and cannot be created!"}}
,{"创建作业-选择TPM零件包",new string[1] {"Create Job-Select TPM Part Files"}}
,{"已定义零件",new string[1] {"Defined Parts"}}
,{" 您已进入零件包选择窗口,请选择需要打印的零件包。\r\n\r\n 若您暂未准备好零件包,可点击【跳过】进入预加热引导步骤。",new string[1] {"You have entered the TPM Part Selection, please select the Part data to print. "}}
,{"输入的路径不存在!",new string[1] {"The path entered does not exist!"}}
,{"系统加载中请稍候...",new string[1] {"Please wait while the system loads..."}}
,{"未定义零件",new string[1] {"Undefined Parts"}}
,{"全选",new string[1] {"Select All"}}
,{"下一步",new string[1] {"Next"}}
,{"创建作业-选择激光参数",new string[1] {"Create Job - Select Laser Parameters"}}
,{" 您已进入零件打印参数选择窗口,请为勾选零件为其选择对应的激光参数。\r\n\r\n 未选择激光参数的零件将不会被打印。\r\n\r\n 已选择激光参数的零件可通过勾选对应零件复选框后,【选择激光参数】下拉菜单中【取消参数】重置,或直接选择其他参数。\r\n\r\n 小特征激光辅助功能可以改善激光路径扫描时间低于XXX ms特征。",new string[1] {" You have entered the part printing parameters section, please select the part and choose the corresponding laser parameters.\r\n\r\n Parts without laser parameters will not be printed. \r\n\r\n Parts that have selected laser parameters can be reset by ticking the check box of corresponding parts and 'Cancel Parameters' in the drop-down menu of 'Select Laser Parameters', or choose other laser parameters. \r\n\r\n The small feature laser assist function can improve the features with laser path scanning time lower than XXX ms. "}}
,{"设当前为默认值",new string[1] {"Set Default"}}
,{"修改参数",new string[1] {"Modify Parameter"}}
,{"达到目标温度后立即进入下一阶段",new string[1] {"Go to the next region as soon as reaching the temperature"}}
,{"准备打印",new string[1] {"Prepare to print"}}
,{"开始预热",new string[1] {"Start Heating Up"}}
,{"打印进度",new string[1] {"Production Progress"}}
,{"预加热",new string[1] {"Preheating"}}
,{"预铺粉1",new string[1] {"Prerecoating in First Stage"}}
,{"预铺粉2",new string[1] {"Prerecoating in Second Stage"}}
,{"打印中",new string[1] {"Printing"}}
,{"结束铺粉",new string[1] {"Final Recoat"}}
,{"作业信息",new string[1] {"Job Information"}}
,{"功能目录",new string[1] {"Features"}}
,{"替换作业",new string[1] {"Replace Job"}}
,{"添加作业",new string[1] {"Add Job"}}
,{"调整打印作业",new string[1] {"Edit Job"}}
,{"打印工况分区",new string[1] {"Core Region"}}
,{"其他设置",new string[1] {"Other Settings"}}
,{"激光设备参数设置",new string[1] {"Laser Device Parameter Settings"}}
,{"其他参数",new string[1] {"Other Parameter"}}
,{"正在打印",new string[1] {"Printing"}}
,{"删除零件",new string[1] {"Deleted Parts"}}
,{"未打印",new string[1] {"Have Not Printed"}}
,{"全部零件",new string[1] {"All"}}
,{"零件列表-全部",new string[1] {"Part List -All"}}
,{"添加作业-选择TPM零件包",new string[1] {"Add Job - Select TPM Parts"}}
,{"添加作业-选择/新建EJW工程保存位置",new string[1] {"Add Job - Create or Select Job / Save New EJW Projects Location"}}
,{"添加作业-选择激光参数",new string[1] {"Add Job - Select Laser Parameters"}}
,{"替换作业-选择TPM零件包",new string[1] {"Replace Job - Select TPM Parts"}}
,{"替换作业-选择/新建EJW工程保存位置",new string[1] {"Replace Job - Create or Select Job / Save New EJW Projects Location"}}
,{"替换作业-选择激光参数",new string[1] {"Replace Job - Select Laser Parameters"}}
,{"打开工作文件成功!请为零件选择激光参数!",new string[1] {"Files loaded successfully! Please select part laser parameters!"}}
,{"当前做件进度下不允许打开文件!!",new string[1] {"The current work progress does not allow the file to be opened!!"}}
,{"当前做件进度下不允许切换文件!!",new string[1] {"Switching files is not allowed in the current work progress!!"}}
,{"确定要切换至新的作业文件吗?",new string[1] {"Are you sure you want to switch to a new job file?"}}
,{"即将在当前层完成后进行作业切换...",new string[1] {"You are about to switch jobs after the current layer completes..."}}
,{"即将在当前层完成后进行作业切换...请稍后...",new string[1] {"You are about to switch jobs after the current layer completes... please wait"}}
,{"切换作业文件成功!",new string[1] {"Successful job file switching"}}
,{"获取身份信息失败,请尝试以管理员运行程序!",new string[1] {"Failed to obtain identity information, please try running the program as administrator!"}}
,{"提示:系统发现有意外终止的作业,是否要尝试进行恢复?",new string[1] {"Hint: The system found an unexpectedly terminated job. Do you want resume it?"}}
,{"新文件",new string[1] {"New File"}}
,{"人工操作参数",new string[1] {"Manual Operation Parameter"}}
,{"激光设备参数",new string[1] {"Laser Device Parameters"}}
,{"PLC和温控设备参数",new string[1] {"PLC and Temperature Control Parameters"}}
,{"当前作业",new string[1] {"Current Job"}}
,{"未选择Ejw文件",new string[1] {"No EJW File Selected"}}
,{"新建文件",new string[1] {"Create File"}}
,{"启用小特征激光辅助功能",new string[1] {"Enable the small feature laser assist function"}}
,{"影线类型(Hatching Type)",new string[1] {"Hatching Type"}}
,{"模拟预加热完成",new string[1] {"Simulated preheating is complete"}}
,{"模拟9种状态",new string[1] {"Simulate 9 states"}}
,{"未开启监控",new string[1] {"Monitoring not turned on"}}
,{"开启",new string[1] {"On"}}
,{"关闭",new string[1] {"Off"}}
,{"未开始",new string[1] {"Not started"}}
,{" 您已进入零件包选择窗口,请选择需要单层曝光的零件包。",new string[1] {" You have entered the TPM Part Selection, please select the Part data to print. "}}
,{" 输入需要曝光的层数,点击开始曝光来进行激光测试。",new string[1] {" Enter the number of layers to be exposed and click Start Exposure to perform the laser test."}}
,{"计算中...",new string[1] {"Calculating..."}}
,{"提示:打开零件失败![{0:d}]",new string[1] {"Hint: Failed to open part![{0:d}]"}}
,{"是否退出系统?",new string[1] {"Exits the system?"}}
,{"PLC错误:读取初始PLC输入开关状态失败!",new string[1] {"PLC Error: Failed to read the initial PLC input switch status!"}}
,{"PLC错误:读取初始PLC输出开关状态失败!",new string[1] {"PLC Error: Failed to read the initial PLC output switch status!"}}
,{"PLC错误:初始化时关闭外围设备返回失败!错误码:{0:d}",new string[1] {"PLC Error: Failed to turn off peripheral devices during initialization! Error code: {0:d}"}}
,{" 您已进入预热确认窗口,请检查确认并勾选相关复选框,点击开始预热。",new string[1] {"You have entered the preheating confirmation section. Please check and confirm and check the relevant check boxes. Click Start Preheating."}}
,{"",new string[1] {""}}
,{"说明:",new string[1] {"Explain:"}}
,{" 不同的材料需要设定不同的参数,如温度。修改参数会进入预置区间。你可以保存不同材料的温度参数,预热温度,铺粉层数等等,也可以在拉动菜单中快速选择参数。设当前为默认值会记住你的选择,下次不用再手动选择。",new string[1] {"Note Different materials need to set different parameters, such as temperature. Modifying parameters will enter the preset interval. You can save the temperature parameters of different materials, preheating temperature, number of powder layers, etc., and you can also quickly select the parameters in the menu. Setting the current value as the default will remember your choice, so you don't have to choose manually next time."}}
,{"作业1: {0:d};{1:d}层。",new string[1] {"Job 1: {0:d}; {1:d}layer."}}
,{"作业2: 没有作业",new string[1] {"Job 2: No Job"}}
,{" 预计打印完成后,剩余{0:f3} mm空间。添加零件时,零件摆放需在原有摆放的基础上进行。添加作业时,请提前做好判断添加的作业高度是否小于{0:f3} mm,否则将无法导入。",new string[1] {" It is expected that {0:f3} mm space will be left after the printing is completed. When adding parts, the parts should be placed on the basis of the original placement. Before adding a job, check whether the height of the added job is less than {0:f3} mm. Otherwise, the job cannot be imported."}}
,{"预加热阶段-刮板开始自动运动",new string[1] {"preheating recoater to start automatic movement"}}
,{"动作信息:{0:G}",new string[1] {"Action Info:{0:G}"}}
,{"预加热阶段-等待加热......",new string[1] {"preheating stage-wait for heating..."}}
,{"预加热阶段-剩余{0:d}分钟",new string[1] {"preheating stage-remaining {0:d} minutes"}}
,{"预加热阶段-剩余{0:d}小时{1:d}分钟",new string[1] {"preheating stage-remaining {0:d} hours {1:d} minutes"}}
,{"PLC及温控参数设定",new string[1] {"PLC and temperature control parameters setting"}}
,{"确认停止",new string[1] {"Confirm Stop"}}
,{"确认:作业生产过程如果被终止将无法恢复,是否要真的终止生产过程?",new string[1] {"Confirmation: If the production process is terminated, it will not be resumed. Do you really want to terminate the production process?"}}
,{"作业1: {0:d};{1:d}层;{2:d}",new string[1] {"Job 1: {0:d}; {1:d} layer; {2:d}"}}
,{"停止",new string[1] {"Stop"}}
,{"初始化PLC通信端口成功!",new string[1] {"Initialize PLC connection successfully!"}}
,{"初始化步进电机控制卡成功!",new string[1] {"Initialize the Motor control card connection successfully!"}}
,{"初始化工作台温度控制器通信端口成功!",new string[1] {"Initialize the Platform temperature controller connection successfully!"}}
,{"初始化成型桶温度控制器通信端口成功!",new string[1] {"Initialize the Chamber temperature controller connection successfully!"}}
,{"错误:初始化桶底温度控制器通信端口失败!",new string[1] {"Error: Connection of the Chamber bottom temperature controller fail!"}}
,{"初始化桶底温度控制器通信端口成功!",new string[1] {"Initialize the Chamber temperature controller connection successfully!"}}
,{"错误:初始化刮刀加热控制器通信端口失败!",new string[1] {"Error: Recoater heating connection fail!"}}
,{"初始化刮刀加热控制器通信端口成功!",new string[1] {"Initialize the Recoater heating connection fail! successfully!"}}
,{"错误:初始化氧气浓度监控器通信端口失败!",new string[1] {"Error: Oxygen concentration connection fail!"}}
,{"初始化氧气浓度监控器通信端口成功!",new string[1] {"Initialize the Oxygen concentration connection successfully!"}}
,{"初始化激光控制器成功!",new string[1] {"Initialize laser controller successfully!"}}
,{"急停开关压下; ",new string[1] {"Emergency stop switch is on"}}
,{"门锁打开; ",new string[1] {"Door open"}}
,{"氮气压力警告; ",new string[1] {"Nitrogen pressure warning"}}
,{"冷水器故障; ",new string[1] {"Chiller failure"}}
,{"温度控制器故障; ",new string[1] {"Temperature controller faulted"}}
,{"冷水器未打开; ",new string[1] {"The chiller is not turned on"}}
,{"温度超过极限; ",new string[1] {"The temperature exceeds the limit"}}
,{"氧气浓度过高; ",new string[1] {"Oxygen concentration is too high"}}
,{"刮板电机故障; ",new string[1] {"Recoater motor faulted"}}
,{"升降平台电机故障; ",new string[1] {"Lifting platform motor faulted"}}
,{"左加粉电机故障; ",new string[1] {"Left powder dosage motor faulted"}}
,{"右加粉电机故障; ",new string[1] {"Right powder dosage motor faulted"}}
,{"升降机构已经到达下限位置; ",new string[1] {"Lifting mechanism has reached the lower limit position"}}
,{"左刮刀偏高; ",new string[1] {"Left recoater is on the high side"}}
,{"右刮刀偏高; ",new string[1] {"Right recoater is on the high side"}}
,{"工作台温度过高; ",new string[1] {"Container Platform temperature is too high"}}
,{"成型桶温度过高; ",new string[1] {"Build Chamber temp is too high"}}
,{"桶底温度过高; ",new string[1] {"Build chamber bottom temp is too high"}}
,{"左激光器错误; ",new string[1] {"Left laser error"}}
,{"右激光器错误; ",new string[1] {"Right laser error"}}
,{"错误:单层超时,终止作业操作!tSingleLayerProcessSecondsMax={0:d}",new string[1] {"Error: Single timeout, terminate job operation! TSingleLayerProcessSecondsMax= {0:d}"}}
,{"提示:请打开并保存作业!",new string[1] {"Tip: Please open and save the job!"}}
,{"注册码授权的时间尚未到达!",new string[1] {"The registration code authorization time has not yet arrived!"}}
,{"注册码已过期!",new string[1] {"Registration code has expired!"}}
,{"启动作业线程失败!",new string[1] {"Failed to start the job thread!"}}
,{"错误:作业正在进行中,不允许启动吹气线程!",new string[1] {"Error: The job is in progress, and the blowing thread is not allowed to start!"}}
,{"错误:预热正在进行中,不允许启动吹气线程!",new string[1] {"Error: Preheat is in progress, blowing thread is not allowed to start!"}}
,{"错误:单层正在进行中,不允许启动吹气线程!",new string[1] {"Error: Single layer is in progress, blowing thread is not allowed to start!"}}
,{"通用测试线程正在运行中......",new string[1] {"Universal Test Thread is running......"}}
,{"提示:作业已修改,请先保存作业信息!",new string[1] {"Tip: The job has been modified, please save the job information first!"}}
,{"错误:作业零件数为零,不能启动实际生产零件过程!",new string[1] {"Error: The number of working parts is zero, so the actual production process of parts cannot be started!"}}
,{"错误:作业总高度超出设备的加工高度范围({0:f3})!",new string[1] {"Error: The total height of the job is out of the machining height range of the equipment ({0:f3})!"}}
,{"提示:请在作业区间页面选择材料的类型",new string[1] {"hint: Please select the type of material on the job interval page"}}
,{"提示:预置区间-预加热阶段-工作台预加热开始固定功率的值({0:f1})必须小于PLC与温控设备参数设定-BUILD THERMO-BalanceHeatPowerUpper的值({1:f1})!",new string[1] {"hint: preset interval-preheating stage-table preheating start fixed power value ({0:f1}) must be less than PLC and temperature control equipment parameter setting-BUILD THERMO-BalanceHeatPowerUpper value ({1:f1})!"}}
,{"提示:获取人工操作参数失败!",new string[1] {"Tip: Failed to get manual operation parameters!"}}
,{"零件[",new string[1] {"Part ["}}
,{"]没有设置对应的激光扫描参数,请检查!",new string[1] {"] has no corresponding laser scanning parameters, please check!"}}
,{"零件对应的激光参数[",new string[1] {"The laser parameter ["}}
,{"]不存在,请检查!",new string[1] {"] corresponding to parts does not exist, please check!"}}
,{"等待氮气加压...",new string[1] {"wait for nitrogen to be pressurized..."}}
,{"等待工作台加热...",new string[1] {"wait for table to be heated..."}}
,{"等待成型桶加热...",new string[1] {"wait for build chamber to be heated..."}}
,{"等待桶底加热...",new string[1] {"wait for build chamber bottom to be heated..."}}
,{"预加热阶段 - 完成",new string[1] {"preheating stage-completion"}}
,{"当前的氧气浓度过高,故作业无法进入预铺粉阶段,请先排除故障!",new string[1] {"the current oxygen concentration is too high, Therefore, the operation cannot enter the pre-powder laying stage, please troubleshoot first!"}}
,{"当前的作业零件数为零,作业已暂停,请先加件!",new string[1] {"The current number of parts in the job is zero, and the job has been paused. Please add parts first!"}}
,{"预热阶段-首次铺粉({0:d}/{1:d})-开始加粉",new string[1] {"preheating stage-first powder spreading ({0:d}/{1:d})-start powder adding"}}
,{"预热阶段-首次铺粉({0:d}/{1:d})-开始铺粉",new string[1] {"preheating stage-first powder spreading ({0:d}/{1:d})-start powder spreading"}}
,{"开始铺粉......",new string[1] {"start powder spreading......"}}
,{"预铺粉阶段1-刮板移动到参考位置",new string[1] {"pre-powder spreading stage 1-recoater moving to reference position"}}
,{"[预铺粉阶段1]:开始(第{0:d}/{1:d}层)处理",new string[1] {"[pre-powder spreading stage 1]: Start (layer {0:d}/{1:d})"}}
,{"预铺粉阶段1-开始(第{0:d}/{1:d}层)处理",new string[1] {"Prepare Stage 1-Start (layer {0:d}/{1: d})"}}
,{"预铺粉1 ({0:d}/{1:d}层)",new string[1] {"Prepare 1 (layer {0:d}/{1:d})"}}
,{"{0:d}分钟",new string[1] {"{0:d} min"}}
,{"{0:d}小时{1:d}分钟",new string[1] {"{0:d} h {1:d} min"}}
,{"估算中...",new string[1] {"Estimated...."}}
,{"预铺粉阶段1-开始加粉......",new string[1] {"Prepare Stage 1-Start Powder Addition......"}}
,{"预铺粉阶段1-工作台下降......",new string[1] {"Prepare Stage 1-Table Drop......"}}
,{"[预铺粉阶段2]:开始(第{0:d}/{1:d}层)处理...",new string[1] {"[Prepare Stage 2]: Start ({0:d}/{1:d}) treatment..."}}
,{"预铺粉阶段2-开始(第{0:d}/{1:d}层)处理...",new string[1] {"Prepare stage 2-Start ({0:d}/{1:d}) treatment..."}}
,{"预铺粉2 ({0:d}/{1:d}层)",new string[1] {"Prepare 2 ({0:d}/{1:d})"}}
,{"预铺粉阶段2-开始加粉......",new string[1] {"Prepare stage 2-Start adding powder......"}}
,{"预铺粉阶段2-等待加热......",new string[1] {"Prepare stage 2-Wait for heating......"}}
,{"预铺粉阶段2-工作台下降......",new string[1] {"Prepare stage 2-Table descending......"}}
,{"工作区 {0:d}",new string[1] {"Workspace {0:d}"}}
,{"工作区{0:d}-开始(第{1:d}/{2:d}层)处理...",new string[1] {"Workspace {0:d}-Start processing (layer {1:d}/{2:d})..."}}
,{"工作区{0:d} (第{1:d}/{2:d}层)",new string[1] {"workspace {0:d} (layer {1:d}/{2:d})"}}
,{"工作区{0:d}-开始加粉......",new string[1] {"workspace {0:d}-Start powdering..."}}
,{"工作区{0:d}-等待加热......",new string[1] {"workspace {0:d}-Wait for heating..."}}
,{"工作区{0:d}-扫描边框线......",new string[1] {"workspace {0:d}-Scan border lines..."}}
,{"工作区{0:d}-扫描块......",new string[1] {"workspace {0:d}-Scan blocks..."}}
,{"工作区{0:d}-扫描填充线......",new string[1] {"workspace {0:d}-Scan fill lines..."}}
,{"工作区{0:d}-再次扫描边框线......",new string[1] {"workspace {0:d}-Scan border - hatch again......"}}
,{"工作区{0:d}-工作台下降......",new string[1] {"workspace {0:d}-platform descend......"}}
,{"结束铺粉阶段-关闭激光......",new string[1] {"end powder spreading phase-closeLaser......"}}
,{"结束铺粉阶段-开始(第{0:d}/{1:d}层)处理...",new string[1] {"end powder spreading stage-start ({0:d}/{1:d} layer) processing..."}}
,{"结束铺粉 ({0:d}/{1:d}层)",new string[1] {"end powder spreading ({0:d}/{1:d} layer)"}}
,{"结束铺粉阶段-开始加粉......",new string[1] {"end powder spreading stage-start powder adding..."}}
,{"结束铺粉阶段-等待加热......",new string[1] {"end powder spreading stage-wait for heating..."}}
,{"结束铺粉阶段-工作台下降......",new string[1] {"end powder spreading stage-table descending..."}}
,{"等待吹气线程停止...",new string[1] {"wait for blowing thread to stop..."}}
,{"等待吹气线程停止...超时!!!",new string[1] {"wait for blowing thread to stop... timeout! ! !"}}
,{"实际生产零件正常完成!",new string[1] {"Actual production parts are completed normally!"}}
,{"启动预热精灵线程失败!",new string[1] {"Failed to start the warm-up wizard thread!"}}
,{"作业未处于运行或暂停状态",new string[1] {"Job is not running or paused"}}
,{"确定需要{0:G}作业吗?",new string[1] {"Are you sure you want to {0:G} the job?"}}
,{"作业线程成功{0:G}!",new string[1] {"Job thread {0:G} successfully!"}}
,{"单层 {0:d} - 扫描填充线......",new string[1] {"single layer {0:d}-scan hatch......"}}
,{"单层 [{0:d}] - 扫描块......",new string[1] {"single layer [{0:d}]-scan square......"}}
,{"单层 [{0:d}] - 扫描边框线......",new string[1] {"single layer [{0:d}]-scan border - hatch......"}}
,{"单层 {0:d}-扫描填充线......",new string[1] {"single layer {0:d}-scan hatch......"}}
,{"单层 {0:d}-扫描边框线......",new string[1] {"single layer {0:d}-scan border - hatch....."}}
,{"单层 {0:d}-再次扫描边框线......",new string[1] {"single layer {0:d}-scan border - hatch......"}}
,{"单层扫描曝光被终止!",new string[1] {"scan single layer terminated!"}}
,{"单层扫描曝光完成!",new string[1] {"scan single layer complete!"}}
,{"单层扫描正在运行中......",new string[1] {"Single-layer scan is running......"}}
,{"错误:正在生产零件操作中不能启动单层扫描过程!",new string[1] {"Error:Unable to start single-layer scan process in production part operation!"}}
,{"启动单层扫描线程失败!",new string[1] {"Failed to start single-layer scanning thread!"}}
,{"初始化失败",new string[1] {"Initialization Failure"}}
};
'''
import re
pattern2 = re.compile(r'[\r\n\t\s]*{[\r\n\t\s]*"(.+)",[\r\n\t\s]*new string\[1\] {[\r\n\t\s]*".+"[\r\n\t\s]*}[\r\n\t\s]*}')
eResultArr = pattern2.findall(i18nStr)
#for eStr in eResultArr:
#print(eStr)
#print('-----------------------------------------------\r\n\r\n')
pattern = re.compile(r'I18nUtil.GetConstString\("([^".]*)"')
resultArr = pattern.findall(str)
alist = []
for resultStr in resultArr:
resultStr = resultStr.replace('\r\n', '\\r\\n')
if resultStr not in eResultArr:
if resultStr not in alist:
alist.append(resultStr)
for tempStr in alist:
print(',{"' + tempStr + '",new string[1] {""}}')