通过在2D视图中单击来在运行时访问特定代理,进行调试

问题描述

我正在调试模拟。有一个病人(代理人)被卡在不应放置的地方。我想查看患者在状态图中的位置,但是每次在“开发人员”面板中浏览代理列表并进行调查工作以准确查明哪个代理卡在其中是一件很麻烦的事情。是否可以使患者可点击,以便我可以单击被卡住的患者并直接从2D视图访问状态图?

Picture of simulation's 2D-view

解决方法

首先,您需要您的Person代理的2D表示(当前,您似乎使用3D对象,但请保留它)。在您的座席类型中的3D人下方绘制一个小矩形。

在其“点击时”属性中,输入_origin_VA.navigateTo()

在运行时,您现在可以单击单个代理(仅在2D视图中,从不在3D中),它将跳入其中。

了解有关View Areas的更多信息以进一步完善此方法,请参阅帮助。

还有我自己的博客中的更多内容: https://www.benjamin-schumann.com/blog/2016/3/28/anylogic-user-interface-vol-4-the-view-area

https://www.benjamin-schumann.com/blog/2016/4/29/a-tiered-interaction-approach-to-anylogic-animation

https://www.benjamin-schumann.com/blog/2016/4/22/dynamic-animation-tweaks-for-anylogic

https://www.benjamin-schumann.com/blog/2016/4/14/build-your-own-level-up-button-in-anylogic