我建立了一个从起始线到目标线的行人移动的简单模型,我想使用XY坐标(从X=150到X=350,Y是相同的)找出某个区域中移动的智能体的数量。
该事件的操作是获取该区域中的代理计数,并设置变量crowd1的值:
crowd1=count(agents(), p-> p.getX()>150 && p.getX()<350)
问题是它始终为0,即使在模拟中移动的也是如此。
发布于 2018-08-05 06:59:25
您的环境中没有代理,因为您尚未创建任何代理类型...为了让您的代码正常工作,您需要在您的环境中注册一个行人群体(这意味着您必须创建代理类型并将其作为填充添加到main中),然后您必须将在pedSource中创建的代理添加到自定义群体中。
否则,您可以使用以下代码:
count(pedGoTo.getPeds(),p->p.getX()>150 && p.getX()<350)
https://stackoverflow.com/questions/51688718
复制相似问题