Wave Figures

Published by on Monday July 13, 2020

Last modified on March 14th, 2023 at 11:43

Sine, cosine and tangent waves can be used in combination with for-loops to create highly interesting visuals. A certain expression of these figures are the so-called “Lissajours curves”. For this purpose, two different waves are generated, each influencing the x- and y-position of several elements.


Assignment

Develop 5 different wave figures as animations in .mp4 format.


Get started with this template

void setup(){
 size(900,900); 
}

void draw(){
  background(0);
  translate(width/2,height/2);
  
  // The amount of elements
  float amount = 36;
  
  // The size of the figure
  float magnitude = 400;
  
  fill(255);
  noStroke();
  
  for(int i = 0; i < amount; i++){
    
    // wave1 alters the x-axis
    float wave1 = sin(radians(frameCount + i * 10)) * magnitude;
    
    // wave2 alters the y-axis
    float wave2 = cos(radians(frameCount + i * 10)) * magnitude;
    
    ellipse(wave1,wave2,10,10);
    
  }
}

Related Links

Language Comparison

Processingp5.js
sin()sin()
cos()cos()
tan()tan()
radians()radians()
© Carol Wei
© Tim Rodenbröker

Leave a Reply


Related

Creative Coding Barcelona

Community

Livestream – Vera Molnar Reconstructed

A conversation with Yannick Gregoire

Conversations

Lena Weber on Ambiguous Aesthetics

Conversations

Martin Lorenz on the intersection of Creative Coding and Flexible Visual Systems

Community Conversations

DEMO Festival 2022 was a blast

Writings

Key visual for Slate + Ash’s new software instrument

Commissions Projects

Generative portraits for IBM

Commissions Projects

Llum Negra / La Luz Negra / Black Light

Commissions Projects

Creative Coding as a School of Thought

Projects Research Writings

What is Creative Coding?

Writings

Creative Coding as an Experience

Writings

Building a digital painting studio from scratch with Processing

Workshop: “Algorithmic Adventures” at International Assembly

Workshops

An ode to the Gif

Writings

Curating the DESIGN IN MOTION Festival 2022

unlisted

A conversation with Yehwan Song

Community Conversations

We need a sustainable perspective on life with technology

Writings

2021 was my year of liberation

The best programming language for Creative Coding in 2022

unlisted

I challenged Daniel Shiffman and here’s his response

Tutorials unlisted

A mockup-design-tool built with Processing

Projects Research

Processing Community Day 2021 Recap

“The Infinite Layout Machine” by Michael Kreß

Community Student Work

PCD2021 – Q&A with Casey Reas

Community Conversations

PCD2021 – Vera van de Seyp

Community Conversations

Two Perspectives – Episode 3

Community Conversations

Processing-Tutorial: A Grid of Arcs

Tutorials

Processing-Tutorial: Exploring Wave-Figures

Tutorials

Interactive Grid System (Livestream)

Tutorials

The Hidden Benefits of Learning to Code

unlisted

Creative Coding Manifesto 2021

Writings

My Story (part 2 – told at Taaalks Conference 2020)

New Course: Bauhaus Coding Workshop

unlisted

Learnings from the Bauhaus about Art and Technology

Writings

Constants & Variables

Community Conversations

TypeMachines – A workshop at écal Lausanne

Workshops

My Story (Part 1)

Writings

Processing-Tutorial: Rasterize 3D

Tutorials

Processing-Tutorial: Image-Rasterizer

Tutorials

Processing-Tutorial: Kinetic Typography 1

Tutorials

My 10 favorite Processing-libraries

4 alternative, free and well-curated resources for images, fonts and data

unlisted

Processing or p5.js? My opinions

Programming Posters

Projects Research

Protected: A conversation with Soyun Park

Conversations

Talk at Elisava w/ livestream

Martin and I as guests at TAAALKS

Conversations

New course draft: Molnar Reconstructed

Hybrid Curriculum: Mission accomplished!