#javascript #math #geometry
#javascript #математика #геометрия
Вопрос:
Я не смог найти этот вопрос здесь, хотя он кажется простым.
допустим, я хочу вычислить процент от общего расстояния, когда я знаю начальную и конечную позиции, т.Е.:
function getPercentage(startpos,endpos,currentpos)
{
var distance = endpos-startpos;
return (currentpos/distance)*100;
}
легко, но уже очень поздно, кофе не работает что произойдет, если startpos или текущий pos находится на отрицательной оси, т.Е.
startpos = -734;
endpos = 65;
currentpos = -38;
стоит отметить, что любая позиция может находиться либо на положительной, либо на отрицательной оси в любой точке.
на каком проценте расстояния находится currentpos…. Кто-нибудь может бросить мне кость, пожалуйста, сейчас 1 час ночи
Ответ №1:
Вы забыли также перевести текущую позицию.
function getPercentage(startpos, endpos, currentpos)
{
var distance = endpos - startpos;
var displacement = currentpos - startpos;
return (displacement / distance) * 100;
}
Ответ №2:
Простая вещь, которую можно сделать, это сместить позиции так, чтобы startpos стал нулевым:
endpos = endpos - startpos;
currentpos = currentpos - startpos;
var perc = currentpos/endpos*100;