Вам требуется вычислить самую дальнюю точку от стартовой.
Эта дальняя точка будет конечной, остальные точки построятся автоматически.
Формула:Ri= SQRT((xi-x1)**2+(yi-y1)**2)
Пример изходя из прошлого вопроса:var waypoints = [
"40.7513888888889,-73.9777777777778",
"40.7083333333333,-74.0141666666667",
"40.7752777777778,-73.9769444444444",
"40.7252222222222,-73.9993888888889",
"40.7652777777778,-73.9791666666667"
];
var andrLT = [];
var andrLN = [];
var Ri;
for (i = 0; i < waypoints.length; i++) {
andrLT.push(parseFloat(waypoints[i].split(',')[0]));
andrLN.push(parseFloat(waypoints[i].split(',')[1]));
}
for (i = 0; i < waypoints.length; i++) {
sqrt = Math.sqrt(((40.7791666666667 - andrLT[i])*2 + (73.9583333333333 - andrLT[i])*2)+300);
Ri.push([ sqrt ]);
}
// Узнаем максимальное значение массива точек
console.log(Math.max.apply(Math, Ri));
Вы получили дальнюю точку, далее условиями получите координаты и уже реализуете механизм.