From fec341de45f4b3fd1825807f0b3261143fa13caa Mon Sep 17 00:00:00 2001
From: C3204 <zhengyabo@lanpucloud.cn>
Date: 星期一, 29 十二月 2025 17:03:45 +0800
Subject: [PATCH] 修复部分显示工具为面向对象。

---
 LB_VisionProcesses/Alogrithms/Halcon/2D/HFindModelTool/HFindModelToolEdit.cs |   34 +++++++++++++++++++++++-----------
 1 files changed, 23 insertions(+), 11 deletions(-)

diff --git a/LB_VisionProcesses/Alogrithms/Halcon/2D/HFindModelTool/HFindModelToolEdit.cs b/LB_VisionProcesses/Alogrithms/Halcon/2D/HFindModelTool/HFindModelToolEdit.cs
index ffed42b..2729c6f 100644
--- a/LB_VisionProcesses/Alogrithms/Halcon/2D/HFindModelTool/HFindModelToolEdit.cs
+++ b/LB_VisionProcesses/Alogrithms/Halcon/2D/HFindModelTool/HFindModelToolEdit.cs
@@ -448,9 +448,15 @@
                     }
                 }
 
-                if (Subject.InputImage != null && Subject.InputImage is HObject)
-                    inputImageHSmartWindowControl.ShowHoImage((HObject)Subject.InputImage);
+                if (Subject.InputImage != null && Subject.InputImage is HImage)
+                {
+                    using (HImage hImage = (HImage)Subject.InputImage)
+                    {
+                        hImage.GetImageSize(out HTuple ho_ImageWidth, out HTuple ho_ImageHeight);
+                        inputImageHSmartWindowControl.ShowHoImage(hImage);
+                    }
 
+                }
                 Type type = Subject.Params.ROI?.GetType();
                 if (Subject.Params.ROI != null)
                 {
@@ -563,10 +569,13 @@
                 UpdataOutputs();
                 imgTabControl.SelectedTab = tabPageRecordImage;
 
-                if (Subject.InputImage != null && Subject.InputImage is HObject)
+                if (Subject.InputImage != null && Subject.InputImage is HImage)
                 {
-                    HOperatorSet.GetImageSize((HObject)Subject.InputImage, out HTuple ho_ImageWidth, out HTuple ho_ImageHeight);
-                    recordImageHSmartWindowControl.ShowHoImage((HObject)Subject.InputImage);
+                    using (HImage hImage = (HImage)Subject.InputImage)
+                    {
+                        hImage.GetImageSize(out HTuple ho_ImageWidth, out HTuple ho_ImageHeight);
+                        recordImageHSmartWindowControl.ShowHoImage(hImage);
+                    }
                 }
 
                 //鍏堝垽鏂瓙绫诲啀鍒ゆ柇鐖剁被
@@ -1291,15 +1300,18 @@
 
         private void btnCreateModel_Click(object sender, EventArgs e)
         {
-            if (InputImage != null && InputImage is HObject)
+            if (InputImage != null && InputImage is HImage)
             {
                 imgTabControl.SelectedTab = tabPageModelImage;
 
-                HOperatorSet.GetImageSize((HObject)InputImage, out HTuple hv_imageWidth, out HTuple hv_imageHeight);
-                createModelImageHSmartWindowControl.ShowHoImage((HObject)InputImage);
-                createModelImageHSmartWindowControl.bAollowDraw = true;
-                createModelImageHSmartWindowControl.oRoi = new HRectangle2(hv_imageWidth.TupleReal() / 2, hv_imageHeight.TupleReal() / 2
-                    , 0, hv_imageWidth.TupleReal() / 4, hv_imageHeight.TupleReal() / 4);
+                using (HImage hImage = (HImage)Subject.InputImage)
+                {
+                    hImage.GetImageSize(out HTuple hv_imageWidth, out HTuple hv_imageHeight);
+                    createModelImageHSmartWindowControl.ShowHoImage(hImage);
+                    createModelImageHSmartWindowControl.bAollowDraw = true;
+                    createModelImageHSmartWindowControl.oRoi = new HRectangle2(hv_imageWidth.TupleReal() / 2, hv_imageHeight.TupleReal() / 2
+                        , 0, hv_imageWidth.TupleReal() / 4, hv_imageHeight.TupleReal() / 4);
+                }
             }
         }
 

--
Gitblit v1.9.3