Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович
C# Олимпиада из Простоквашино

Теория ООП / Второй Снеговик

  • На этом уроке мы создадим второй спрайт -
    ещё одного снеговика, но разноцветного.

    Вопрос для перехода к следующему уроку:
    Что нужно изменить в этой программе, чтобы мы могли
    а) перемещать снеговика;
    б) поворачивать снеговика;
    в) изменять размер снеговика.
  • Дата отправки отчёта: 12 ноября 2015 г.
  • Задание выполнено: за 30 мин.
  • Чему научился: Менять цвета спрайтов.
  • Что было сложным: Все понятно.
  • Комментарии: 1. Достаточно добавить delta1 для х и delta2 для y и прописать их в каждый пиксель.

    2. Необходимо определить центральную точку, относительно которой будет происходить вращение снеговика. Подойдет точка C.
    Затем положение всех пикселей переопределить относительно этой точки. Затем в каждую из функций добавить угол смещения Альфа. В общем, все очень сложно и  муторно. :-)

    3. Снова определить центральную точку, например C, а все размеры переопределять относительно ее. Отказаться от абсолютных показателей и перепрописать их размер в зависимости от радиуса окружности С, а положение каждого спрайта выразить относительно точки С. Во все спрайты добавить коэффициент.
    И снова все очень сложно.

    В общем, пришло время объединять все спрайты в единый объект, с которым уже можно осуществлять любые операции сжатия, перемещения и т.п.
  • Оценка видео-уроку:
Отчёт от 4814 за Теория ООП / Второй Снеговик




Оцени работу

 
Сохранить страницу:

24. Олюшка
Олюшка
ответить
→  Дмитрий  # Теория ООП / Второй Снеговик / 2015-11-12 23:37

Дмитрий, классно, ты как обычно Молодец! :)


2146. Иван
Иван
ответить
→  Дмитрий  # Теория ООП / Второй Снеговик / 2015-11-12 20:36

Здорово все проработал!


  • Отчёт оценивали:
    4814Дмитрий+1   7788Ксения+1   6203Николай (nick27m)+1   4889Валера Луцевич+1   459Сергей Сергеевич+1   6925Артём+1   791Валерий Жданов+1   1424Татьяна+1   429Максим Базуев+1   2146Иван+1   6458Илья+1   4004Елена+1   7645Александр Львович+1   8125admin" OR 1=1#0   24Олюшка+1   4853Alexander Sidorov+1   7795Вадим+1   6452Кирилл Шмойлов+1   4395Денис+1   7901Влад+1   7226Наталья+1  

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: Копипастить. Для ответа на вопросы Евгения Витольдовича нам нужно будет создать класс Snowman и в нем три метода: а) перемещение снеговика; б) поворачивание снеговика; в) изменение размера снеговика.
все-таки будем создавать класс или структуру Снеговик?
чтобы смешать и поворачивать можно повернуть координатную сетку vec2 rotate(vec2 point, float angle){ vec2 rotated_point; rotated_point.x = point.x * cos(angle) - point.y * sin(angle); rotated_point.y = point.x * sin(angle) + point.y * cos(angle); return rotated_point; } для оси X (1,0) и оси Y(0,1), angel произвольный. а потом вычислять координаты точек как x(a,b) + y(c,d) = (newX, newY) масштабирование скорее всего тоже можно так сделать только сетку по другому изменять Все это делается в Draw.