Applied Math for Creative Coders
  1. Math Models for Creative Coders
  2. Projects
  • Math Models for Creative Coders
    • Maths Basics
      • Vectors
      • Matrix Algebra Whirlwind Tour
      • Things at Right Angles
      • content/courses/MathModelsDesign/Modules/05-Maths/70-MultiDimensionGeometry/index.qmd
    • Tech
      • Tools and Installation
      • Adding Libraries to p5.js
      • Using Constructor Objects in p5.js
      • The Open Sound Protocol
    • Geometry
      • Circles
      • Complex Numbers
      • Fractals
      • Affine Transformation Fractals
      • L-Systems
      • Kolams and Lusona
    • Media
      • Fourier Series
      • Additive Sound Synthesis
      • Making Noise Predictably
      • The Karplus-Strong Guitar Algorithm
    • AI
      • Working with Neural Nets
      • The Perceptron
      • The Multilayer Perceptron
      • MLPs and Backpropagation
      • Gradient Descent
    • Projects
      • Projects

On this page

  • Introduction
  • Project #J0: Make an ad for a wellknown logo
  • Project #J1:
  • Project #1: King/Queen of the Mountain
  • Project #2: Sound Relationships
  • Project #3A and #3B: The 100-Acre Wood with Winnie the Pooh
    • Description
  • Project #4: Kagazi hai Pairhan
    • Description
  • Project #4: My Face is a Fourier Series
  • Project #5: Music by Hand-Waving
  • Other Project Ideas
  1. Math Models for Creative Coders
  2. Projects

Projects

Author

Arvind V

Published

July 22, 2024

Introduction

Here are projects that we will contemplate creating at the end of the course. All the techniques, software, packages, theory, hardware…will be pieces aimed the realization of these projects. So we begin this course with the end in mind.

The projects below have been grouped into two groups, one for the junior students and the other senior students, who are both paradoxically in the same class. But there is an opinion that prerequisites are irrelevant.

Do not start with fundamentals. This is an awful approach to learning.

Start with so-called "advanced" topics and ask questions until every term/concept is understood.

This is the correct, rigorous, scientific way to learn, because the advanced topics are embedded in larger,…

— Sean McClure (@sean_a_mcclure) February 27, 2025

Project #J0: Make an ad for a wellknown logo

Project #J1:

Project #1: King/Queen of the Mountain

Description

  • Each participant in the exhibit chooses whether they want to be on a mountain or in a valley, or in a grassland/meadow. More choices if you are up to it…volcano, anyone?
  • Their position within the space will be sensed. And they can move.
  • A terrain map will be projected, either on the ceiling, or the screen, or on the participants themselves, with each individual being located on a specific terrain feature type that they chose at the start.

Pieces

Project #1
Theory Tool Wait, but why?
Terrain Generation
  • p5.js/ Perlin Noise
  • Terrain!
Location Sensing
  • OSC protocol?
  • Arduino sensors?
  • Link p5.js to Arduino, need libraries for interfacing and data transfer
  • Give seed locations to Perlin Noise generator
  • Defines preferences of terrain feature based in identity
Projection
  • Project terrain map
  • Drive Projector using p5.js
  • Do we need projection mapping libraries?
  • Watch participants move and terrain follows them

Project #2: Sound Relationships

Description

  • The floor is divided into footprint-sized areas. Each area is mapped to a particular note in a musical scale, that can be selected. Multi-octave.
  • Participants are told of the mapping and given a smartphone. And they can play hopscotch or dance or move, in sync with other participants to create a jam session.
  • Can they make music / rhythms?
  • They are given headphones?

Pieces

Project #2
Theory Tool Wait, but why?
Sound Generation
  • p5.js with Sound/Music Libraries
  • Do any of these SuperCollider? PureData? Strudel? JukeBox AI? have a library for p5.js?
  • Instruments
  • Vocals?
Location Sensing
  • OSC protocol?
  • Arduino sensors?
  • Link p5.js to Arduino, need libraries for interfacing and data transfer
  • Just location sensing
Projection
  • Project Network and musical Note?
  • Drive Projector using p5.js
  • Do we need projection mapping libraries?
  • Network links must decay when participants are too far apart, or are silent…pauses in music

Project #3A and #3B: The 100-Acre Wood with Winnie the Pooh

Description

  • Create natural shapes / images / illustrations / characters based on kolams/ lu-sona / fractals / L-Systems and graphs.
  • A: Use grids, smoke, and mirrors to create laser diagrams in a table-top maze.
    • Pointer laser? Smoke? Agarbatti?
    • Movable mirrors ( 0/90 degrees only so black paper clips should work.)
    • Single Point of entry for laser.
    • Look from above through the smoke.
  • B: Viewers can draw their illustration on a large paper canvas to create a Hundred Acre Wood
    • Paper and Pencil / Colour / etc
    • Check with Code and replicate by hand.
    • Catalogue of Shapes is essential
    • Grid, Kolam Choice for shape, changes, innovation are possible

Pieces

Theory Tool Wait, but why?
Shape Generation
  • p5.js
  • Grids + Mirror locations
  • L Systems with random user-chosen seeds - Catalogue of shapes to choose from? In software? Poster also.
  • Not too much code
  • Viewers can match their personality/choice and what is on the garden-wall already to decide on their Creature
  • Laser + Smoke to check the shape if it is a Kolam / Lu-Sona
Hardware
  • Smoke and Mirrors
  • Pointer Laser

Project #4: Kagazi hai Pairhan

“Naqsh fariyādī hai kis kī shoḳhi-e-tahrīr kā
Kāġhzī hai pairahan har paikar-e-tasvīr kā”

— Ghalib

Description

  • Dress/Clothing design with paper
  • Participants will turn and pirouette/turn about in front of a camera
  • Measurements will be taken and modelled using non-Euclidean geometry
  • Paper cutout diagrams which can be fabricated to “dress up” the viewer in paper.
  • Paper can have their favourite theorem or piece of text printed upon it!

Pieces

Theory Tool Wait, but why?
Measurements of Fixed Points on/from Camera Image
  • ml5.js Pose Detection?
  • Must get hold of Pose Detection Data and convert into “printed dress” pieces
  • Choice of Clothing??
  • Clothing Design
Math Model of Connecting Points with Hyperbolic Geometry Functions
  • Other ways than ml5.js??
  • Image to Geometry libraries?
  • Allow for fit and drape
  • Should not be too tight
  • “Extra” Cloth to stitch with
  • All paper must be A4?
  • Entire costume must be possible to carry in a file
  • Can be “Assembled any time with tape/ pins/clips

Project #4: My Face is a Fourier Series

See this:

https://gofigure.impara.ai/drawing/5711774133256192

  • People stand in front of camera
  • Detailed picture is taken. Profile preferable!
  • The code will generate a Fourier Series of their profile and present an animated version on the screen.
  • Reset and Play should be possible

Pieces

Theory Tool Wait, but why?
Measurements of Fixed Points on/from Camera Image
  • ml5.js?
  • Profile Detection and conversion to waveform
  • Capturing Profile “waveform”
Generating Fourier Series with Waveform + Animation
  • Math Library
  • Should be easily available
  • Animation

Project #5: Music by Hand-Waving

Other Project Ideas

  • Link IFTTT app to p5.js and make things happen over WiFi, from other classes or buildings
Back to top
Gradient Descent

License: CC BY-SA 2.0

Website made with ❤️ and Quarto, by Arvind V.

Hosted by Netlify .