In this coding challenge, I implement the Discrete Fourier Transform algorithm in JavaScript and render a drawing using epicycles derived from the transform. Code: thecodingtrain.com/challenges...
p5.js Web Editor Sketches:
🕹️ Fourier Transform: editor.p5js.org/codingtrain/s...
🕹️ Fourier Transform - user-drawn path: editor.p5js.org/codingtrain/s...
🕹️ Fourier Transform - complex numbers: editor.p5js.org/codingtrain/s...
🕹️ Fourier Transform - user-drawn path with complex numbers: editor.p5js.org/codingtrain/s...
Other Parts of this Challenge:
📺 Part 2: • Coding Challenge 130: ...
📺 Part 3: • Coding Challenge 130: ...
🎥 Previous video: • Coding Challenge #129:...
🎥 Next video: • Coding Challenge 131: ...
🎥 All videos: • Coding Challenges
References:
🚂 Coding Train Logo: / 1079437780466520065
💾 p5.FFT: p5js.org/reference/#/p5.FFT
💾 FFT on Algorithm Archive: www.algorithm-archive.org/con...
🗄 Discrete Fourier transform on Wikipedia: en.wikipedia.org/wiki/Discret...
🗄 Complex Number on Wikipedia: en.wikipedia.org/wiki/Complex...
Videos:
🎥 But what is the Fourier Transform? A visual introduction: • But what is the Fourie...
🎥 Fourier Analysis For The Rest Of Us: • Fourier Analysis For T...
🎥 Epicycles, complex Fourier series and Homer Simpson's orbit: • Epicycles, complex Fou...
🔴 Code Train Live 165: • Coding Train Live 165:...
Related Coding Challenges:
🚂 #125 Fourier Series: • Coding Challenge 125: ...
Timestamps:
0:00 Introducing today's topic: a Fourier transform drawing machine
1:29 Fourier transform algorithm
3:08 Signal processing
5:49 Make a signal array
12:09 Euler's formula
15:34 Write the discrete Fourier transform function
21:50 What do we need for a circular epicycle?
22:47 Calculate the amplitude, frequency, and phase
26:30 Calculate amount of time to move per frame of animation
29:44 Draw an arbitrary path for both x and y
31:07 Write an epiCycles() function
34:30 Have epiCycles() return a vector with an x and y
38:59 Grab the path of the Coding Train logo
41:38 Render the epiCycles by order of amplitude
43:57 Conclusion and next steps
Editing by Mathieu Blanchette
Animations by Jason Heglund
Music from Epidemic Sound
🚂 Website: thecodingtrain.com/
👾 Share Your Creation! thecodingtrain.com/guides/pas...
🚩 Suggest Topics: github.com/CodingTrain/Sugges...
💡 GitHub: github.com/CodingTrain
💬 Discord: thecodingtrain.com/discord
💖 Membership: ru-vid.comjoin
🛒 Store: standard.tv/codingtrain
🖋️ Twitter: / thecodingtrain
📸 Instagram: / the.coding.train
🎥 Coding Challenges: • Coding Challenges
🎥 Intro to Programming: • Start learning here!
🔗 p5.js: p5js.org
🔗 p5.js Web Editor: editor.p5js.org/
🔗 Processing: processing.org
📄 Code of Conduct: github.com/CodingTrain/Code-o...
This description was auto-generated. If you see a problem, please open an issue: github.com/CodingTrain/thecod...
#fouriertransformsquarewave #discretefouriertransform #epicyclesdrawing #javascript #p5js
27 июл 2024