float lastAxisDistance = axisDistance(
lastNode == null ? null : lastNode.location(), current);
if (_direction == Direction.UP || _direction == Direction.DOWN)
offAxisDistance = Math.abs(current.x() - startLoc.x());
else
offAxisDistance = Math.abs(current.y() - startLoc.y());
// if we've strayed outside of the safe zone, or we've backtracked from our last position,
// disqualify
if (offAxisDistance > _offAxisTolerance) setState(State.UNQUALIFIED);
else if (lastAxisDistance < 0) backtracked(node, -lastAxisDistance);