1.1*图形类型
*图像
read_image(Image, 'fabrik')
*region区域
gen_rectangle1(Rectangle,30, 20, 100, 200)
*xld轮廓
gen_contour_region_xld(Rectangle,Contours,'border')
1.2*控制类型
str := 'ihalcon'
Num := 1000
Cont := 10.05
*数组
array := [1,2,3.4,5]
1.3*句柄
reduce_domain(Image, Rectangle, ImageReduced)
create_shape_model(ImageReduced, 'auto', -0.39, 0.79, 'auto', 'auto', 'use_polarity', 'auto', 'auto', ModelID)
clear_shape_model(ModelID)
1.4*运算符
*赋值
Cont := 10.05
1.5*比较操作符
A:=20
*t<t less than
if(A<10)
stop()
else
stop()
endif
*t>t greater than
if(A>10)
stop()
else
stop()
endif
*t<=t less or equal
if(A<=10)
stop()
else
stop()
endif
*t>=t greater or equal
if(A>=10)
stop()
else
stop()
endif
*t=t equal
if(A=10)
stop()
else
stop()
endif
*t#t not equal
if(A#10)
stop()
else
stop()
endif
*与and vc中为&&
if(A>1 and A<30)
stop()
else
stop()
endif
*或or vc中为||
if(A<=1 or A>=30)
stop()
else
stop()
endif
*取反 not vc中为!
if(not(A=10))
stop()
else
stop()
Endif
1.6*控制流
for i := 1 to 5 by 1
continue
endfor
*if
if(not(A=10))
stop()
else
stop()
endif
*while
j:=0
while(j#10)
j := j+1
endwhile
*switch
j:=0
while(j#10)
j:=j+1
switch(j)
case 1:
stop()
break
case 2:
stop()
break
default:
stop()
break
endswitch
Endwhile
1.7*数组操作
*数组定义方式1
Tuple := []
*数组定义方式2
tuple := gen_tuple_const(100, 2711) //创建一个具有100个元素的,每个元素都为47·的数组
*赋值:对数据同仁,对数组的初始化
Tuple1 := [1,0,3,4,5,6,7,8,9]
*对数组中的某一个值进行赋值
Tuple1[3] := 2
*显示结果为:[1,0,3,2,5,6,7,8,9],即对索引3后面的元素,数组Tuple1中第4个元素赋值2
*基本数组操作及其对应的算子
*t1,t2连接成新的数组,对应算子:tuple_concat
t1:=[1,2,3]
t2:=[4,5,6]
t:=[t1,t2]
tuple_concat(t1, t2, t3)
*得到数组长度 对应算子:tuple_length
i := |t|
tuple_length(t, Length)
*选取第i个元素0<=i <|t| 对应算子:tuple_select
i:=2
V := t[i]
tuple_select(t, 1, Selected)
*选取i1到i2的元素 对应算子:tuple_select_range
i1 := 3
i2 := 5
t2s := t[i1:i2]
tuple_select_range(t, i1, i2, t3)
*选取数组t中的第i个元素 对应算子:tuple_select
i := 2
t2 := subset(t,i)
tuple_select(t,i,t3)
*去除数组t中的第i个元素 对应算子:tuple_remove
Temp:=t
i:=2
t2 := remove(Temp, i)
*找到t2数组在t1数组中出现位置索引(如果没有找到,返回-1) 对应算子:tuple_find
t1 := [3,4]
t2 := find(t,t1)
tuple_find(t, t1, t3)
t1:=[8,4]
t2:= find(t,t1)
tuple_find(t, t1, t3)