转换
什么是过渡?
一个过渡是将一个图形对象链接到另一个图形对象的带箭头的线。在大多数情况下,转换表示系统从一种模式(状态)对象到另一种模式(状态)对象的传递。转换通常连接源对象和目标对象。的源对象是转换开始的地方,而目的地对象是转换结束的地方。下表显示了从源状态,B
,到目的地国家,一个
.
连接将过渡段划分为过渡段。在这种情况下,完整的转换由从源状态到目标状态的段组成。在确定完整转换的有效性的过程中,对每个段进行评估。
下面的示例有两个分段转换:一个来自状态在
州从
另一个来自州在
本身:
默认转换是一种没有源对象的特殊类型的转换。看到默认的转换获取详细信息。
过渡的层次结构
转换不能像状态那样包含其他对象。但是,转换是由状态包含的。转换的层次结构是根据转换的父级、源级和目标级来描述的。父级是包含转换源和目标的最低级别。考虑以下例子中转换的父级:
下表解析了上例中每个转换的父级。的/
字符代表图表。状态层次结构中的每一层都用句点(隔开。.
)字符。
过渡的标签 |
转变家长 |
转换源 |
过渡的目的地 |
---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
过渡标签符号
过渡的特征是它的标签.标签可以由事件、消息、条件、条件操作和/或转换操作组成。的吗?字符是默认的转换标签。转换标签有以下通用格式:
event_or_message[条件) {condition_action} /transition_action
标签的每一部分都是可选的。
过渡标签的例子
使用下面的示例来理解转换标签的各个部分。
事件触发。如果指定的条件为true,则指定导致进行转换的事件。指定事件是可选的。如果没有事件或消息,则表示在任何事件发生时进行转换。使用OR逻辑运算符(|
).
在前面的例子中,事件的广播E
触发从在
来从
只要条件(off_count = = 0)
是真的。
条件。指定一个布尔表达式,当为true时,验证要为指定事件或消息触发器采取的转换。将条件括在方括号内([]
).看到条件有关条件符号的信息。
在上面的例子中,条件(off_count = = 0)
必须计算为true,才能执行条件操作,并且从源到目标的转换有效。
条件的行动。后面是转换的条件,用花括号括起来({}
).一旦条件被计算为true,并且在确定转换目的地有效之前,它就会立即执行。如果没有指定条件,则隐含条件的计算结果为true,并执行条件操作。
在上面的例子中,如果条件(off_count = = 0)
是真的,条件作用吗Off_count = Off_count + 1;
立即执行。
过渡的行动。如果条件(如果指定)为true,则在确定转换目标有效后执行。如果转换由多个段组成,则只有在确定到最终目的地的整个转换路径有效时才执行转换操作。在转换动作之前加上/
.
在上面的例子中,如果条件(off_count = = 0)
是真的,而目的国呢从
是否有效,转换动作Light_off
是执行。