Рубрики
Без рубрики

Первая попытка создания искусства с помощью кода

В продолжение моего первого поста в блоге я хотел узнать о том, как на самом деле получить какую-то визу… С тегами webdev, новички, искусство, java.

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

Что такое обработка?

Обработка – это программное обеспечение с открытым исходным кодом, созданное аспирантами Массачусетского технологического института Беном Фраем и Кейси Реасом, изначально разработанное для обучения программированию в контексте изобразительного искусства. Программа предоставляет интегрированную среду разработки (IDE), которая способна запускать код и отображать результаты в цифровом альбоме для рисования. Хотя обработку можно рассматривать как самостоятельный язык программирования, по большей части она использует язык Java. Однако программа позволяет пользователям переключать режим на другие языки, такие как Javascript или Python.

Холст

Важная деталь, которую следует учитывать перед началом проекта, – это знакомство с вашим холстом. Холст на компьютере, по сути, представляет собой систему координат, в которой точки назначаются пикселю на экране. Однако, в отличие от традиционной системы координат, эта система начинается с (0, 0) в верхнем левом углу. Чтобы установить размер этого холста, используется функция размер (x, y) , достаточно просто, не так ли?

Основные формы

Я обнаружил, что хорошей отправной точкой для создания искусства с помощью кода было знакомство с четырьмя основными формами. Это точка, линия, прямоугольник и эллипс. Хотя это кажется не так уж много, я был приятно удивлен тем, как много вы на самом деле можете сделать, используя только эти четыре формы. Для каждой из этих фигур существуют функции, которые принимают точки координат холста в качестве аргумента, чтобы указать, где они будут отображаться. Эти функции являются:

точка(x, y) линия(x1, y1, x2, y2) прямая (x, y, ширина, высота) эллипс (x, y, ширина, высота)

Статический против Интерактивный

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

С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров, и, как и они, большую часть времени они анимированы. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал по образцу картины Пита Мондриана вместе с ее кодом.

size(500, 500);
background(255);

fill(255, 0, 0);
strokeWeight(6);
rect(0, 0, 215, 215);

fill(255);
strokeWeight(6);
rect(215, 0, 285, 215);

fill(255);
strokeWeight(8);
rect(0, 215, 215, 110);

fill(255);
strokeWeight(8);
rect(215, 215, 285, 110);

fill(255, 255, 0);
strokeWeight(6);
rect(0, 325, 50, 175);

fill(255);
strokeWeight(6);
rect(50, 325, 165, 175);

fill(0, 0, 255);
strokeWeight(6);
rect(215, 325, 150, 150);

fill(255);
strokeWeight(6);
rect(215, 475, 150, 25);

fill(255);
strokeWeight(6);
rect(365, 325, 135, 175);

С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров, и, как и они, большую часть времени они анимированы. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал по образцу картины с помощью Setup и нарисовал его Мондрианом вместе с его кодом.

С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров, и, как и они, большую часть времени они анимированы. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал по образцу картины с помощью PCoding статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз и создавать неподвижное изображение. Настройте и нарисуйте его Мондрианом вместе с его кодом. С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров, и, как и они, большую часть времени они анимированы. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал после рисования с помощью PCODING статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз, и создать стилистически активные эскизы требуют немного большей организации. l изображение. Настройте и нарисуйте его Мондрианом вместе с его кодом. С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров, и, как и они, большую часть времени они анимированы. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал после рисования с помощью PCODING статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз, и создать стиль. Вот где void setup() и void draw() вступают в игру. Интерактивные эскизы требуют немного большей организации. l изображение. Настройте и нарисуйте его Мондрианом вместе с его кодом. С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров, и, как и они, большую часть времени они анимированы. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал после рисования с помощью PCODING статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз, и создать стиль. Вот где

С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров и, как и N, большую часть времени анимируются. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал после рисования с помощью PCODING статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз, и создать стиль. Вот где || void setup() || и || void draw() || вступают в игру. Мне нравится название, настройка void – это то, где вы пишете код. Каждый фрагмент кода в блоке настройки выполняется только один раз. Следующие два изображения являются примерами интерактивных эскизов, которые я сделал вместе с кодом, использованным для их создания. Что касается всего кода в блоке рисования, то он непрерывно зацикливается, что приводит к анимации. е самом начале. шляпа настраивает все, например, размер холста. интерактивные эскизы требуют немного большей организации. l изображение. Настройте и нарисуйте iet Mondrian вместе с его кодом.

