简易交通灯逻辑

背景: 项目技术测试阶段,用到了交通灯。 本阶段暂时使用简易的交通灯进行效果模拟。

在这里插入图片描述

基本架构:
(1) 序号0-3 代表是4个红绿灯, Manager 是四个红绿灯的主控器。红绿灯在场景中都作为 manager 的附属。
(2)每个红绿灯 的颜色 : 红 , 红黄, 绿, 黄。

基本的逻辑:
(1)初始阶段, manager 遍历 ,每一个红绿灯都设置为红色。
(2) 每一展灯,都会 经历 红——红黄——绿——黄 的阶段。 走完之后, 下一次 就从下一展灯开始按照此顺序进行变化灯。
(3)使用取余 % 的算法, 作为遍历 四个红绿灯的 参数变量。

在这里插入图片描述

在这里插入图片描述
TrafficLifht Index: 作为 交通灯 遍历的 主控变量。 它代表的是 当前 对哪一个交通灯 进行 灯光的切换。

在这里插入图片描述
在这里插入图片描述

State indeX : 默认初始值 是2.

现在按照 第一个交通灯 进行 控制的流程。

1,初始全部红灯, 3s 之后

(1)对四个交通灯 按照顺序遍历, 第一个是 红灯。 当前是主控 0 交通灯。 所以 直接 控制 0 号交通灯 变成 红黄。State Index 从2变成0;
(2) 1 , 2, 3 号交通灯都只会变成红色。

2, 1s 后,0 号交通灯 变成绿
(1)对四个交通灯 按照顺序遍历, 第一个是 红灯。 当前是主控 0 交通灯。State Index 当前已经是0, 所以切换成绿灯。 然后 State Index 从0 变成1.
(2) 1 , 2, 3 号交通灯都只会变成红色。

3, 3s 后,0 号交通灯 变成黄
(1)对四个交通灯 按照顺序遍历, 第一个是 红灯。 当前是主控 0 交通灯。State Index 当前已经是1, 所以切换成黄灯。 然后 State Index 从1 变成2.
(2) 1 , 2, 3 号交通灯都只会变成红色。

(3) 如果此时 Traffic LightIndex 值得是最后一个交通灯, 下面的绿线 值得是 当前正在主控的 灯。 主要最后一个交通灯进行控制结束后, 才会之星一遍初始化—— 第一个红绿灯 变成 红黄状态。 让 state index 变成0。

在这里插入图片描述

外部循环的逻辑如下:

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值