Tutorial Intro
Welcome to this tutorial where we're going to explore the mesmerizing world of generative art, inspired by the kinetic sculptures of artists like Reuben Margolin. We'll use p5.js, a powerful JavaScript library that makes coding visual and interactive elements on the web accessible to everyone.
Our goal is to create a digital artwork with a series of rotating pendulums, each varying in speed and size, to simulate the motion seen in kinetic sculptures. The final result is a beautiful, ever-changing pattern that reflects the dynamic essence of kinetic art.
This tutorial is beginner-friendly, so don't worry if you're new to p5.js or programming in general. We'll walk through each line of code step by step, explaining the concepts as we go along.
By the end of this tutorial, not only will you have created a piece of generative art, but you will also have gained a deeper understanding of loops, arrays, and object-oriented programming in p5.js. You'll be equipped with the knowledge to create your own unique generative artworks. So, let's dive in and start coding!
Generative Art Code
let pendulums = [];
let pendulumCount = 40;
function setup() {
createCanvas(windowWidth, windowHeight);
for(let i = 0; i < pendulumCount; i++){
pendulums[i] = new Pendulum(i);
}
}
function draw() {
blendMode(NORMAL);
background(255 );
translate(width / 2, height / 2);
for(let i = 0; i < pendulumCount; i++){
pendulums[i].display();
pendulums[i].update();
}
}
class Pendulum {
constructor(n){
this.angle = 0;
this.angleSpeed = 0.01 + n * 0.004;
this.radius = 30 + n * 6;
}
update() {
this.angle += this.angleSpeed;
}
display(){
let x = this.radius * cos(this.angle);
let y = this.radius * sin(this.angle);
stroke(0,100);
line(0, 0, x, y);
fill(0);
ellipse(x, y, 5, 5);
}
}
That's it! Hope you've enjoyed learning about this particular piece and make sure to check out the other free tutorials on generativehut.com.
Such a beautiful way to describe two different things at a time. I never considered that this topic could be so deep until reading yours! I want to draw attention that we are also seeking your guidance on blue agate crystal, as we work on it. If you have any information or suggestions about the topic, please send us your feedback. We are eagerly waiting for your further blog.
Thank you for sharing such valuable insights! I've been looking for information on this topic for ages, and your post is exactly what I needed. As I am fresher and looking for some guidance on what is an amethyst used for, I have none other than you in my mind for some information and suggestions. Have a look at our website and share your feedback and tips with us. Waiting for your blogs!
Customer satisfaction is our primary goal at Lufthansa srbija. The Belgrade office staff is always available to help with everything from arranging flights to providing solutions to any problems that may arise during your trip. Whether you need advice choosing the best route for your trip, assistance with luggage handling, or a specific request for special accommodations, Lufthansa's customer care staff in Serbia is here to provide tailored assistance. Lufthansa's user-friendly website and mobile app also make it simple for travelers to manage their reservations, check in, and stay up to date on their flight status. Lufthansa Srbija's constant dedication to service excellence guarantees that Serbian travelers have a flawless, hassle-free experience every time they fly.
Employers are always on the lookout for candidates with specialized skills and industry-recognized qualifications. The College of Contract Management offers courses tailored to various industries, helping professionals gain a competitive edge. Their online learning platform ensures accessibility without compromising quality. Whether you want to enhance your current skills or enter a new field, their certifications can help boost your employability. Taking the time to upgrade your knowledge can lead to better career opportunities and financial rewards. Professional development is an investment in yourself and your future.
Amtrak stations near you provide convenient access to train services, ensuring a smooth travel experience. These stations offer amenities like ticketing, waiting areas, and assistance for passengers with special needs. To locate an Amtrak station near you, visit the Amtrak Station Near Me. Whether you're commuting or embarking on a long journey, Amtrak's extensive network of routes and stations ensures comfort and accessibility for all travelers.