void setup() {
  size(750, 750);
  background(0);
}

void draw() {
  if (mousePressed) {
    background(0);
  } 
  stroke(random(0,255), random(0,255), random(0,255));
  line(mouseX, mouseY, 375, 375);
}

void mousePressed(){
  saveFrame();
}

С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров и, как и N, большую часть времени анимируются. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал после рисования с помощью PCODING статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз, и создать стиль. Вот где || void setup() || и || void draw() || вступают в игру. Мне нравится, как указано в названии, настройка void – это когда вы пишете код, каждый фрагмент кода в блоке настройки выполняется только один раз. Приведенные выше изображения явно отличаются, но они были сделаны с использованием одного и того же кода. Следующие два изображения являются примерами интерактивных эскизов, которые я сделал вместе с кодом, использованным для их создания. Что касается всего кода в блоке рисования, то он непрерывно зацикливается, что приводит к анимации. е самом начале. шляпа настраивает все, например, размер холста. интерактивные эскизы требуют немного большей организации. l изображение. Настройте и нарисуйте iet Mondrian вместе с его кодом. С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров и, как и N, большую часть времени анимируются. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал после рисования с помощью PCODING статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз, и создать стиль. Вот где || void setup() || и || void draw() || вступают в игру. Мне нравится, как указано в названии, настройка void – это то, где вы пишете код. Каждый фрагмент кода в блоке настройки выполняется только один раз. Установив координаты x и y линии там, где находился мой курсор мыши, я смог взаимодействовать с программой и получать разные результаты в зависимости от того, как я двигал мышью. Приведенные выше изображения явно отличаются, но они были сделаны с использованием одного и того же кода. Следующие два изображения являются примерами интерактивных эскизов, которые я сделал вместе с кодом, использованным для их создания. Что касается всего кода в блоке рисования, то он непрерывно зацикливается, что приводит к анимации. е самом начале. шляпа настраивает все, например, размер холста. интерактивные эскизы требуют немного большей организации. l изображение. Настройте и нарисуйте iet Mondrian вместе с его кодом. С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров и, как и N, большую часть времени анимируются. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал после рисования с помощью PCODING статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз, и создать стиль. Вот где || void setup() || и || void draw() || вступают в игру. Мне нравится, как указано в названии, настройка void – это то, где вы пишете код, каждый фрагмент кода в блоке настройки выполняется только один раз, также добавлены функции для щелчка мыши, которые сбрасывают холст на чистый лист, а также захватывают изображение прямо перед тем, как оно было удалено. Установив координаты x и y линии там, где находился мой курсор мыши, я смог взаимодействовать с программой и получать разные результаты в зависимости от того, как я двигал мышью. Приведенные выше изображения явно отличаются, но они были сделаны с использованием одного и того же кода. Следующие два изображения являются примерами интерактивных эскизов, которые я сделал вместе с кодом, использованным для их создания. Что касается всего кода в блоке рисования, то он непрерывно зацикливается, что приводит к анимации. е самом начале. шляпа настраивает все, например, размер холста. интерактивные эскизы требуют немного большей организации. l изображение. Настройте и нарисуйте iet Mondrian вместе с его кодом.

С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров и, как и N, большую часть времени анимируются. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал после рисования с помощью PCODING статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз, и создать стиль. Вот где || void setup() || и || void draw() || вступают в игру. Мне нравится, как указано в названии, настройка void – это то, где вы пишете код, каждый фрагмент кода в блоке настройки выполняется только один раз, поэтому я также добавил функции для щелчка мыши, которые сбрасывают холст на чистый лист, а также захватывают изображение прямо перед тем, как оно было удалено. Установив координаты x и y линии там, где находился мой курсор мыши, я смог взаимодействовать с программой и получать разные результаты в зависимости от того, как я двигал мышью. Приведенные выше изображения явно отличаются, но они были сделаны с использованием одного и того же кода. Следующие два изображения являются примерами интерактивных эскизов, которые я сделал вместе с кодом, использованным для их создания. Что касается всего кода в блоке рисования, то он непрерывно зацикливается, что приводит к анимации. е самом начале. шляпа настраивает все, например, размер холста. интерактивные эскизы требуют немного большей организации. l изображение. Настройте и нарисуйте iet Mondrian вместе с его кодом.

