Логическое продолжение предыдущей статьи.
Как можно догадаться из названия, в этот раз покатим прямоугольное :)
Собственно отличие от квадратного тут только в том что длины сторон у нас отличаются , и обойтись вот такой простой формулой уже не получится
Подразумевается, что вы ознакомлены с предыдущей статьей и понимаете всю суть, поэтому тут затронем только самое важное для реализации текущей задачи.
В нашем случае у нас спрайт размерами 64 х 128 пикселей.
Суть подхода - сложение, при достижении поворота на 90 градусов длины последующей стороны к предыдущим данным. Например повернули на 90 - прибавили 64, повернули еще на 90 - прибавили 128.. и так далее «по кругу»…
Соответственно создаем массив , в который занесем длины всех четырех сторон. Можно конечно занести только две, так как они одинаковые , и потом в коде это повторять, но оставим это для «домашней работы».
Так как нам потребуется сумма после сложения длин сторон - заводим переменную SUMM
Ну и последнее что требуется сделать - добавить еще одну переменную MEM. Она будет помнить текущий оборот спрайта (помним что мы считаем обороты в отдельной переменной) , и как только переменная оборота изменится - мы либо прибавим очередную длину стороны , либо наоборот вычтем.
Ну и дальше всё просто. Заводим все наши новые данные в код.
К каждой строке я написал небольшой комментарий, думаю вы легко поймете что к чему.
На этом всё. В качестве «домашки» можете накидать код который будет катать треугольник, или пятиугольник с разными углами сторон.
Ставьте лайк, подписывайтесь на канал, вступайте в группу в ВК, и не забывайте что у нас есть дискорд сервер.
Удачи в изучении годо !