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

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

Демо софт / Квадратный калейдоскоп

  • На этом уроке мы будем работать с графикой.
    На панели нарисуем графические примитивы
    и симметрично их многократно дублируем.
    Прежде чем начать писать программу,
    почитай о Калейдоскопе на Википедии.

    Задание:
    Написать квадратный калейдоскоп.
  • Дата отправки отчёта: 21 февраля 2018 г.
  • Задание выполнено: за 18 час. 45 мин.
  • Чему научился: Урок супер!!!
    Он на порядок отличается от других в данном курсе.
    Очень понравилось создание объектов с выводом на экран.
    Делал сначала по видео (сам бы еще в силу опыта так не смог). После создания полного проекта, разобрался в отладчике что и как работает “до винтика” в написанном алгоритме.
    У знал о новом для меня элементе Panel на Windows Form.
    Попрактиковался в создании класса (описание функций, вызова данных функций из формы, передача и обработка параметров)
    После всего решил добавить новый объект для вывода в панель. Выбрал для себя Poligon (многоугольник).
    Искал информацию из всевозможных источников интернет, пробуя то один, то другой способ, пока не получилось…Почему то во многих источниках используется массив типа PointF[]. Я использовал Point[], все вывелось без проблем…
    Инициализировал массив для нового объекта в классе BOX. Предопределил его на 7 значений (точек) – нравится число 7 )))
    В “enum Figure” добавил новую фигуру – многоугольник. Соответственно, расширил Case, где добавил цикл с рандомным добавлением координат точек в массив.
    Создал функцию drawPolygon(), где по аналогии с другими фигурами добавил цвет и массив созданных точек.
    Подводя итог могу сказать, что самое главное – интересно составленное задание…Снова не заметил, как закопался в изучение вопроса…
  • Что было сложным: Сложно пытаться угнаться за видео...Иногда "каша" в голове.
    Правда, когда уже в спокойном режиме смотришь на все написанное и разбираешь алгоритм оказывается 3 -4 небольших функции - а писал несколько часов)))
  • Оценка видео-уроку:
Отчёт от 16218 за Демо софт / Квадратный калейдоскоп


Отчёт от 16218 за Демо софт / Квадратный калейдоскоп




Оцени работу

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

16218. --
Дмитрий
Дмитрий
ответить
→  chokayes  # Демо софт / Квадратный калейдоскоп / 2018-02-22 08:07

Спасибо.
Чем больше отходишь от главной задачи тем больше расширяешь кругозор....Ну и соответственно все выше и выше ставишь себе требования к разработке. Интересно при этом наблюдать за своим ростом при написании программ...Даже на небольшом  отрезке времени можно увидеть разницу написания своих же программ при активном (интенсивном) занятии)))
С панелью понял, что можно оперативнее работать с группой элементов...Банально даже отображать видимость всех объектов на панели и т д...Ранее в задачах как раз хотел использовать что то подобное, но решил что все по порядку. Вот теперь знаю как и буду применять))).


10558. --
Иван Воронин
Иван Воронин
ответить
→  Дмитрий  # Демо софт / Квадратный калейдоскоп / 2018-02-22 10:25

Ну угнаться сложно на вебинаре в реальном времени, а на видео можно и паузу нажать =)
Молодец, отлично поработал, по поводу PointF() и Point() отличие лишь в букве F, которая как бы намекает, что передаваемые значения типо float, а не int. А значит более плавная анимация может быть реализована, если тебе анимация не нужна, то Point() достаточно.


10558. --
Иван Воронин
Иван Воронин
ответить
→  chokayes  # Демо софт / Квадратный калейдоскоп / 2018-02-22 10:27

По поводу размещения объектов на форму без панели, вопрос спорный, панель несёт в себе определённую задачу, особенно если панелей более одной на форме, а если вся форма это плацдарм для творчества, то панель по сути и не нужна, можно использовать что-то другое, более подходящее.


16218. --
Дмитрий
Дмитрий
ответить
→  Иван Воронин  # Демо софт / Квадратный калейдоскоп / 2018-02-22 11:13

Иван, спасибо.
Ну по сути если что то не понятно, то нажимаю на паузу, отматываю и смотрю еще раз, не без этого .... Для себя просто определил критерий , - успевать делать параллельно ... Так быстрее схватываешь и учишься оперативно понимать о чем идет речь...
Спасибо за пояснение Point() и PointF() - теперь буду знать...
С панелями - безусловно так и есть...Применять нужно согласно требованиям конкретного задания, а не втыкать теперь как основу для дальнейшей разработки во все проекты.  Это я  для себя сделал открытие нового элемента WF и определил как его можно будет его применять в дальнейшем)


  • Отчёт оценивали:
    6452Кирилл Шмойлов+1   4038Ivan+1   11868Андрей Суслов+1   17093jin+1   459Сергей Сергеевич+1   10494Алексей В.+1   9980Timoha+1   4395Денис+1   9156Dimon+1   10558Иван Воронин+1   8275Tekashnik+1   9014Николай Денисов+1   10673Алексей Хонин+1   11353AlliZzeN+1   8707Володимир+1  

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





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

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

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

Ты в любой момент сможешь отписаться от рассылки.


Научился: Интересная программа. Теперь я представляю как можно рисовать изображения на форме.



Научился: Очень многому. Создание и использование графики, создание объектов "на лету", рисование графических примитивов.
Трудности: Понимать где в каком объекте какой ипользуется тип данных
Отличный и достаточно насыщенный для меня урок.