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

Формула программиста
основатель — Волосатов Евгений Витольдович
Новый видеокурс по Git

Графические циклы / VIP. Узоры на окружности

  • На этом уроке мы создадим динамические
    графические круговые узоры, получится
    такая красота, что глаз не оторвать!

    Урок создан по материалам статьи:
    http://habrahabr.ru/post/274471/

    * Подсказка, как сделать отображение узоров без мигания:
    ArcLine (fon, n * 2, n * 2 * (coeff - step));
    ArcLine (pen, n * 2, n * 2 * coeff);
  • Дата отправки отчёта: 6 января 2016 г.
  • Задание выполнено: за 1 час. 20 мин.
  • Чему научился: Создавать анимированные узорчики)
  • Что было сложным: Ничего
  • Комментарии: От мигания избавился следующим образом     
    private void ArcDelLine(int k, float alfa, float beta)
                {

                    float x1 = 150 + (float)Math.Cos(alfa / 180.0 * Math.PI) * 150;
                    float y1 = 150 - (float)Math.Sin(alfa / 180.0 * Math.PI) * 150;

                    float x2 = 150 + (float)Math.Cos(beta / 180.0 * Math.PI) * 150;
                    float y2 = 150 - (float)Math.Sin(beta / 180.0 * Math.PI) * 150;
                    if ( k == 1)
                    {
                        g.DrawLine(pen, x1, y1, x2, y2);
                    }
                    else
                    {
                        g.DrawLine(fon, x1, y1, x2, y2);
                    }

    private void button29_Click(object sender, EventArgs e)
                {
                  int total = 180;
                    for (float coeff = 1; coeff < total; coeff += 0.2f)
                    {

                        for (int n = 0; n < total; n++)
                            {
                              ArcDelLine(1, n * 2, n * 2 * coeff);
                            }
                        Sleep2(); Sleep2(); Sleep2();
                      for (int n = 0; n < total; n++)
                          {
                            ArcDelLine(2, n * 2, n * 2 * coeff);
                        }
                    }
                }
  • Оценка видео-уроку:
Отчёт от 6484 за Графические циклы / VIP. Узоры на окружности




Оцени работу

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

1. Евгений Витольдович
Евгений Витольдович
ответить
→  Вячеслав  # Графические циклы / VIP. Узоры на окружности / 2016-01-06 00:54

Можно и так.
Порефакторить ещё немножко можно, например:
g.DrawLine (k == 1 ? pen : fon, x1, y1, x2, y2);


  • Отчёт оценивали:
    6925Артём+1   1Евгений Витольдович+1   459Сергей Сергеевич+1   6195sergey+1   7276Ильшат+1   4992Николай+1   4004Елена+1   7645Александр Львович+1   689Igorenzia+1   4467Alcatraz+1   8005Александр+1   8275Tekashnik+1   4435Мурад+1   5489Serg+1   6203Николай (nick27m)+1   8407Наталья+1   4395Денис+1   Посетитель+1   1710Степан+1   3664данила+1  

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: буду иметь ввиду, что за простыми решениями скрываются великие вещи :)
Трудности: самому , понятное дело до такого не догадаться было. а после просмотра - все очевидно
Красота неописуемая :)
Научился: Создавать залипательные анимации.
Трудности: Всё просто. Немного повозился с реализацией остановки и настройки.
Всё красиво, но не понравилось, что вся программа висит, пока не отработает полный цикл. Поэтому сделал дополнение, кнопку 22а. По нажатию она запускает анимацию, по повторному останавливает (видно на видео). Рядом записывают значения коэффициента и шага, которые можно менять на ходу. Значения проверяются при парсинге и сбрасываются на 1 и 0,02 (видно в видео) Если шаг поставить 0, то можно смотреть фигуры, которые получатся с определенным коэффициентом. Предвидя возможные вопросы - так, как сделано в видео я реализовал в первую очередь (второй скриншот). Потом уже пошли дополнения =)
Смотреть видеозапись: https://www.youtube.com/watch?v=k8QM0HSIaSs