设为首页收藏本站
授权版本:2024_07
开启左侧

C#调用Halcon,显示的ROI, XLD等都是红色的

[复制链接]
wangfeng 发表于 2020-4-20 13:33:06 | 显示全部楼层 |阅读模式
求助,
我用C#联合Halcon编程,在Halcon中显示的颜色都是正常的,pass的绿色,fail的红色。程序里已经加了设置颜色的语句:
    HOperatorSet.SetColor(HWindow.hWindowControl.HalconWindow, "green");
但是到C#中之后所有的ROI,XLD等都变成红色的了,不知到为什么。求高人指点。

C#全是红色

C#全是红色

这个是正常的显示

这个是正常的显示
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
绝地武士 发表于 2020-4-20 14:33:06 | 显示全部楼层
图层显示问题吧!先设置颜色再显示图形,下一个要改变颜色一定要再次设置颜色再显示图形,依次类推!
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
 楼主| wangfeng 发表于 2020-4-20 21:30:17 | 显示全部楼层
绝地武士 发表于 2020-4-20 14:33
图层显示问题吧!先设置颜色再显示图形,下一个要改变颜色一定要再次设置颜色再显示图形,依次类推! ...

我程序里是先设置颜色,在显示图形的。程序如下:
if ((int)(new HTuple(((hv_StdDev - hv_Distance)).TupleGreaterEqual(0))) != 0)
                    {
                        HOperatorSet.SetColor(HWindow.hWindowControl.HalconWindow, "green");
                        HOperatorSet.GenCircle(out ho_Circle, hv_RowPins.TupleSelect(hv_ridx), hv_ColPins.TupleSelect(hv_Idx1), hv_StdRadius);
                    }
                    else
                    {
                        HOperatorSet.SetColor(HWindow.hWindowControl.HalconWindow, "red");
                        HOperatorSet.GenCircle(out ho_Circle, hv_RowPins.TupleSelect(hv_ridx),hv_ColPins.TupleSelect(hv_Idx1), hv_StdRadius);
                     
                    }
                    
                    HWindow.DispObj(ho_Circle);
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
绝地武士 发表于 2020-4-20 21:47:01 | 显示全部楼层
wangfeng 发表于 2020-4-20 21:30
我程序里是先设置颜色,在显示图形的。程序如下:
if ((int)(new HTuple(((hv_StdDev - hv_Distance)).Tu ...

反正就是就是原因,你查下你代码设置的有没有执行,断点查下!
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
lrf2019 发表于 2020-4-21 14:00:11 | 显示全部楼层
是不是窗体句柄拿错了
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
Gavin 发表于 2020-5-13 09:20:07 | 显示全部楼层
可能在其他地方又改了;在显示前SetColor试试;
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表