Я пишу довольно простой скрипт на JavaScript с использованием canvas.Он рисует центральный узел, который тянет к себе все окружающие узлы.Это прекрасно работает, однако мне нужно, чтобы каждый узел отталкивал друг друга.
Я собираюсь сделать это, увеличив скорость каждого узла по отношению друг к другу, так что в конечном итоге они должны выровняться и в конечном итоге выглядеть как цветок.Должно быть достаточно силы, чтобы не дать им ударить друг друга или погрузиться в центральный узел, не отлетая вдаль.
Я просто не могу понять, как я могу получить большее число, когда они ближе.
Таким образом, если два узла расположены на расстоянии 10 пикселей друг от друга, это добавит 5 к одной из их скоростей x.Но если они находятся на расстоянии 1000 пикселей друг от друга, это почти ничего не добавит к силе одного из узлов.
Кто-нибудь знает математическое уравнение, которое я могу использовать, чтобы решить подобные вещи, или, может быть,толчок в правильном направлении?
TL; DR: В зависимости от того, насколько близки два значения x, мне нужно увеличить скорость x одного узла, чтобы они разошлись, но в конечном итоге выровнялись,Это просто математика, которую я не могу взломать, у меня есть почти весь JavaScript, включая реализацию скорости.
Спасибо, и извините, это немного многословно.