С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров и, как и N, большую часть времени анимируются. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал после рисования с помощью PCODING статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз, и создать стиль. Вот где || void setup() || и || void draw() || вступают в игру. Мне нравится название, в котором говорится, что void setup – это место, где вы пишете код, каждый фрагмент кода в блоке настройки выполняется только один раз при более тонком взаимодействии с этой программой, мне очень понравился тот факт, что для получения видимого результата на экране не потребовалось так много времени. Выводы Я также добавил функции для щелчка мыши, которые сбросили бы холст на чистый лист, а также захватили изображение прямо перед тем, как оно было удалено. Установив координаты x и y линии там, где находился мой курсор мыши, я смог взаимодействовать с программой и получать разные результаты в зависимости от того, как я двигал мышью. Приведенные выше изображения явно отличаются, но они были сделаны с использованием одного и того же кода. Следующие два изображения являются примерами интерактивных эскизов, которые я сделал вместе с кодом, использованным для их создания. Что касается всего кода в блоке рисования, то он непрерывно зацикливается, что приводит к анимации. е самом начале. шляпа настраивает все, например, размер холста. интерактивные эскизы требуют немного большей организации. l изображение. Настройте и нарисуйте iet Mondrian вместе с его кодом. С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров и, как и N, большую часть времени анимируются. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал после рисования с помощью PCODING статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз, и создать стиль. Вот где || void setup() || и || void draw() || вступают в игру. Мне нравится название, в котором говорится, что void setup – это место, где вы пишете код. Каждый фрагмент кода в блоке настройки выполняется только один раз. Было интересно посмотреть, как написанный мной код был переведен в визуальный образ. Взаимодействуя с этой программой, я действительно наслаждался тем фактом, что для получения видимого результата на экране требовалось не так уж много. Выводы Я также добавил функции для щелчка мыши, которые сбросили бы холст на чистый лист, а также захватили изображение прямо перед тем, как оно было удалено. Установив координаты x и y линии там, где находился мой курсор мыши, я смог взаимодействовать с программой и получать разные результаты в зависимости от того, как я двигал мышью. Приведенные выше изображения явно отличаются, но они были сделаны с использованием одного и того же кода. Следующие два изображения являются примерами интерактивных эскизов, которые я сделал вместе с кодом, использованным для их создания. Что касается всего кода в блоке рисования, то он непрерывно зацикливается, что приводит к анимации. е самом начале. шляпа настраивает все, например, размер холста. интерактивные эскизы требуют немного большей организации. l изображение. Настройте и нарисуйте iet Mondrian вместе с его кодом. С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров и, как и N, большую часть времени анимируются. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал после рисования с помощью PCODING статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз, и создать стиль. Вот где || void setup() || и || void draw() || вступают в игру. Мне нравится название, в котором говорится, что настройка void – это то, где вы пишете код, каждый фрагмент кода в блоке настройки выполняется только один раз, хотя у меня был большой опыт работы с этой темой, просмотр работ других людей заставил меня понять, что я только поцарапал поверхность. Было интересно посмотреть, как написанный мной код был переведен в визуальный образ. Взаимодействуя с этой программой, я действительно наслаждался тем фактом, что для получения видимого результата на экране требовалось не так уж много. Выводы Я также добавил функции для щелчка мыши, которые сбросили бы холст на чистый лист, а также захватили изображение прямо перед тем, как оно было удалено. Установив координаты x и y линии там, где находился мой курсор мыши, я смог взаимодействовать с программой и получать разные результаты в зависимости от того, как я двигал мышью. Приведенные выше изображения явно отличаются, но они были сделаны с использованием одного и того же кода. Следующие два изображения являются примерами интерактивных эскизов, которые я сделал вместе с кодом, использованным для их создания. Что касается всего кода в блоке рисования, то он непрерывно зацикливается, что приводит к анимации. е самом начале. шляпа настраивает все, например, размер холста. интерактивные эскизы требуют немного большей организации. l изображение. Настройте и нарисуйте iet Mondrian вместе с его кодом. С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров и, как и N, большую часть времени анимируются. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал после рисования с помощью PCODING статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз, и создать стиль. Вот где || void setup() || и || void draw() || вступают в игру. Мне нравится название, в котором говорится, что void setup – это место, где вы пишете код, каждый фрагмент кода в блоке настройки выполняется только один раз в дальнейшем, я надеюсь, что смогу узнать больше о кодировании в целом, чтобы в конечном итоге применить эти знания для создания более сложных работ. Хотя у меня был большой опыт работы с этой темой, увидев работы других людей, я понял, что только поцарапал поверхность. Было интересно посмотреть, как написанный мной код был переведен в визуальный образ. Взаимодействуя с этой программой, я действительно наслаждался тем фактом, что для получения видимого результата на экране требовалось не так уж много. Выводы Я также добавил функции для щелчка мыши, которые сбросили бы холст на чистый лист, а также захватили изображение прямо перед тем, как оно было удалено. Установив координаты x и y линии там, где находился мой курсор мыши, я смог взаимодействовать с программой и получать разные результаты в зависимости от того, как я двигал мышью. Приведенные выше изображения явно отличаются, но они были сделаны с использованием одного и того же кода. Следующие два изображения являются примерами интерактивных эскизов, которые я сделал вместе с кодом, использованным для их создания. Что касается всего кода в блоке рисования, то он непрерывно зацикливается, что приводит к анимации. е самом начале. шляпа настраивает все, например, размер холста. интерактивные эскизы требуют немного большей организации. l изображение. Настройте и нарисуйте iet Mondrian вместе с его кодом.

