public void GetDataFromRecipe(MillingList milList) { try { Enable = Convert.ToBoolean(milList.Enable); X = milList.MilRect.X * (g_VisionManager._RecipeVision.ResolutionX / 1000.0); Y = milList.MilRect.Y * (g_VisionManager._RecipeVision.ResolutionY / 1000.0); Width = milList.MilRect.Width * (g_VisionManager._RecipeVision.ResolutionX / 1000.0); Height = milList.MilRect.Height * (g_VisionManager._RecipeVision.ResolutionY / 1000.0); PathCount = milList.PathCount; Pitch = milList.Pitch; Cycle = milList.Cycle; Force = Math.Round(milList.Force * ONEGRAM_TO_NEWTON, 3); StartPos = milList.StartPos; Tilt = milList.Tilt; Rpm = milList.RPM; Speed = milList.Speed; ToolChange = Convert.ToBoolean(milList.ToolChange); UtilFill = Convert.ToBoolean(milList.UtilFill); UtilDrain = Convert.ToBoolean(milList.UtilDrain); UtilType = milList.UtilType; MillingImage = Convert.ToBoolean(milList.MillingImage); EPD = Convert.ToBoolean(milList.EPD); ToolType = milList.ToolType; } catch (Exception ex) { Console.WriteLine(ex.Message); } }
public bool Compare(MillingList milList, List <string> changelist = null) { bool bRtn = false; bRtn |= (Enable != Convert.ToBoolean(milList.Enable)); if (Enable != Convert.ToBoolean(milList.Enable)) { changelist?.Add($" Milling Enable : {Convert.ToBoolean(milList.Enable)} -> {Enable}"); } // 소수 2째 자리 까지 비교 할 것. (연산 Scale 차이 고려) - 소수점 차이 날 수 있음. bRtn |= Math.Round(X / (g_VisionManager._RecipeVision.ResolutionX / 1000.0), 3) != (milList.MilRect.X); if (Math.Round(X / (g_VisionManager._RecipeVision.ResolutionX / 1000.0), 3) != (milList.MilRect.X)) { changelist?.Add($" MilRect.X : {milList.MilRect.X } -> {Math.Round(X / (g_VisionManager._RecipeVision.ResolutionX / 1000.0), 3)}"); } bRtn |= Math.Round(Width / (g_VisionManager._RecipeVision.ResolutionX / 1000.0), 3) != (milList.MilRect.Width); if (Math.Round(Width / (g_VisionManager._RecipeVision.ResolutionX / 1000.0), 3) != (milList.MilRect.Width)) { changelist?.Add($" MilRect.W : {milList.MilRect.Width } -> {Math.Round(Width / (g_VisionManager._RecipeVision.ResolutionX / 1000.0), 3)}"); } bRtn |= Math.Round(Y / (g_VisionManager._RecipeVision.ResolutionY / 1000.0), 3) != (milList.MilRect.Y); if (Math.Round(Y / (g_VisionManager._RecipeVision.ResolutionY / 1000.0), 3) != (milList.MilRect.Y)) { changelist?.Add($" MilRect.Y : {milList.MilRect.Y } -> {Math.Round(Y / (g_VisionManager._RecipeVision.ResolutionY / 1000.0), 3)}"); } bRtn |= Math.Round(Height / (g_VisionManager._RecipeVision.ResolutionY / 1000.0), 3) != (milList.MilRect.Height); if (Math.Round(Height / (g_VisionManager._RecipeVision.ResolutionY / 1000.0), 3) != (milList.MilRect.Height)) { changelist?.Add($" MilRect.H : {milList.MilRect.Height } -> {Math.Round(Height / (g_VisionManager._RecipeVision.ResolutionY / 1000.0), 3)}"); } bRtn |= (PathCount != milList.PathCount); if (PathCount != milList.PathCount) { changelist?.Add($" PathCount : { milList.PathCount } -> {PathCount }"); } bRtn |= (Pitch != milList.Pitch); if (Pitch != milList.Pitch) { changelist?.Add($" Pitch : { milList.Pitch } -> {Pitch }"); } bRtn |= (Cycle != milList.Cycle); if (Cycle != milList.Cycle) { changelist?.Add($" Cycle : { milList.Cycle } -> {Cycle }"); } bRtn |= (Force != Math.Round(milList.Force * ONEGRAM_TO_NEWTON, 3)); if (Force != Math.Round(milList.Force * ONEGRAM_TO_NEWTON, 3)) { changelist?.Add($" Force : { Math.Round(milList.Force * ONEGRAM_TO_NEWTON, 3)} -> {Force }"); } bRtn |= (StartPos != milList.StartPos); if (StartPos != milList.StartPos) { if (StartPos > -1 && StartPos < (int)UserEnumVision.EN_STARTPOS.MemberCount && milList.StartPos > -1 && milList.StartPos < (int)UserEnumVision.EN_STARTPOS.MemberCount) { changelist?.Add($" StartPos : {(UserEnumVision.EN_STARTPOS)milList.StartPos} -> {(UserEnumVision.EN_STARTPOS)StartPos}"); } else { changelist?.Add($" StartPos : {milList.StartPos} -> {StartPos}"); } } bRtn |= (Tilt != milList.Tilt); if (Tilt != milList.Tilt) { changelist?.Add($" Tilt : { milList.Tilt } -> {Tilt }"); } bRtn |= (Rpm != milList.RPM); if (Rpm != milList.RPM) { changelist?.Add($" Rpm : { milList.RPM } -> {Rpm }"); } bRtn |= (Speed != milList.Speed); if (Speed != milList.Speed) { changelist?.Add($" Speed : { milList.Speed } -> {Speed }"); } bRtn |= (ToolChange != Convert.ToBoolean(milList.ToolChange)); if (ToolChange != Convert.ToBoolean(milList.ToolChange)) { changelist?.Add($" ToolChange : { Convert.ToBoolean(milList.ToolChange) } -> {ToolChange }"); } bRtn |= (UtilFill != Convert.ToBoolean(milList.UtilFill)); if (UtilFill != Convert.ToBoolean(milList.UtilFill)) { changelist?.Add($" UtilFill : { Convert.ToBoolean(milList.UtilFill) } -> {UtilFill }"); } bRtn |= (UtilDrain != Convert.ToBoolean(milList.UtilDrain)); if (UtilDrain != Convert.ToBoolean(milList.UtilDrain)) { changelist?.Add($" UtilDrain : { Convert.ToBoolean(milList.UtilDrain) } -> {UtilDrain }"); } bRtn |= (UtilType != milList.UtilType); if (UtilType != milList.UtilType) { if (UtilType > -1 && UtilType < (int)UserEnumVision.EN_UTILTYPE.MemberCount && milList.UtilType > -1 && milList.UtilType < (int)UserEnumVision.EN_UTILTYPE.MemberCount) { changelist?.Add($" UtilType : {(UserEnumVision.EN_UTILTYPE)milList.UtilType} -> {(UserEnumVision.EN_UTILTYPE)UtilType}"); } else { changelist?.Add($" UtilType : {milList.UtilType} -> {UtilType}"); } } bRtn |= (MillingImage != Convert.ToBoolean(milList.MillingImage)); if (MillingImage != Convert.ToBoolean(milList.MillingImage)) { changelist?.Add($" MillingImage : { Convert.ToBoolean(milList.MillingImage) } -> {MillingImage }"); } bRtn |= (EPD != Convert.ToBoolean(milList.EPD)); if (EPD != Convert.ToBoolean(milList.EPD)) { changelist?.Add($" EPD : { Convert.ToBoolean(milList.EPD) } -> {EPD }"); } bRtn |= (ToolType != milList.ToolType); if (ToolType != milList.ToolType) { if (ToolType > -1 && ToolType < FormMain.FM.m_stSystemOpt.sToolType.Length && milList.ToolType > -1 && milList.ToolType < FormMain.FM.m_stSystemOpt.sToolType.Length) { changelist?.Add($" ToolType : {FormMain.FM.m_stSystemOpt.sToolType[milList.ToolType]} -> {FormMain.FM.m_stSystemOpt.sToolType[ToolType]}"); } else { changelist?.Add($" ToolType : {milList.ToolType} -> {ToolType}"); } } return(bRtn); }