halcon语法讲解

  • 2021 年 11 月 17 日
  • 筆記

前言

最近换工作,在学习了解halcon工具,每天总结分析今天所学知识,今天是基础语法篇!

1.基本语法

描述 语法
等号 :=
不等号 #
注释符 *
字符串赋值 str:=’halcon’
等于比较符 if(x=10)
if(x>1 and x<10)
if(x>1 or x<10)
求反 if(notA=10)
For循环 for i:=0 to 10 by 1 … endfor
While循环 while(x==1) … EndWhile
异常获取 try … catch(Exception) Endtry
Switch多分支 switch(index) case 1: … break default : … break endswitch

其中的…表示需要执行的内容

2.Tuple数组

  • 将一个Tuple数组赋值给变量
    arr:=[1,0,3,4,2]
  • 给Tuple数组元素赋值
    arr[1]:=2
  • 批量改变数组元素的值
    arr[1,2]:='abc'[替换数组中1,2的值为abc]
  • 批量给arr数组赋值,其值为0到100连续数值
    arr:=[0,100]
  • 批量给arr数组赋值,其值为3到200连续数值,步长为1
    arr:=[3:1:200]
  • 批量给arr数组赋值,其值为100到-100连续数值,步长为-10
    arr:=[100:-10:-100]
  • 对两个数组合并操作
   arr1:=[1,2,3] 
   arr2:=[2,3,4]
   tuple_union(arr1,arr2,arr3)[去掉数组重复的元素]
   arr3:=[1,2,3,4]
  • 对两个数组进行交集操作
   arr1:=[1,2,3] 
   arr2:=[2,3,4]
   tuple_union(arr1,arr2,arr3)[取两数组交集]
   arr3:=[2,3]
  • 对数组元素进行替换
  arr:=[0,1,2,3]
  tuple_replace(arr,[0,1],['x','y'],Replaced)
  • 向数组插入数值
  arr:=[0,1,2,3,4]
  tuple_insert(arr,3,'x',InsertSingVaueA)

3.字符数组的格式化

语法 描述
$’#0′ 8进制,0为前缀
$’#x’ 16进制,0x为前缀,7b为赋值
$’#X’ 16进制,0x为前缀,7B为赋值,7b与7B是一样的
$’#f’ double型,默认保留小数点后六位
$’#g’ 使数字始终保持六位,不足补零
$’#G’ 使数字始终保持六位,不足补零
$’#e’ 转换成科学计数
$’#E’ 转换成科学计数
$’10’ 文本右对齐
$’-10′ 文本左对齐

4.整数

语法 描述
$’6′ 小于六位时,文本右对齐,大于不影响
$’-6′ 小于六位时,文本左对齐,大于不影响
$’-6′ 小于六位时,文本左对齐,大于不影响
$’.6′ 小于六位时,在左补零,大于不影响
$’10.6′ 小于十位时,文本右对齐;小于五位则在左补零,大于不影响