图元
图元组件的参考:一幅由实时点位驱动的可动工业 SVG,以及它的输入、连线和朝向。
图元把一幅工业 SVG 图形放到画面上,比如一台泵、一个阀门、一个罐,并且用实时点位驱动它所声明的那些输入,于是这幅图形跟着现场动起来。它是唯一一种在放置之前就先选定身份的组件:面板上的那一项打开图元库(内置的系统图元包,加上操作员自己导入的图元),你挑中的那一个就是落到画布上的那一个。引用解析不到的组件画出一个中性的占位图形,而不是随便一台设备,理由在它的提示里。
一个图元做得到什么,也就是哪些子元素会动、每个输入接受什么、它的连接点在哪里,是在图元自身里写定的,不在这块面板里。文件格式和它的词汇写在可移植 SVG 图元。
内容
面板一开头就说明这个实例是什么:一张预览图、图元的名称和它的出处(<library> · <category>)。更换图元…打开图元库来替换这幅图形;只有图形会变,位置、大小、朝向,以及新图元仍然声明的每一条连线和每一个绑定,都保持原样。一个不声明任何动态输入的图元,会在这里说明这一点。
数据:图元的各个输入
图元声明的每一个输入各占一个字段,字段的说明写着它接受什么,也就是值类别,以及在声明限定了范围时的那个范围,例如 decimal · 0 to 100、boolean、color、text。同一个类别也过滤地址建议,所以字段说的和字段给的不可能互相打架。
每一个输入都带着一个明确的来源选择,于是任何时候只有两者之一生效,来源是操作员的决定,绝不是靠猜哪个字段恰好装着文字:
| 来源 | 字段接受什么 |
|---|---|
| 地址 | 一个所声明类别的带根 Logic 地址。指名之后,点位当前的读数显示在字段下面;颜色到来时已经画好了,就在它的十六进制值旁边,因为那串字面值说不出它所代表的那种涂色。 |
| 固定值 | 一个常量,按声明自己的方式键入:一个带着所声明边界的数值字段、一个真假开关、一个颜色挑选器(一个十六进制值、一个 CSS 颜色名,或者一个 var(--color-…) 记号),或者朴素的文本。 |
输入所拒绝的固定值,比如超出所声明范围的数、被消毒器拒绝的涂色,会连同理由一起留在屏幕上,而不是悄悄弹回去;在这一次输入变成图元接受的东西之前,什么也不保存。空的输入是一个还没设定值的来源:这个输入保持中性,和一个空地址完全一样。绑定点位上的质量不可用读起来是一个不可用的采样点:这个输入什么也不施加,那个元素保留它被写定的状态,而不是照着一个谁也没测到的值动起来。
连线
只有声明了连接点的图元才显示。这个分区列出:
- 类型配置:图元在若干个连接点之间共用同一种连线类型时(比如某种工艺流体),每份配置是一个下拉框,从它允许的那些类型里选,而这个选择由使用它的每一个连接点共用。
- 连接点:图元各个连接点的一份只读名册,写着锚点、角色(输入、输出、双向)和解析出来的类型。不必离开面板就能回答“这个图元可以接到什么上面”;空闲还是被占用的状态留在画布的标记上,接线的手势就在那里。
朝向
图形朝哪一边,是图元独有、别的类型都没有的那一项外观。它画多大不在这里问:那是外观分区里共用的内容缩放。
| 属性 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 旋转 | 图形顺时针旋转,按四分之一圈计。 | 0° · 90° · 180° · 270° | 0° |
| 水平翻转 | 让图形绕它的竖轴镜像。 | 开 / 关 | 关 |
| 垂直翻转 | 让图形绕它的横轴镜像。 | 开 / 关 | 关 |