转自:
http://www.ihalcon.com/read-6725.html
draw_rectangle1_mod 和 draw_rectangle2_mod画矩形ROI的一些问题!:
< 一 >错误情景再现:
参数没有错误,原因是在Image窗口上画ROI的时候,没有移动和改变起始ROI大小,直接右键确定,所导致的错误(输出值变为空),请问如何处理这个问题?
< 二 >产生错误的具体步骤说明:
1、hdevelop源代码,先执行draw_rectangle1_mod
复制代码
1
2
3
4
5
6
7
8
|
read_image (Image, 'fabrik')
dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
dev_display (Image)
Row1:=30
Column1:=31
Row2:=210
Column2:=212
draw_rectangle1_mod (WindowHandle, 100, 100, 200, 200, Row1, Column1, Row2, Column2)
|
2、接下来的操作:在Image窗口上画ROI的时候,没有移动和改变起始ROI大小,直接右键确定
3、输出值得结果: Row1, Column1, Row2, Column2 的值是Null 的,不是初始值,也不是 0 啊!
4、如何代码导出到vc++上,会因为输出的Null,导致程序错误崩溃
< 三 >解决办法:
1、调用函数draw_rectangle2_mod时输出参数从double类型改为HTUPLE。
2、这样当不移动或改变大小时,输出的数组就为空,数组元素为零。
3、通过判断数组元素个数可以判断画矩形是否成功。