From afb91739ea7e47c20a0e1f526a841e5089e7e716 Mon Sep 17 00:00:00 2001 From: 천호석 <hosuk1418@naver.com> Date: 수, 02 11월 2022 16:40:20 +0900 Subject: [PATCH] Width Measurement 4Point 2번 측정할 수 있도록 변경. --- SHARP_CLAS_UI/500.Equipment/400.Module/000.Vision/Vision_Control.cs | 35 +++++++++++++++++++++++++++++++++++ 1 files changed, 35 insertions(+), 0 deletions(-) diff --git a/SHARP_CLAS_UI/500.Equipment/400.Module/000.Vision/Vision_Control.cs b/SHARP_CLAS_UI/500.Equipment/400.Module/000.Vision/Vision_Control.cs index c615bca..d948f7d 100644 --- a/SHARP_CLAS_UI/500.Equipment/400.Module/000.Vision/Vision_Control.cs +++ b/SHARP_CLAS_UI/500.Equipment/400.Module/000.Vision/Vision_Control.cs @@ -473,6 +473,41 @@ Ack = new MeasurementResultAck(Result_MsgIndex, Result_ModuleIdx, Result_MeasureResult, Result_Mark1Point1, Result_Mark1Point2, Result_Mark2Point1, Result_Mark2Point2, Result_Mark3Point1, Result_Mark3Point2, Result_Mark4Point1, Result_Mark4Point2, Result_MarkDistance, Result_AlignResult); } + public void Recv_WidthMeasurement_Result(byte[] Recvdata, out WidthMeasurementResultAck Ack) + { + byte[] size = new byte[4]; + byte[] command = new byte[2]; + byte[] MsgIndex = new byte[4]; //TimeStamp (HHMMSSmsmsms) + byte[] ModuleIdx = new byte[4]; //移대찓�씪 Module Idx (0: Left, 1: Right) + byte[] MeasureResult = new byte[4]; //0 : Fail, 1 : Success + byte[] Mark1Width = new byte[8]; //Mark1�쓽 �꼻�씠 + byte[] Mark2Width = new byte[8]; //Mark2�쓽 �꼻�씠 + + int copylength = 0; + Array.Copy(Recvdata, size, size.Length); + copylength += size.Length; + Array.Copy(Recvdata, copylength, command, 0, command.Length); + copylength += command.Length; + Array.Copy(Recvdata, copylength, MsgIndex, 0, MsgIndex.Length); + copylength += MsgIndex.Length; + Array.Copy(Recvdata, copylength, ModuleIdx, 0, ModuleIdx.Length); + copylength += ModuleIdx.Length; + Array.Copy(Recvdata, copylength, MeasureResult, 0, MeasureResult.Length); + copylength += MeasureResult.Length; + Array.Copy(Recvdata, copylength, Mark1Width, 0, Mark1Width.Length); + copylength += Mark1Width.Length; + Array.Copy(Recvdata, copylength, Mark2Width, 0, Mark2Width.Length); + copylength += Mark2Width.Length; + + int Result_MsgIndex = BitConverter.ToInt32(MsgIndex, 0); + int Result_ModuleIdx = BitConverter.ToInt32(ModuleIdx, 0); + int Result_MeasureResult = BitConverter.ToInt32(MeasureResult, 0); + double Result_Mark1Width = BitConverter.ToDouble(Mark1Width, 0); + double Result_Mark2Width = BitConverter.ToDouble(Mark2Width, 0); + + Ack = new WidthMeasurementResultAck(Result_MsgIndex, Result_ModuleIdx, Result_MeasureResult, Result_Mark1Width, Result_Mark2Width); + } + public void Recv_Fine_Align_Result(byte[] Recvdata, out FineAlignResultAck Ack) { byte[] size = new byte[4]; -- Gitblit v1.9.3