По просбе развить тему с перемещением колеса:
Пример формуировки задачи:
Получить зависимость вращения цилиндра определенного радиуса от премещения по траектории, согласно пройденному расстоянию вдоль нее.
Траектория задается анимацией корпуса к которому прилинкованно колесо
Код:
global cyl_y
global prevTime
if cyl_y == undefined or prevTime == undefined do (cyl_y = 0; prevTime = currentTime)
d1 = at time (prevTime) $Cylinder01.pos
d2 = at time (currentTime) $Cylinder01.pos
d = distance d2 d1
c2 = (DegToRad (360. * ( (d) /(2.0 * Pi * $Cylinder01.Radius))) )
cyl_y += c2
prevTime = currentTime
cyl_y
Недостатки:
-Не учитывается обратное движение