A class that represents a TaskExecuter's navigator. In other words, the object that manages travel tasks for the task executer.


getCost A generic method that gets route costing information associated with a TaskExecuter traveling from some origin to some destination.


Do no remove, this fixes the anchor on


double getCost( Variant origin , Variant destination , Variant info )



Navigator-dependent parameter defining the origin. This can be the following:

Default Navigator

  • Task executer reference
  • .

Node Network Navigator

  • Task executer reference
  • Network node reference
  • Reference to an object connected to a network node

AGV Navigator

  • Task executer reference
  • Reference to a control-point-connected object
  • AGV path reference
  • Control point reference
  • An array with up to three values:
    1. Task executer, path, control point or control-point-connected object
    2. An offset value representing an offset distance from that object on its associated path
    3. Boolean value defining whether or not a given AGV is oriented 'backward' on the path. 1 means backward, 0 or absent means forward. Note that the cost may be different for forward vs. backward oriented AGVs when the path system has orientation constraints defined, or if cost is speed-based and backward speed is different than forward speed.

A* Navigator

  • Task executer reference
  • Object reference
  • An array of three numbers representing a x/y/z model location

GIS Navigator

  • Task executer reference
  • GIS point reference
  • Reference to an object connected to a GIS point

Navigator-dependent parameter defining the destination. This can generally take the same values as the origin parameter, with the following exceptions:

  1. It should not be a reference to a TaskExecuter.
  2. For AGVs, a third array value (AGV orientation) is not used.

Navigator-dependent parameter to modify how the cost is calculated, as described below:

AGV Navigator

If this parameter is a reference to a TaskExecuter, it will assume that agv-dependent cost calculations are to be associated with that object traveling in its current state, most importantly its current load type. This is useful in calculating speed-based costs when speed is dependent on load type.

GIS Navigator

A value of 1 will return distance, a value of 2 will return duration, and a value of 3 will return general cost.


A generic method that gets route costing information associated with a TaskExecuter traveling from some origin to some destination.

The implementation of this method is polymorphic as it depends somewhat on which navigator it is being called on. For example, a default navigator's getCost() will only work if you pass a TaskExecuter as the origin, and some other object as a destination, and it will return the same result as if you were to call distancetotravel(). On the other hand, a network navigator can take a network node as an origin and a network node as a destination. In this case, the result is the same as calling getnetworkdistance().