【问题标题】:Pause then resuming simulation in Anylogic在 Anylogic 中暂停然后恢复模拟
【发布时间】:2022-01-13 22:32:09
【问题描述】:

我想给用户一个按钮,让他们在模拟中向前跳 1 小时,然后如果单击播放,则继续运行模型。下面的代码允许用户向前跳一个小时,但是当点击播放时他们无法恢复模拟。

double nextHour = time() + 60;
pauseSimulation();
getEngine().runFast(nextHour); //Runs the model to the next hour when button is clicked

非常感谢任何帮助。

【问题讨论】:

    标签: anylogic


    【解决方案1】:

    尝试在最后一行之后添加runSimulation()。但很可能,这行不通。在这种情况下:

    创建一个动态事件(不是正常事件),在其操作代码中使用 runSimulation() 行。

    在按钮代码中,在runFast... 行之前,写上create_MyDynamicEvent(1, HOUR)。这将在 1 小时后触发并取消暂停模型。

    【讨论】:

      【解决方案2】:

      AnyLogic Support 建议了以下我使用过的解决方案:

      很遗憾,Ben 的建议没有奏效;使用pauseSimulation() 时似乎会导致问题。

      【讨论】:

      • 公平,谢谢分享
      • 您能否将评论从您的答案中移到@Benjamin 答案下的评论中?这将使未来的读者在查看答案时更容易理解反馈的上下文。
      猜你喜欢
      • 2021-11-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      • 1970-01-01
      相关资源
      最近更新 更多