Patent ID: 6459987
Filing Date: 2002-10-01
Classification: G01C

Abstract:
A method for generating a backtrack from a plurality of data points which have been stored in a memory of a Global Positioning System, said data points having a first, last and intermediate data points corresponding to geographic positions, the method comprising the steps of:initializing a counter C to a value of 1, said counter C corresponding to a memory location on a memory stack; storing said last data point in said memory stack at a first memory location; assigning said last data point to a variable E; initializing a stack counter N to a value of 2; assigning said first data point to a variable B; comparing said counter C to zero; conducting the following steps if said counter C is greater than zero: computing a straight line from said variable B to said variable E; computing a shortest distance for each of said intermediate data points from said straight line, thereby having a plurality of shortest distances corresponding in a one to one relationship to said intermediate data points; determining the longest of each of said shortest distances and assigning said intermediate data point corresponding to said longest distance to a variable L and assigning said longest distance to a variable D; comparing said variable D to a threshold value; increasing the value of counter N by one, storing said variable L in said memory stack at memory location S(C), assigning the value of variable L to variable E, and returning to said comparing said counter C to zero step; if D is greater than said threshold value; decreasing the value of counter C by one, assigning the value of variable E to variable B and assigning the value of stack memory location S(câˆ’1) to variable E, and returning to said comparing said counter C to zero step; if D is less than or equal to said threshold value; conducting the following steps if variable C is less than or equal to zero; comparing N to a predetermined memory limit; increasing said threshold value by a predetermined value, and returning to initializing a counter C step; if N is greater than said memory limit; and navigating to said first position utilizing said positions stored in said stack as way-points for said global positioning system.