А дальше я просто не понял откуда взялось this.tdx = -this.x*this.gravity/dist
this.tdx = -this.x*this.gravity/dist
Пе́рвая косми́ческая ско́рость (кругова́я ско́рость) — минимальная (для заданной высоты над поверхностью планеты) горизонтальная скорость, которую необходимо придать объекту, чтобы он совершал движение по круговой орбите вокруг планеты и не начал падать [1]. Первая космическая скорость для орбиты, расположенной вблизи поверхности Земли, составляет 7,91 км/с[2]. Впервые была достигнута космическим аппаратом СССР 4 октября 1957 г. (первый искусственный спутник)[3].
// вычисляем вектор движения
const q = this.speed/this.dist;
this.dx = this.y*q;
this.dy = -this.x*q;
// находим вектор силы притяжения
this.tdx = -this.x*this.gravity/dist;
this.tdy = -this.y*this.gravity/dist;