//private bool no_ResistMask; //レジストを開けない //public bool No_ResistMask //{ // get { return no_ResistMask; } // set { no_ResistMask = value; } //} /// <summary> /// コピーコンストラクタ /// </summary> /// <param name="mbeObjPin"></param> public MbeObjPinSMD(MbeObjPinSMD mbeObjPinSmd) : base(mbeObjPinSmd) { mmreduce = mbeObjPinSmd.mmreduce; no_MM = mbeObjPinSmd.no_MM; //no_ResistMask = mbeObjPinSmd.no_ResistMask; }
/// <summary> /// ReadCE3のストリームから、startWordで始まるMbeObjを読み取る /// </summary> /// <param name="readMb3"></param> /// <param name="startWord"></param> /// <param name="obj"></param> /// <returns></returns> public static ReadCE3.RdStatus ReadMbeObj(ReadCE3 readMb3, string startWord, out MbeObj obj) { ReadCE3.RdStatus result = ReadCE3.RdStatus.NoError; obj = null; if (startWord == "+MBE_HOLE") { obj = new MbeObjHole(); } else if (startWord == "+MBE_PTH") { obj = new MbeObjPTH(); } else if (startWord == "+MBE_PINSMD") { obj = new MbeObjPinSMD(true); } else if (startWord == "+MBE_FLASHMARK") { obj = new MbeObjPinSMD(false); } else if (startWord == "+MBE_LINE") { obj = new MbeObjLine(); } else if (startWord == "+MBE_POLYGON") { obj = new MbeObjPolygon(); } else if (startWord == "+MBE_TEXT") { obj = new MbeObjText(); } else if (startWord == "+MBE_ARC") { obj = new MbeObjArc(); } else if (startWord == "+MBE_COMPONENT") { obj = new MbeObjComponent(); } else { string strSkipTo = "-" + startWord.Substring(1); readMb3.SkipTo(strSkipTo); } if (obj != null) { result = obj.RdMb3(readMb3); if (result != ReadCE3.RdStatus.NoError) { obj = null; } } return(result); }
/// <summary> /// SMD Padのプロパティ編集ダイアログの起動 /// </summary> /// <param name="obj"></param> /// <param name="editPinNumberMode"></param> /// <returns></returns> private bool EditPropertySMDPad(MbeObjPinSMD obj, bool editPinNumberMode) { if (obj.Layer == MbeLayer.LayerValue.PLC || obj.Layer == MbeLayer.LayerValue.PLS) { editPinNumberMode = false; } SetSMDPadForm dlg = new SetSMDPadForm(); dlg.LandHeight = obj.PadSize.Height; dlg.LandWidth = obj.PadSize.Width; dlg.Shape = obj.Shape; dlg.No_metalMask = obj.No_MM; dlg.No_resistMask = obj.No_ResistMask; if (editPinNumberMode) { dlg.PinNumber = obj.PinNum; dlg.EditPinNumberMode = true; dlg.ThermalReliefSetting = obj.ThermalRelief; } DialogResult retv = dlg.ShowDialog(); if (retv == DialogResult.OK) { obj.PadSize = new Size(dlg.LandWidth, dlg.LandHeight); obj.Shape = dlg.Shape; obj.ThermalRelief = dlg.ThermalReliefSetting; obj.No_MM = dlg.No_metalMask; obj.No_ResistMask = dlg.No_resistMask; if (editPinNumberMode) { obj.PinNum = dlg.PinNumber; } return(true); } else { return(false); } }
/// <summary> /// 複製を行う /// </summary> /// <returns></returns> public override MbeObj Duplicate() { MbeObj newObj = new MbeObjPinSMD(this); return(newObj); }