# ISKernel:navpath (Data Type)

navpath is deprecated and is not supported. There may be bugs in it. Please use LavishNav instead

## Members

• point3f Point[#]: Retrieves a point on the path. (Valid # is 1-Points)
• string PointName[#]: Retrieves the original name of a point on the path. (Valid # is 1-Points)
• int Points: The total number of points on this path
• int NearestPoint[x]: Retrieves the number of the nearest point on the path to location (x,0,0)
• int NearestPoint[x,y]: Retrieves the number of the nearest point on the path to location (x,y,0)
• int NearestPoint[x,y,z]: Retrieves the number of the nearest point on the path to location (x,y,z)

## Methods

• Clear: Resets the path so it contains no points
• GetPath[world,point a,point b]: Gets the shortest path from point A to point B (clearing is not required, it is done automatically)
• GetPath[world,point a,point b,additional points ...]: Gets the shortest path from point A to point B to point C to point D ad infinitum (clearing is not required, it is done automatically)
• Reverse: Reverses the path

NULL

## Examples

### Declare a NavPath variable

• declare PathHome navpath
This command will declare a navpath variable with the name "PathHome"

### Find shortest path from point a to point b

• NavPath:GetPath[earth,detroit,cincinatti]
This command will get the shortest path from "detroit" to "cincinatti" in the world "earth"

### Find the nearest point to a given location

• echo Nearest Point: \${NavPath.NearestPoint[123,432,-222]}
This command will find the nearest point to the given X,Y,Z and returns the Point index #

### Find total number of points in a path

• echo Total Points: \${PathHome.Points}
Output
```Total Points: 47
```

### List the name of all points

Sample code
```declare x int 1
do
{
echo Point \${x}: \${PathHome.PointName[x]}
}
while (\${x:Inc}<=\${PathHome.Points})
```

### Reverse a path

• PathHome:Reverse
This command will change a path that goes from point A to B to C to now be from C to B to A