温馨提示:本文翻译自stackoverflow.com,查看原文请点击:anylogic - Iterating through objects in project tree
anylogic

anylogic - 遍历项目树中的对象

发布于 2020-04-21 22:15:40

如标题所述:我想知道是否有可能遍历AnyLogic项目的对象树。

如果我提供更多信息,可能会有所帮助。采取以下项目树:

项目树

我想检查模型中的每个延迟对象,当前是否包含代理。一种可能性是将所有延迟对象手动添加到集合对象,并遍历集合的元素。但是,这种方法将导致大量手动工作,因为我需要对其他对象类型执行类似的请求。我认为,最方便的解决方案是遍历项目树并使用“ isinstanceof”标识要分析的对象。

有谁知道需要类似的较少工作的解决方案或其他方法?

最好的祝福,

塞巴斯蒂安

查看更多

提问者
Slango
被浏览
53
Benjamin 2020-02-06 16:32

您可以这样做遍历Main中的所有对象:

for (Object currObject : ((Agent)getRootAgent()).getEmbeddedObjects()) { if (currObject instanceof Delay) { // you found a Delay object } }