View Javadoc

1   package cz.cuni.amis.pogamut.ut2004.agent.navigation.timeoutestimator;
2   
3   import java.util.List;
4   
5   import cz.cuni.amis.pogamut.base.agent.navigation.IPathExecutionEstimator;
6   import cz.cuni.amis.pogamut.base3d.worldview.object.ILocated;
7   import cz.cuni.amis.pogamut.base3d.worldview.object.Location;
8   
9   public class UT2004BasicTimeoutEstimator<PATH_ELEMENT extends ILocated> implements IPathExecutionEstimator<PATH_ELEMENT> {
10  
11  	@Override
12  	public double getTimeout(List<PATH_ELEMENT> path) {
13  		if (path == null) return 0;
14  		if (path.size() <= 1) return 5000;
15  		Location loc = path.get(0).getLocation();
16  		double totalDistance = 0;
17  		
18  		for (int i = 1; i < path.size(); ++i) {
19  			totalDistance += loc.getDistance(path.get(i).getLocation());
20  			loc = path.get(i).getLocation();
21  		}
22  		
23  		return 5000 + totalDistance * 5;
24  	}
25  	
26  
27  }