离散事件仿真示例

时间:2011-12-27 02:55:56

标签: c# events simulation

我想在C#中执行离散事件模拟。我想在随机行走模式下同时在屏幕上滚动三个球。在时间1球1应出现并开始滚动,在时间5,球2和时间10,应出现球3。当任何两个球足够接近时,球的颜色应该改变(只要它们保持接近)。

我对离散事件模拟非常陌生,我想了解,我们如何在C#编程中做到这一点?创建模型需要哪些步骤。我知道图形和其他东西。

2 个答案:

答案 0 :(得分:4)

建议新来者:

使用操作系统计时器或线程不是离散事件模拟应该起作用的方式。使用其中一个作为构建块可能会产生误导或明显错误。

答案 1 :(得分:3)

使用计时器(将工具箱中的一个拖到设计器中的表单,或者如果您愿意,可以在代码中实例化)。双击计时器在代码中设置_Tick事件,该事件将每N毫秒触发一次(计时器的.Interval属性控制此事件)。将.Interval设置为1000(1秒),并使用跟踪X和Y坐标中自己位置的对象。

使用Random对象生成球的下一个位置变化的方向,并在计时器的_Tick事件内,更新每个球的位置变量。

使用原始线程也是可能的,但是Timer可以为您提供一些功能而无需自己管理所有内容。