halcon 基础语法:数组、向量、字典、

数组

*数组
* Tuple_1 := [1, 2, 3, 4.2, '对对对']

*获取长度 方式1
* len := |Tuple_1|

*获取长度 方式2
* tuple_length (Tuple_1, Length)

*数组长度一致,每个元素都会运行运算
*整数 + 字符串 都会变为字符串

数组添加元素

Num := 10
Array := []
* 起点、终点、步长、
for i:=1 to Num by 1
    Array:=[Array,i]
    *相当于append添加元素
endfor


*continue 跳出本次循环
*break 跳出当前循环

向量

向量赋值 (1)


*读图
read_image (Image, 'printer_chip/printer_chip_01')

*截取区域
gen_rectangle1 (Rectangle, 418, 817, 651, 946)
*创建对象向量 {}
Vector1 := {Image, Rectangle}

向量赋值 (2)

*赋值一维数组
VectorT := {[1, 2], [34], [1, 'a']}

*赋值数值和字符串,表达式
VectorA := {'a', 1, 2*2, max2(3, 4)}

*赋值向量
VectorV :=  {VectorT, VectorA}

数组嵌套向量

*创建对象数组 []
concat_obj (Image, Rectangle, ObjectsConcat)

concat_obj (Image, ObjectsConcat, ObjectsConcat1)

*对象向量
Vector := {ObjectsConcat, ObjectsConcat1}

向量操作

*向量操作
*获取元素
a:=VectorA.at(0)
b:=VectorV.at(0).at(0)

*向量合并,追加合并
VectorA:= VectorA.concat(VectorT)

*向量插入
VectorA.insert(0,b)

*向量长度
length:=VectorA.length()

*向量移除
VectorA.remove(3)

*向量清除
VectorA.clear()

字典

*创建字典
create_dict(Dict)

*循环创建多个字典
DIcts := []
for idx := 0 to 4 by 1
    create_dict(Dicthandle)
endfor

*存入数组类型到字典
*存入数字(5)进入字典
set_dict_tuple(Dict, 'simple_int', 5)

*存放字符串(存入 数据1)进入字典
set_dict_tuple (Dict, 'simple_str', '存入 数据1')

*存放数组进入字典
set_dict_tuple(Dict, 'mixed_tuole', [1, '对对对'])

*使用数字做key名
set_dict_tuple (Dict, 0, '嗯嗯嗯')

*读取图像
read_image(Image, 'printer_chip/printer_chip_01')

*存放图片进入字典
set_dict_object (Image, Dict, 'image_1')

*创建区域
gen_rectangle1 (Rectangle, 30, 20, 100, 200)

*存放区域进入字典
set_dict_object (Rectangle, Dict, 'region_1')

*获取所有keys的值 
get_dict_param (Dict, 'keys',[], Allkeys)

*查询指定key是否存在,返回0为不存在,1为存在
get_dict_param (Dict, 'key_exists', ['simple_int', 'simple_str'], KeysPresence)

*查询指定key的数据的数据类型
get_dict_param(Dict, 'key_data_type', ['simple_str', 'image_1'], KeysType)

*查询全部key的数据类型
get_dict_param(Dict, 'key_data_type', Allkeys, KeysALL)

*获取指定key的对象数据
get_dict_object (Image, Dict, 'image_1')

*删除字典的key值
remove_dict_key(Dict, 'simple_str')

*复制字典
copy_dict(Dict, [], [], CopiedDictHandle)

*修改设置值
set_dict_tuple (Dict, 'simple_int', 6)

* 保存字典
write_dict(CopiedDictHandle, 'F:/xue_xi/copydict.hdict', [], [])

* 读取字典
read_dict('F:/xue_xi/copydict.hdict', [], [], DictHandle1)

你可能感兴趣的:(halcon学习,bash,开发语言)