С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров и, как и N, большую часть времени анимируются. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал после рисования с помощью PCODING статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз, и создать стиль. Вот где || void setup() || и || void draw() || вступают в игру. Мне нравится название, в котором говорится, что void setup – это место, где вы пишете код, каждый фрагмент кода в блоке настройки выполняется только один раз на пороге. В будущем я надеюсь, что смогу узнать больше о кодировании в целом, чтобы в конечном итоге применить эти знания для создания более сложных работ. Хотя у меня был большой опыт работы с этой темой, увидев работы других людей, я понял, что только поцарапал поверхность. Было интересно посмотреть, как написанный мной код был переведен в визуальный образ. Взаимодействуя с этой программой, я действительно наслаждался тем фактом, что для получения видимого результата на экране требовалось не так уж много. Выводы Я также добавил функции для щелчка мыши, которые сбросили бы холст на чистый лист, а также захватили изображение прямо перед тем, как оно было удалено. Установив координаты x и y линии там, где находился мой курсор мыши, я смог взаимодействовать с программой и получать разные результаты в зависимости от того, как я двигал мышью. Приведенные выше изображения явно отличаются, но они были сделаны с использованием одного и того же кода. Следующие два изображения являются примерами интерактивных эскизов, которые я сделал вместе с кодом, использованным для их создания. Что касается всего кода в блоке рисования, то он непрерывно зацикливается, что приводит к анимации. е самом начале. шляпа настраивает все, например, размер холста. интерактивные эскизы требуют немного большей организации. l изображение. Настройте и нарисуйте iet Mondrian вместе с его кодом.

С этим типом анимации не связано, и он не требует какой-либо интерактивности со зрителем. Интерактивные эскизы, с другой стороны, создаются с помощью серии кадров и, как и N, большую часть времени анимируются. состояния пламени, позволяют зрителям взаимодействовать с ним. Это пример статического эскиза, который я смоделировал после рисования с помощью PCODING статический эскиз довольно прост в том смысле, что вы можете просто написать строки кода, которые будут выполняться один раз, и создать стиль. Вот где || void setup() || и || void draw() || вступают в игру. Мне нравится, как указано в названии, настройка void – это то, где вы пишете код, каждый фрагмент кода в блоке настройки выполняется только один раз по адресу https://processing.org/Ресурсы В будущем я надеюсь, что смогу узнать больше о кодировании в целом, чтобы в конечном итоге применить эти знания для создания более сложных работ. Хотя у меня был большой опыт работы с этой темой, увидев работы других людей, я понял, что только поцарапал поверхность. Было интересно посмотреть, как написанный мной код был переведен в визуальный образ. Взаимодействуя с этой программой, я действительно наслаждался тем фактом, что для получения видимого результата на экране требовалось не так уж много. Выводы Я также добавил функции для щелчка мыши, которые сбросили бы холст на чистый лист, а также захватили изображение прямо перед тем, как оно было удалено. Установив координаты x и y линии там, где находился мой курсор мыши, я смог взаимодействовать с программой и получать разные результаты в зависимости от того, как я двигал мышью. Приведенные выше изображения явно отличаются, но они были сделаны с использованием одного и того же кода. Следующие два изображения являются примерами интерактивных эскизов, которые я сделал вместе с кодом, использованным для их создания. Что касается всего кода в блоке рисования, то он непрерывно зацикливается, что приводит к анимации. е самом начале. шляпа настраивает все, например, размер холста. интерактивные эскизы требуют немного большей организации. l изображение. Настройте и нарисуйте iet Mondrian вместе с его кодом.

Оригинал: “https://dev.to/mshin1995/a-first-attempt-at-making-art-with-code-43j0”