*halcon的数据类型:图形变量、控制变量
*图形变量(image)、区域(region)轮廓类型、
*控制变量:基本数据类型(整型、浮点类型、字符串类型、bool类型)、句柄、元组类型
*1 获取窗口的句柄
dev_get_window (WindowHandle)
*2 基本数据类型
* := 赋值的方式
a:=100//integer
b:=10.2//number
c:='12'//string
d:=true//布尔类型转成1或者0
*3 数组类型
arr:=[]//空数组
arr1:=[1,2,3]//
f:=arr1[0]
arr2:=[1,true,'你好']
arr3:=[0:10]//从0开始到10结束 每次递增1
arr4:=[0:10:100]//从0开始到100结束 每次递增10
arr5:=[0:-10:-100] //0开始到-100结束 每次递减10
length:=|arr5|//数组的长度
*4 常用的一些函数
tuple_abs (-10, Abs)//绝对值
tuple_add (1, 2, Sum)//求和
tuple_ceil (1.1, Ceil)//向上求整
tuple_floor (1.1, Floor)//向下求整
tuple_concat (1, '飞机', Concat)//合并成一个数组
tuple_remove (Concat, 1, Reduced)//移除数组索引值位置的元素
tuple_is_number (arr2, IsNumber)//判断数组中的元素是否是数字类型
*5 运算符号
a1:=10
a1:=a1+30
a1:=a1-30
a1:=a1*10
a1:=a1/9
*6 流程控制
dev_clear_window()
a2:=90
a3:=100
if(a2!=a3) // == 相等 !=与# 不相等
*展示文本:展示字符,在窗口上展示,左上展示,黑色字体(坐标为 y,x)
*[属性名],[属性值] 预留参数
*'shadow_color' 盒子阴影
dev_disp_text ('hello', 'window',100, 100, 'black', ['box_color','shadow_color'], ['red','green'])
endif
socre := 90
if (socre >= 80 and socre <= 100) //and 并且
dev_disp_text ('OK', 'window',200, 100, 'black', ['box_color','shadow_color'], ['red','green'])
*disp_text 参数1 窗体句柄 参数2 显示的东西 参数3 展示窗体上 参数4,5 位置 参数6 颜色 参数7,8 预览参数
disp_text (WindowHandle, '非常优秀', 'window', 12, 12, 'black', [], []) //不建议使用
elseif(socre <= 80)
dev_disp_text ('NG', 'window',200, 100, 'black', ['box_color','shadow_color'], ['red','green'])
else
dev_disp_text ('太nb了', 'window',200, 100, 'black', ['box_color','shadow_color'], ['red','green'])
endif
*7 for循环
*从1到5 每次叠加1 for结束后index值为6
sum1 := 0
for Index := 1 to 5 by 1
sum1 := sum1+ Index
endfor
if (sum1 > 1 or sum1 <99) //or 或者意思 2个满足一个
endif
if (sum1 > 1 xor sum1 <99) //xor 或者意思 2个只能满足一个
endif
for Index1 := 1 to 5 by 1
if (sum1%2 == 0)
break
endif
endfor
*8 while 循环
count := 0
while (1)
count:= count +1
if (count > 10)
break
endif
endwhile
*9 switch 条件判断
week := 1
switch (week)
case 1:
dev_disp_text ('周一', 'window',200, 300, 'black', ['box_color','shadow_color'], ['red','green'])
break
case 2:
dev_disp_text ('周二', 'window',200, 300, 'black', ['box_color','shadow_color'], ['red','green'])
break
default:
break
endswitch