ISKernel:navpath (Data Type)
Revision as of 18:27, 9 October 2005 by Sparr0 (talk | contribs) (→Find shortest path from point a to point b)
Contents
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 PathHome navpath
- This command will declare a navpath variable with the name "PathHome"
Find a path from point a to point b
- NavPath:GetPath[earth,detroit,cincinatti]
- This command will get a 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