我试图找到一个条件,以选择输出的基础上,两个地理信息系统点之间的距离。我的网络包括一个有轨电车与人,我希望我的人下车在电车站最近的房子。电车在一个反回路中移动,我想要放置条件,使人在正确的有轨电车站下车。你能帮我一下吗?
我已经尝试过distanceByRoute了,但是我不知道如何通过状态图或在selectOutput.在这里输入图像描述中为它形成一个条件。
发布于 2019-05-20 09:29:47
假设
循序渐进

//initialize with first station
Station nearestStation = stations.get(0);
double distanceToNearestStation = passenger.home.distanceByRoute(nearestStation);
double currentDistance;
for(Station station:stations){
currentDistance = passenger.home.distanceByRoute(station);
//save it if you find a closer station
if( currentDistance < distanceToNearestStation){
nearestStation = station;
distanceToNearestStation = passenger.home.distanceByRoute(station);
}
}
return nearestStation;您也可以在有轨电车内部和GISPoint代码中使用nextStation变量,而不是使用Station。
getNearestStation(agent).equals(container.nextStation)

附加注意事项
为了减少距离计算的次数,在每个乘客初始化时只执行一次getNearestStation,并将其保存在一个变量中,而不是每次通过dropoff块时计算它。
发布于 2019-05-22 12:48:55
tramCollection这里是我收集的电车站(在地理信息系统/INode)位于我的地图上的主要。
https://stackoverflow.com/questions/56195495
复制相似问题