NavMeshAgent.CalculatePath
CalculatePath(targetPosition: Vector3, path: NavMeshPath): bool;
bool CalculatePath(Vector3 targetPosition, NavMeshPath path);
def CalculatePath(targetPosition as Vector3, path as NavMeshPath) as bool
Parameters

targetPosition The final position of the path requested.
path The resulting path.
Returns
bool True if a path is found.
Description

Calculate a path to a specified point and store the resulting path.

This function can be used to plan a path ahead of time to avoid a delay in gameplay when the path is needed. Another use is to check if a target position is reachable before moving the agent.
	var target: Transform;

	private var agent: NavMeshAgent;

	function Start () {
		agent = GetComponent.<NavMeshAgent>();
		var path: NavMeshPath;
		agent.CalculatePath(target.position, path);
		
		if (path.status == NavMeshPathStatus.PathPartial) {
			// The target cannot be reached...
		}
	}
using UnityEngine;
using System.Collections;

public class Example : MonoBehaviour {
    public Transform target;
    private NavMeshAgent agent;
    void Start() {
        agent = GetComponent<NavMeshAgent>();
        NavMeshPath path;
        agent.CalculatePath(target.position, path);
        if (path.status == NavMeshPathStatus.PathPartial) {
        }
    }
}
import UnityEngine
import System.Collections

public class Example(MonoBehaviour):

	public target as Transform

	private agent as NavMeshAgent

	def Start() as void:
		agent = GetComponent[of NavMeshAgent]()
		path as NavMeshPath
		agent.CalculatePath(target.position, path)
		if path.status == NavMeshPathStatus.PathPartial:
			pass