Coding Train Live 163: Toothpicks and Fourier Series

preview_player
Показать описание


Timestamps:
39:50 - Fourier series
1:44:10 - Toothpicks patterns
2:34:35 - Ukulele unpacking!

References:

Videos:

Рекомендации по теме
Комментарии
Автор

I saw this on SmarterEveryDay, 3Blue1Brown, and NumberPhile and then I get this! What an amazing treat!

gamingbutnotreally
Автор

I watched the Smarter Every Day video and was genuinely surprised when his friend managed to recreate the SED logo with the transforms.

hydra
Автор

Your last video inspired me to start reading "the computational beauty of nature" and it's amazing! I also managed to download old flake's algorithms attached to the book (boids included) and I could stare at them for hours! Thank you!

PhoenixD
Автор

So happy to see you code both the things which i wanted to code but wasn’t able to. Thank you !!!

sahiljoshi
Автор

Love your videos! Although I only code in Python (as of now), I still enjoy watching every video you post, and is itching me closer to learning JavaScript.

prismaticjunimo
Автор

For the video of you drawing something with this fourier series code, I would love to see how to convert an arbitrary line drawing to a function and then recreate it with circles :)

astropgn
Автор

1:20:47 I literally did every one of those suggestions. lol. It had a slider for x, y, and time, the path was green, i put it in a 3d world with a cubemap background, gave it a reset function to draw the shapes in random spots in the world, and got the values from a fft of a sound file. But its just improvements to one I already did a video on based on one of your older challenges.

igotapochahontas
Автор

There is a much more efficient way of doing the toothpick challenge:
Imagine the toothpicks lay on a grid of dots. Each toothpick is 2 dots long.

DataStructures
1. vectorMap: 1 dimensional array holding all toothpicks to be drawn from the current generation. just used for drawing
2. pointMap: 1 dimensional array holding each point for the current generation, where a toothpick should be added (1 toothpick has 2 of those points)
3. checkGrid: 2 dimensional array holding an integer (default 0) for each dot on the grid

Algorithm
1. The points in pointMap are iterated over and depending on direction the +1 and -1 in x or y direction is pushed to a buffer pointMap.
2. For both points one line is added to a buffer vectorMap.
3. The buffer pointMap is iterated over and for each point the checkGrid cell is retrieved and the counter on it increased by 1
4. Then the buffer pointMap is filtered out by if the checkGrid cell for it has a counter >= 2
5. pointMap and vectorMap is overwritten with the buffers
6. draw vectorMap

This is quite efficient performance wise, because only each generation is drawn and checking for touching toothpicks does not require checking against all other toothpicks.

jf
Автор

So Cool! I missed the realtime streaming but I am enjoying the whole video now. Cheers!!

jcponcemath
Автор

I know it's unrelated to this video, but does anyone know how to show a leading 0 when minute(); is less than 10 in a digital clock

AllenG
Автор

Please make a video on quad tree optimization.Your channel is the only place where I can learn the hardest stuff without breaking a sweat.

sujals
Автор

I laughed so hard at 1:50:41! Daniel was so confident with 9 and when he train of thought broke he was so confused lol!! - But he started counting from 0 and that is why he got himself confused. It was funny lol

astropgn
Автор

i Think what you doing is Amazing, but could you explain the codes you are using while you writing them?

Nobody-vt
Автор

Have you tried a-frame?. It's vr in JavaScript. It's awesome.

igotapochahontas
Автор

I'm not sure, but I think he'll refactor this later....

misterthekaitheman
Автор

What song is that at 36:26? I can't find it using Shazam nor have my Google searches given any results!

mattiviljanen
Автор

You should do it on Friday, so more people can catch it

vikramb
Автор

Hello, could u please make a short video tutorial about how using debugger to solve issues and how to import non-processing java librarier please? I will really appreciate. Thanks in advance ^^

iAzazelHD
Автор

Why we need this algorithm? How to use it practically?

MichaelDavydoff
Автор

at 31:20 this channel reached a new high. I bet you wrote this book yourself. Shameless self-promotion :)

hago