/** 内部指令 接收 */ export class CodeAction { code?: String order?: String codeParams?: any } /**内部响应类 */ export class GCodeResType { code: number = -1 data: any = null msg: string = '' logError(msg) { console.error(msg) } } // 加工项 点数据 export class CodeParams { /** x坐标 */ x?: Number | String /** y坐标 */ y?: Number | String /** z坐标 */ z?: Number | String /** 调用的代码编号 */ dir?: Number | String /** 圆弧半径 */ r?: Number | String /** 速度 */ f?: Number | String /** IJK 模式的i */ i?: Number | String /** IJK 模式的j */ j?: Number | String /** IJK 模式的k */ k?: Number | String /** 代码标识 */ codeKey?: String /** x坐标 */ xKey?: String /** y坐标 */ yKey?: String /** z坐标 */ zKey?: String /** 圆弧半径 */ rKey?: String /** 速度 */ fKey?: String /** IJK 模式的i */ iKey?: String /** IJK 模式的j */ jKey?: String /** IJK 模式的k */ kKey?: String } export type _knifeType = Partial /** * 板面类型 * 0正面 1反面 2侧面 21左侧面 22右侧面 23上侧面 24下侧面 29 弧形侧面 30异形侧面 */ export enum FaceType { /** 正面 */ FRONT = 0, /** 反面 */ BACK = 1, /** 侧面 */ SIDE = 2, /** 左侧面 */ LEFT_SIDE = 21, /** 右侧面 */ RIGHT_SIDE = 22, /** 上侧面 */ TOP_SIDE = 23, /** 下侧面 */ BOTTOM_SIDE = 24, /** 弧形侧面 */ CURVED_SIDE = 29, /** 异形侧面 */ SPECIAL_SHAPED_SIDE = 30, } /** 开料刀 */ export class Knife { /** 是否启用 */ isEnabled = true; /** 轴号 */ axleId = 0; /** 开料刀ID号 */ knifeId = 1; /** 加工面(0正面 1反面 2左侧面 3右侧面 4上侧面 5下侧面 6任意) */ processFace = 0; /** 刀名称 */ knifeName = ''; /** 刀具类型(1铣刀 2成型刀 3钻头 4锯 5刀片) */ knifeType = KnifeType.MILLING_CUTTER; /** 功能属性(数组): 1开料/切割 2拉槽 3铣型 4铣孔 5钻孔 6拉米诺 7乐扣 8T型 */ ability: any = []; // /** 默认开料刀 */ // isDefaultCutKnife = false; // /** 是否可用于开料切割 */ // isCuttingKnife = false; // /** 是否允许铣孔(knifeType为铣刀生效) */ // isMillingAllowed = false; /** 刀直径mm */ diameter = 6; /** 刀长(最大深度) */ length = 20; /** 锯齿厚度,单次加工切缝宽度 */ sawThiness = 0; /**锯向: 0横向(或长边) 1纵向(短边) 2自由角度*/ sawDirection = 0; /**切向加工方向: 0横向左往右 2横向右往左 3纵向上往下 4纵向下往上 5随意 */ processDirection = 0; /**进给速度, 0取系统默认 */ speed = 0; /** 进给深度 */ stepDepth = 0; // /** 组号 */ // groupNo = 0; // /** 主刀 */ // isMainKnife = false; // /** 是否高级加工 */ // isAdvancedProcessEnabled = false; // /** 是否集合加工 */ // isBatchProcessEnabled = false; // /** 副刀偏置长边偏移(Y轴) */ // auxKnifeOffsetY = 0; // /** 副刀偏置短边偏移(X轴) */ // auxKnifeOffsetX = 0; /** 偏置短边偏移(X轴)-相对于工件原点位置XY坐标的短边方向偏移量 */ offsetX = 0; /** 偏置长边偏移(Y轴) -相对于工件原点位置XY坐标的长边方向偏移量*/ offsetY = 0; /** 偏置垂直偏移(Z轴) -相对于工件原点位置XY坐标的垂直方向偏移量*/ offsetZ = 0; /** 基准坐标-短边(X轴) -钻头在钻包中短边方向(纵向)的相对位置 */ baseX = 0; /** 基准坐标-长边(Y轴) -钻头在钻包中长边方向(横向)的相对位置 */ baseY = 0; /**组合钻 */ isModularDrill = false; /** 是否预启动 */ isPreStartEnabled = false; /** 预启动提前动作数 */ preStartAheadActionCount = 5; /** 预启动延迟换刀 */ isPreStartToolChangeDelay = false; /** 预启动延迟换刀指令 */ preStartToolChangeDelayCode = ''; /** 轴启动指令后置 */ isAxisStartCodePostpost = false; /** 轴停止指令前置 */ isAxisStopCodePrepose = false; /** 钻组独立指令(启用后,刀起始指令、刀结束指令使用钻组起始指令、钻组结束指令替换) */ drillGroupCode = ''; /** 轴启动代码*/ axisStartCode = ""; /** 刀启动代码 */ knifeStartCode = ''; /** 钻组起始指令 */ drillGroupStartCode = ''; /** 钻组结束指令 */ drillGroupEndCode = ''; /** 刀停止代码 */ knifeStopCode = ''; /** 轴停止指令 */ axisStopCode = ''; // /** 高级加工指令 */ // advancedCode = ''; /** 设置刀具(轴号, 刀名, 刀直径, 是否主刀, 是否铣孔, 是否开料刀) */ // set(axleId: number, name: string, diameter: number, isMainKnife: boolean, isMillingAllowed: boolean, isCuttingKnife: boolean) /** 设置刀具(轴号, 刀名, 刀类型, 刀直径, 刀长, 是否默认刀) */ } /** 刀类型: MILLING_CUTTER铣刀 FORMING_CUTTER成型刀 DRILL钻头 SAW锯 BLADE刀片 */ export enum KnifeType { /** 铣刀 */ MILLING_CUTTER = 1, /** 成型刀 */ FORMING_CUTTER = 2, /** 钻头 */ DRILL = 3, /** 锯 */ SAW = 4, /** 刀片 */ BLADE = 5 } /** 刀功能: ** 1-CUT开料/切割 2-PULLING_GROOVE拉槽 3-MILLING_MODEL铣型 4-MILLING_HOLE铣孔 ** 5-DRILL_HOLE钻孔 6-RAMINO拉米诺 7-EASY_FASTEN乐扣 8-T_TYPE T型 */ export enum AbilityType { /** 1开料/切割 */ CUT = 1, /** 2拉槽 */ PULLING_GROOVE = 2, /** 3铣型 */ MILLING_MODEL = 3, /** 4铣孔 */ MILLING_HOLE = 4, /** 5钻孔 */ DRILL_HOLE = 5, /** 6拉米诺 */ RAMINO = 6, /** 7乐扣 */ EASY_FASTEN = 7, /** 8T型 */ T_TYPE = 8 } /** 枚举 坐标轴类型 */ export enum AxisType { /** X轴正 */ X_POS = 0, /** X轴负 */ X_NEG = 1, /** Y轴正 */ Y_POS = 2, /** Y轴负 */ Y_NEG = 3, /** 向上Z轴正 */ Z_POS = 4, /** 向下Z轴负 */ Z_NEG = 5, } /** 枚举 坐标轴类型 */ export enum OriginZPosition { /** 台面向上Z轴正 */ WorkTop = 0, /** 板面向上Z轴正 */ BoardFace = 1, } // nc文件编码 export const ncEncodeMap = { 'UTF-8': 'UTF-8', 'GB2312': 'GB2312', 'UTF-8-BOM': 'UTF-8-BOM', 'GBK': 'GBK', 'Big-5': 'Big-5', 'GB18030': 'GB18030', 'Unicode': 'Unicode' } // 小板文件名选项 export const smallPlateOptionsMap = { 板宽: '{0}', 板长: '{1}', 颜色: '{2}', 材质: '{3}', 大板号: '{4}', 工位号: '{5}', 板厚: '{6}', 开料顺序: '{7}', 批次识别: '{8}', 小板编号: '{9}', 全局大板号: '{10}', 品牌: '{11}', } // zip压缩包文件名选项 export const zipFileOptionsMap = { '板宽': '{0}', '板长': '{1}', '颜色': '{2}', '材质': '{3}', '大板号': '{4}', '工位号': '{5}', '板厚': '{6}', '开料顺序': '{7}', '批次识别': '{8}', '小板编号': '{9}', '全局大板号': '{10}', '品牌': '11', } /** 枚举 大板边角位置 */ export enum BoardPosition { /** 左上角 */ // LEFT_TOP = 0, // /** 左下角 */ // LEFT_BOTTOM = 1, // /** 右下角 */ // RIGHT_BOTTOM = 2, // /** 右上角 */ // RIGHT_TOP = 3, /** 左上角 */ LEFT_TOP = 3, /** 左下角 */ LEFT_BOTTOM = 0, /** 右下角 */ RIGHT_BOTTOM = 1, /** 右上角 */ RIGHT_TOP = 2, /** * 左下角 = 0, 右下角 = 1, 右上角 = 2, 左上角 = 3 */ } /** 排版样式 */ export enum PlaceStyle { /** 正面 */ FRONT = 0, /** 正面右转 */ FRONT_TURN_RIGHT = 1, /** 正面后转 */ FRONT_TURN_BACK = 2, /** 正面左转 */ FRONT_TURN_LEFT = 3, /** 反面 */ BACK = 4, /** 反面右转 */ BACK_TURN_RIGHT = 5, /** 反面后转 */ BACK_TURN_BACK = 6, /** 反面左转 */ BACK_TURN_LEFT = 7, } /** 小板边的位置类型 */ export enum EdgeType { /** 下=0 */ BOTTOM = 0, /** 右=1 */ RIGHT = 1, /** 上=2 */ TOP = 2, /** 左=3 */ LEFT = 3, }