ISKernel:navpath (Data Type)

From Lavish Software Wiki
Jump to navigation Jump to search

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

Description

This data type gives access to Navigation Path information. The methods control Navigation Path information.

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

Returns

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

See Also