全局变量¶
全局变量¶
全局变量的使用场景:业务需求不一定直接一对一地实现,往往通过收集若干业务需求后抽象、设计出一种通用并且可扩展的方式来实现。

在弹出的弹框里面创建全局变量,可以按照需要选择配置全局变量。

业务需求¶
- 外部可以修改作业中算法的参数
- 多个作业间的算法参数可以互相调用
- 软件中需要记录并计算一些全局的值
- 外部输入的值可以再次输出
自定义全局变量¶
用户可以在灵闪中配置多种数据类型的全局变量。
全局变量的值¶
- 初始值:可以设置一个默认值,在下述两个条件不满足时用的就是该值。也可理解为一个全局静态变量
- 外部通信更改:由通信监听模块更改
- 绑定算法结果:跟随算法结果改变而改变
全局变量的使用¶
- 算法参数可以绑定全局变量
- 表达式计算中可以选择全局变量
- 输出适配器中可以选择全局变量
解决方案示例¶
外部修改算法参数:新建全局变量,算法的参数绑定该全局变量,新建通信监听修改全局变量。实现:通信监听 → 全局变量 → 算法参数,这一个绑定和修改链。
跨作业调用算法参数:新建全局变量,绑定一个算法的输出,另一个 task 引用这个全局变量。作业 A → 全局变量 → 作业 B。
外部发送一个补偿值,并在算法中使用并输出:新建全局变量,新建通信监听修改,计算时使用该全局变量。
全局变量类型说明¶
以下是软件应用中全局变量的一些类型举例:
- 整数:整型类型的数据,如 1、2、3...
- 浮点数:小数类型的数据,如 2.22、3.33、4.44...
- 布尔值:True 和 False
- 字符串:任意字符串类型,如 abcdefg、hijklmn...
- 点:包含 x、y 值,如 (0.56, 7.96) 表示一个横坐标为 0.56、纵坐标为 7.96 的点的位置
- 线:默认只能选择绑定数据来源,可以选择作业中执行的包含输出直线的算法结果,如直线定位的输出结果"直线"
- 圆:默认只能选择绑定数据来源,可以选择作业中执行的包含输出圆的算法结果,如圆定位的输出结果"圆"
- 多边形:默认只能选择绑定数据来源,可以选择作业中执行的包含多边形输出的算法结果
- 坐标系:默认只能选择绑定数据来源,可以选择作业中执行的包含坐标系输出的算法结果,如直线定位的输出结果"直线坐标系"
- 图像:默认只能选择绑定数据来源,可以选择作业中执行的包含输出图像的算法结果,如单阈值的输出结果"单阈值输出图像"
- 椭圆:默认只能选择绑定数据来源,可以选择作业中执行的包含输出椭圆的算法结果,如绘制工具-椭圆的输出结果"椭圆"
- 弧:默认只能选择绑定数据来源,可以选择作业中执行的包含输出弧的算法结果,如弧卡尺的输出结果"圆弧"
配置说明¶
用户可以自定义全局变量的值,启用初始值或者使用变量输出。
- 变量名称:自定义的变量名称,不能以空格、数字、特殊字符、[] 等开头,不能为空
- 数据类型:支持的多种数据类型,比如整数、浮点数、布尔、点、线、多边形、圆等
- 数据来源:可以设置固定值,或者绑定变量的依赖关系
- 绑定变量来源:可以勾选算法结果参数
- 启用初始值:用户可以决定是否需要启用全局变量的初始值,设置一个初始状态值
- 设置初始值:根据选择的数据类型设置初始值