Разрабатываю логическую игру про шестеренки, столкнулся с проблемой точной сцепки шестеренок так чтобы зубцы попадали правильно друг между друга.
Пространство 2D, две шестеренки, диаметры бывают разные(кол-во зубцов тоже). К первой цепляем вторую. Первая будет иметь параметры большими буквами. Вторая-маленькими. R и r - радиусы, количеством зубцов T и t, W и w - угол поворота (360градусов-полный круг).
Вся загвоздка чтобы учитывать взаимное расположение X,Y центров шестеренок от этого зависит насколько надо дополнительно довернуть угол чтобы зубцы не налезли друг-на-друга.
Вот картинки проиллюстрировал что имеется ввиду:

