cz.cuni.amis.pogamut.ut2004.agent.navigation.navmesh.pathfollowing
Class NavMeshRunner

Package class diagram package NavMeshRunner
java.lang.Object
  extended by cz.cuni.amis.pogamut.ut2004.agent.navigation.navmesh.pathfollowing.NavMeshRunner
All Implemented Interfaces:
IUT2004PathRunner

public class NavMeshRunner
extends Object
implements IUT2004PathRunner

Runner for navigation with navigation mesh. Evolved from KefikRunner. We assume that we work with path generated by NavMesh path planner. It should contain point on the navigation mesh, which should be navigable by simple running, and off-mesh connections, which we will handle as original runner. Jump computing is working with exact locations, no reserves. Needed edge should be achieved by delay in executing the jump.

Author:
Bogo

Field Summary
protected  WallCollision lastCollidingEvent
          Last received wall colliding event
 
Constructor Summary
NavMeshRunner(UT2004Bot bot, AgentInfo agentInfo, AdvancedLocomotion locomotion, Logger log, NavMesh navMesh)
          Constructor.
 
Method Summary
 void reset()
          Resets the runner state.
 boolean runToLocation(Location runningFrom, Location firstLocation, Location secondLocation, ILocated focus, NavPointNeighbourLink navPointsLink, boolean reachable, boolean forceNoJump)
          Called iteratively to reach the 'firstLocation'.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

lastCollidingEvent

protected WallCollision lastCollidingEvent
Last received wall colliding event

Constructor Detail

NavMeshRunner

public NavMeshRunner(UT2004Bot bot,
                     AgentInfo agentInfo,
                     AdvancedLocomotion locomotion,
                     Logger log,
                     NavMesh navMesh)
Constructor.

Parameters:
bot - Agent's bot.
agentInfo -
locomotion -
log -
navMesh -
Method Detail

reset

public void reset()
Description copied from interface: IUT2004PathRunner
Resets the runner state.

Called before the navigator turns its attention to another location.

Specified by:
reset in interface IUT2004PathRunner

runToLocation

public boolean runToLocation(Location runningFrom,
                             Location firstLocation,
                             Location secondLocation,
                             ILocated focus,
                             NavPointNeighbourLink navPointsLink,
                             boolean reachable,
                             boolean forceNoJump)
Description copied from interface: IUT2004PathRunner
Called iteratively to reach the 'firstLocation'. This method should get the bot to the 'firstLocation'.

The 'secondLocation' is the location that will most likely be pursued next.

Specified by:
runToLocation in interface IUT2004PathRunner
Parameters:
runningFrom - location we're running from (i.e., where the bot may safely return), may be null
firstLocation - where the bot should run to
secondLocation - where the bot will the most likely continue its run
focus - where the bot should be looking while running
navPointsLink - if we are traveling between two NavPoints connected by a link, we will receive the link with movement information here
reachable - NOT USED ANYMORE
forceNoJump - runner MUST NOT jump
Returns:


Copyright © 2015 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.