我必须使用anylogic 8学习版来模拟高速公路上的交通,我想做的是基于道路控制车速,例如,如果我的汽车通过CarMove从Road1移到Road 2,我想更改进入道路时的速度...我试图使用CarMoveTo的“进入”和“退出”,但没有成功,甚至尝试使用Car API也没有成功。我想我错过了编写以下代码的合适位置:
if (getRoad().equals("Road2"))
setPreferredSpeed(0, MPH);
有帮助吗????
答案 0 :(得分:0)
首先,我认为您的getRoad()。equals(“ Road2”)可能有问题。 getRoad根据intelliSense返回一个道路对象,而不是字符串。尝试取出引号。
要在特定道路上设置速度,请尝试以下操作之一: 1)使用停止线,并在越过该线时,调用您的代码以设置速度。无需弄清楚您所走的路,因为停靠线本质上就是您所关注的路。 2)使用路网描述符,然后将您的代码称为“进入道路”
如果移动到仅适用于road2,则也可以在此处进行设置。但是,如果您要进行封锁的举动使汽车的总体目的地恰好通过了road2,那么这将不是正确的地方,因为它只会在汽车首次进入封锁线时被调用。