Halcon的编程语法与数据处理——第8讲
1、跟其他语言不完全一致的表达符号
赋值符号 :=
引号 ' ' (一律是单引号)
求商求余 / % (一个整数除以另一个数,如何使商是实型的?即浮点型)
逻辑运算 and or not xor(异或)
逻辑真假 true false
等于 = 和 == 都行
不等于 != 和 # 都行
2、程序控制语法
程序语法与Delphi、VB.Net极为类似。例如:
① for循环
for i := 1 to 10 by 1
……
endfor
② if/else判断
if(……)
……
elseif(……)
……
else
……
endif
③ while循环
while(……)
……
endwhile
break、continue跟其他编程语言一致。
3、常见的Tuple函数运算
min(t) tuple中的最小值
max(t) tuple中的最大值
min2(t1,t2) 求两个值(tuple)中的较小值
max2(t1,t2) 求两个值(tuple)中的较大值
sum(t) 求和
mean(a) 求均值
deviation(a) 标准差( https://www.cnblogs.com/xh6300/p/7413715.html )
sqrt(a) 平方根
deg(a) 将弧度转为角度
rad(a) 将角度转为弧度
real(a) 将整型转为real型
int(a) 将real型转为整型
round(a) 转换为最接近的整数元组
number(v) 将string类型转为number类型
abs(a) 求绝对值
sort(t) 升序排列
更多Tuple的操作请参考:
https://www.cnblogs.com/xh6300/p/6117688.html
可以将下面的例子运行一下,感受一下:

read_image (Image, 'code.png')
create_bar_code_model ([], [], BarCodeHandle)
dev_set_draw ('margin')
**同时查找Code 128码和Code 39码,这种方式消耗的时间只等于只找一种码的时间。
**得到的字符串元组str等于 ['', '']
find_bar_code (Image, SymbolRegions, BarCodeHandle, ['Code 128','Code 39'], str) num := |str|
tuple_strlen (str, Length) //获得字符串元组中每个字符串的长度,[6,12] A0 := Length[] //等于6 A1 := Length[] //等于12 AA := A0 + A1 //等于18 B0 :=str[] //得到的仍是一个字符串,'123456' B0_int :=number(str[]) //貌似没有字符串转int类型,不过可以转成number类型,123456 aa := + B0_int //转为数字可以进行四则运算了,123456 + 3 = 123459 i :=[,] //这里创建的是一个整型元组 i0 := i[] //等于590 *数据转字符串
aa := + ''

4、四舍五入、取整、有效数字以及和字符串之间的转换
https://www.cnblogs.com/xh6300/p/10027998.html
5、数据排序算子
tuple_sort — Sort the elements of a tuple in ascending order.
tuple_sort_index — Sort the elements of a tuple and return the indices of the sorted tuple.(对元组的元素进行(升序)排序,并返回排序后的元组的索引(相对于输入的tuple)。)
https://www.cnblogs.com/xh6300/p/6417801.html
Halcon的编程语法与数据处理——第8讲的更多相关文章
- 完美解决HALCON C#编程目标平台冲突问题
完美解决HALCON C#编程目标平台冲突问题 楼主# 更多发布于:2016-11-23 10:06 背景: 目标机器工控机使用11.0.1 32位Halcon 原因你懂的.开发环境Win ...
- linux —— shell 编程(编程语法)
导读 本文为博文linux —— shell 编程(整体框架与基础笔记)的第4小点的拓展.(本文所有语句的测试均在 Ubuntu 16.04 LTS 上进行) 目录 再识变量 函数 条件语句 循环语句 ...
- Linux Shell 编程语法
原文地址:http://www.cnblogs.com/fhefh/archive/2011/04/13/2014967.html.感谢作者的无私分享 编写代码 在计划好要程序干什么以及如何使用程序的 ...
- 【转】剖析异步编程语法糖: async和await
一.难以被接受的async 自从C#5.0,语法糖大家庭又加入了两位新成员: async和await. 然而从我知道这两个家伙之后的很长一段时间,我甚至都没搞明白应该怎么使用它们,这种全新的异步编程模 ...
- [C#]剖析异步编程语法糖: async和await
一.难以被接受的async 自从C#5.0,语法糖大家庭又加入了两位新成员: async和await. 然而从我知道这两个家伙之后的很长一段时间,我甚至都没搞明白应该怎么使用它们,这种全新的异步编程模 ...
- Python面向切面编程-语法层面和functools模块
1,Python语法层面对面向切面编程的支持(方法名装饰后改变为log) __author__ = 'Administrator' import time def log(func): def wra ...
- C# Halcon混合编程中遇到的问题(一)
目标平台 安装64位的halcon的情况下,目标平台必须使用x64而不能使用x86 目标框架 不能使用.Net Framework Client版本,有一些必须的程序集会缺失,测试使用.Net Fra ...
- Dart编程语法
语法定义了一组用于编写程序的规则.每种语言规范都定义了自己的语法.Dart语法有如下内容组成: 变量和运算符 类 函数 表达式和代码块 判断和循环结构 注释 库和包 类型定义 数据结构表示:集合/泛型 ...
- 程序设计入门——C语言 第8周编程练习 2GPS数据处理(6分)
题目内容: NMEA-0183协议是为了在不同的GPS(全球定位系统)导航设备中建立统一的BTCM(海事无线电技术委员会)标准,由美国国家海洋电子协会(NMEA-The National Marine ...
随机推荐
- python_基础算法
本篇主要实现九(八)大排序算法,分别是冒泡排序,插入排序,选择排序,希尔排序,归并排序,快速排序,堆排序,计数排序.希望大家回顾知识的时候也能从我的这篇文章得到帮助. 概述 十种常见排序算法可以分为两 ...
- 现在的 Linux 内核和 Linux 2.6 的内核有多大区别?
作者:larmbr宇链接:https://www.zhihu.com/question/35484429/answer/62964898来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转 ...
- redis实现分布式锁 转自importnew 记录一下
前言 分布式锁一般有三种实现方式:1. 数据库乐观锁:2. 基于Redis的分布式锁:3. 基于ZooKeeper的分布式锁.本篇博客将介绍第二种方式,基于Redis实现分布式锁.虽然网上已经有各种介 ...
- vmware桥接模式无法上网
环境:本机win10系统,ip地址固定,(估计存在vlan网络), 状况:vmware的nat模式可以上网,桥接模式不能上网, 解决办法:找网管把本机设置成dhcp模式,才行了
- JAVA Spring 事物 ( 已转账为例 ) 基于 AOP 注解
<一> 配置为文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=&qu ...
- 1.java生成随机不重复10位字符串
package org.changneng.util; import java.util.Random; public class A { public static void main(String ...
- apache http get 和 post 请求
1.首先要把jar依赖进项目 <dependency> <groupId>org.apache.httpcomponents</groupId> <artif ...
- Redis 安装 和 启动
Redis下载官网 http://download.redis.io/releases/ 本人下载了stable版 1:安装步骤 ># wget http://download.redis.i ...
- mysql find_in_set排序
假若有给定id数组(1,9,3,5,6);查询sql语句需要安装这个顺序排序 select * from tb where id in (1,9,3,5,6) order by find_in_set ...
- 基于OpenGL编写一个简易的2D渲染框架-02 搭建OpenGL环境
由于没有使用GLFW库,接下来得费一番功夫. 阅读这篇文章前请看一下这个网页:https://learnopengl-cn.github.io/01%20Getting%20started/02%20 ...