Browse Search Popular Register Upload Rules User list Login:
Search:
The Koch-Flake

Image:
screenshot of the scene

Author: FRA32

Group: Technical

Filesize: 117.14 kB

Date added: 2016-01-05

Rating: 5.6

Downloads: 1082

Views: 449

Comments: 16

Ratings: 2

Times favored: 0

Made with: Algodoo v2.1.0

Tags:

Scene tag

Another part of my FRActal scenes, this scene shows the iterative generation of the "Koch-Curve"(or Koch-Flake in this case), a curve generated by replacing the middle section of a line with a tip over and over again.

This scene is coded so that the tips have an increasing timetolive, while the "base" get's a shortened timetolive. In the last split before the shapes turn into colored segments the splitting time is recorded so that a color can be projected, depending on the time it took to reach the last iteration. After that, the shapes make a final split, beginning from the center of the shape, where the resulting shapes inherit the color calculated before.

Enjoy, and don't forget to rate if you like more of these! Write suggestions in the comments on what fractals I should try next.
Last edited at 2016/07/03 21:50:44 by FRA32
Please log in to rate this scene
edit
Similar scenes
Title: Koch Snowflake
Rating: 7.25
Filesize: 1.29 MB
Downloads: 447
Comments: 2
Ratings: 4
Date added: 2008/07/27 04:49:25
Made with: Phun
Rating: rated 7.3
download
Title: M85 ASSULT RIFLE V.2
Rating: 5.1333
Filesize: 93.97 kB
Downloads: 2137
Comments: 19
Ratings: 4
Date added: 2010/03/18 16:16:55
Made with: Phun
Rating: rated 5.1
download
Title: HK USP Compact 40
Rating: 5.625
Filesize: 68.97 kB
Downloads: 2758
Comments: 2
Ratings: 2
Date added: 2016/06/13 00:15:58
Made with: Algodoo v2.1.0
Rating: rated 5.6
download
Title: Corn Flake :D
Rating: 5
Filesize: 21.67 kB
Downloads: 298
Comments: 1
Ratings: 1
Date added: 2015/06/20 12:16:40
Made with: Algodoo v2.1.0
Rating: rated 5
download
Title: Did i just make my own Snow Flake?
Rating: 5
Filesize: 55.32 kB
Downloads: 206
Comments: 0
Ratings: 1
Date added: 2016/05/09 06:49:45
Made with: Algodoo v2.1.0
Rating: rated 5
download
Title: Spider Camp 4 Remain!
Rating: 5
Filesize: 101.74 kB
Downloads: 121
Comments: 2
Ratings: 1
Date added: 2016/12/28 15:54:41
Made with: Algodoo v2.1.0
Rating: rated 5
download
Responses to this scene
show list
Title: Koch pattern (hacked version of FRA32's scene)
Rating: 6.5
Filesize: 3.48 kB
Downloads: 405
Comments: 5
Ratings: 4
Date added: 2018/12/13 06:18:57
Made with: Algodoo v2.1.0
Rating: rated 6.5
download
Holy cow! I make suggestions for scenes and you DO THEM! You are sooooooooo smart! I can only imagine what you might be doing 15 or 20 years from now. You will probably be writing software for the military in a multi-dimensional universe! :lol:

Very nice work! :tup: _o_ :tup:
Last edited at 2016/01/05 22:25:44 by Xray
Here is your next challenge, Grasshopper.........

Create a digital oscilloscope display in which the user can switch the readout between a "time domain" display and a "frequency domain" display. So, in other words, a user can start the scene, and then with a "pen", he can draw a waveform in the time-domain (any squiggle will do). The display will of course be signal "amplitude" on the Y axis, and time on the X axis. Then, with the push of a button, the display will switch to the frequency domain as the software calculates the Fourier Transform of the signal. In the frequency domain, the display will show signal "amplitude" on the Y axis, and signal "frequency" on the X axis. A piece of cake for you, right?





LOL.... I'm just kidding of course. Fourier Transform requires very complex math, and I'm sure that you don't have many weeks to devote to such a wild project! :lol:
The question is: Is algodoo capable of calculating proper integrals, or will I have to make a manual function for that? I may try to give it a shot
(yippeh, first time integral functions and then combined with stacking sines xD)

I am currently checking about that fourier transform since I A: never worked with integrals before, but I know what they do; B: never heard of the fourier transform before neither; C: It is a messy formula xD

But I could actually try that if everything settles as possible, making the user use a brush to draw a wave, using lasers or something to register the points the "function" is made of, then using splines or something to gain a "clean function" with formula, and then making that transformation with anything that algodoo offers xD

Well, that will combine multiple tough algorythms for sure, but I will tryy to get as far as possible, since where's the point in not trying xD
FRA32 - I'll say it again.... I was only joking! I used to work for a company that made digital processing oscilloscopes, and the company had a staff of engineers (I was one of them) who wrote all of the software in 8-bit assembler language. Therefore, I know, first hand, how difficult it is to write the code to do an FT (actually, it was an FFT (Fast Fourier Transform) and IFT (Inverse Fourier Transform). They are called "fast" algorithms because they operate on the number of data points which must be a power of 2 (1024, for example). The FFT is a short version of the FT. It has fewer lines of code, and it runs exponentially faster then the FT or DFT. In addition to the FFT, you would also need to write the code for digital filtering (such as a "Hanning Window". The reason for the filter is because the FT algorithm was intended to operate on a theoretical data set which is continuous from minus infinity to plus infinity. But since it will be operating on a finite data set, the windowing filter converts data points that are close to the end points of the data in memory to a simulated data set that extends from -inf to +inf.

I am NOT an expert in digital data processing. I learned just enough, back when I worked for that company, to do my job. And so, if you truly wanted to tackle such an aggressive project, my help would be quite limited, and you would have to refer mostly to Google for answers to your questions.

The code for a project like this is complex and it might end up being rather messy. And so, if you decide to tackle it, don't say that I didn't warn you! :lol:



MORE INFORMATION: Here is a good tutorial on window functions (especially "Hann and Hamming polynomial Window functions): Window Functions
Last edited at 2016/01/06 16:41:07 by Xray
Well then gimme a proper suggestion that is possible in algodoo and not just in complex coding languages:D
I believe that my crazy project suggestion is actually "possible" with Algodoo, but on the negative side, my guess is, it would run agonizingly SLOOOOOOOOOOOWWWWWWWWWWWWWW!

Please don't waste your time to even attempt it. Toss the thought of it into the trashcan, and let's try something that's a little more reasonable. Okay, my friend? :)
I'm speechless. This is amazing :D

But whatever you do, never get your IQ tested. You'll break the machine and i'm pretty sure they won't like that :lol:
Are you referring to me or to FRA32? :s

I once broke an IQ testing machine because it was not able to handle negative numbers! :lol: :lol: :lol: :lol: :lol: :lol:
Sorry, too late, already got 3-4 IQ tests behind me over the duration of the last 8 years xD

The values ranged from 123 to 130 ^^

*moar suggestions plz*:lol:
damn, I only got 121 :/

Sugguestions? Klein bottle. You figure out the rest :yum:
Eh, I just read the name and instantly know what you are assigning me without even looking up:lol:

K, I will try, but I will have to find a efficient and not 100 variables consuming way of making about 100-200 circles position themselfes in a pseudo-4D enviroment so that I can use a formula to make them position themselfes automatically without me needing to drag them all in place xD

My Tesseract scene may have been Pseudo-4D, but it only used 16 points, and for these 16 points I needet to use a single Scene.my.var that contained 16 data sets representing the 4D coordinates, and these sets have been generated from 16 variables in the code box xD
Maybe I can use pos. to read an array dynamically.... *cough* e.this._4Dcoord = scene.my.coords(_originpos(0)) *cough*
Maybe you could use [] brackets to create a _var with like 100 different numbers in it to spawn the balls? :yum:
I have a project suggestion for you which is something that I always wanted to do with Algodoo, but I don't know where to start and I'm not sure if I can even define it for you. But here is my best guess (or maybe I should call it a W.A.G.! :lol: )

I would like for you to make some sort of A.I. scene. Basically some sort of "chatter bot" without sound. So, it will of course need to operate with text. A talking head that carries on a conversation with its user. So, for example, I would ask it, "How's the weather?" and it would respond with a reasonably intelligent answer such as, "I can answer that if you give me a location".

A project of this magnitude would probably take many weeks or longer to complete. So, if you decide that it requires too much time, then I'll think of something else more reasonable. :)


UPDATE: Awwww... forget that. I generally understand what it would require, and you would be eligible for Social Security by the time you finished the project.
So, how about calculating and displaying a 4D "Supercube". That should be right up your ally, and it will take only a few minutes to complete (for you).
Last edited at 2016/01/08 04:40:23 by Xray
@pnvv

what do you think does scene.my.coords(0) mean (hint: it's calling an index of the array):lol:

@Xray
Define "Supercube". If you mean the term "Hypercube" as in general-dimensional member of the right-angled shape group, I already did that in my Tesseract/4D-Cube scene(WITH ROTATION!). If it's something different, just explain me what you mean exactly and I will head for it:)

btw, your chat robot is basically a superchained case-structure along with short-term-memory to remember the last answer, and to make it run properly I would need so many if structures It would properly start lagging algodoo again xD
Yes, I agree that a "Chat Bot" would require a huge amount of code in order to cover most things that a human might ask it. You would basically need the Google search engine as its brain, and I doubt that Algodoo would be able to handle it.

Concerning a "Supercube" yes, it is just another name for a "Hyopercube" and I see that you've already done that. VERY IMPRESSIVE! :tup:
You probably did not notice the scene before since I named it "Tesseract", which is the actual name of a 4D Hypercube, just like Square and Cube are the names of the preceeding dimensions. It actually was my first successfull attempt at mapping and rotating a highter dimension into a lower one:lol: