Welcome to Fractal Forums

Fractal Math, Chaos Theory & Research => (new) Theories & Research => Topic started by: Tglad on December 12, 2013, 10:44:40 AM




Title: Rolling fractals
Post by: Tglad on December 12, 2013, 10:44:40 AM
A guy called Matthen made a nice fractal by rolling circles inside circles: http://blog.matthen.com/post/15481855128/if-you-roll-a-circle-inside-one-3-times-its-size

However I think he got the maths a bit wrong and so the circles are sliding, not rolling. If you make them roll, and you make them all roll at the same speed* then the resulting inner circle just carves out a circle.

However, if you make each child circle roll the opposite direction to its parent you end up with a fractal similar to Matthens, but different (circles half in radius):

(http://nocache-nocookies.digitalgott.com/gallery/15/853_12_12_13_10_42_37.png)

I'm trying to work out if the curve self intersects or not... a close up of the suspect region doesn't make it clear...


* the most logical choice since half size circles spin twice the angular speed and so cover the same distance in a given time


Title: Re: Rolling fractals
Post by: Tglad on December 12, 2013, 10:59:07 AM
You can also stack the circles on the outside (rather than nested), which gives the below fractal when the circles halve in radius. In this case reversing the direction of child compared to parent produces a plane circle, and keeping the direction the same sign produces this cauliflower-like fractal.. so its the opposite of the internal circle one.


Title: Re: Rolling fractals
Post by: eiffie on December 12, 2013, 05:49:21 PM
There is also this thread (although the rotations/speed are again different).
http://www.fractalforums.com/non-fractal-related-chit-chat/fun-with-dynamic-spirograph-circle-rolling-around-rolling-circle (http://www.fractalforums.com/non-fractal-related-chit-chat/fun-with-dynamic-spirograph-circle-rolling-around-rolling-circle)


Title: Re: Rolling fractals
Post by: Tglad on December 13, 2013, 04:54:10 AM
It looks like Benice has got the maths right... I was aiming for
http://1.bp.blogspot.com/-0ADHLWarHII/T-gD_OgEejI/AAAAAAAAA1Q/1avr4AybIY8/s1600/fractal_spirograph_003.gif
and
http://4.bp.blogspot.com/-uwu4QSRQk7M/T-gEJbl5m4I/AAAAAAAAA1o/pR9gW6xy-tc/s1600/fractal_spirograph_006.gif

Perhaps my images above were bad maths... I'll have to take a look.


Title: Re: Rolling fractals
Post by: Tglad on December 13, 2013, 11:55:21 AM
Hmm... I looked again at my maths and it still seems correct, now I think that Benice's examples are possibly 'wrong' in the sense of not being a scale symmetric rolling motion.... they're still nice shapes though. If would be great if someone else could try... basically each circle is half the parent's size and each circle rolls at an angular velocity inversely proportional to its radius, so the contact points all move at the same speed.


Title: Re: Rolling fractals
Post by: eiffie on December 13, 2013, 06:42:07 PM
Sorry Tglad I have no idea what the right math would be but they are fun in 3d too!
http://www.youtube.com/watch?v=zn0C80TeMG4 (http://www.youtube.com/watch?v=zn0C80TeMG4)


Title: Re: Rolling fractals
Post by: kram1032 on December 14, 2013, 12:15:37 AM
Those are beautiful.
I can't say for sure but as far as I can tell, you both got your maths right and he simply did different examples than you did.


Title: Re: Rolling fractals
Post by: knighty on December 14, 2013, 12:17:43 AM
Have you considered changing the phases? The initial positions of of the circles haven't to be aligned :)

BTW, they are related to polynomials P(z) where z=exp(i*t). One can also use "polynomials" whith non integer exponents.


Title: Re: Rolling fractals
Post by: Tglad on December 14, 2013, 11:54:49 AM
Yes, you can get twisted results by for example adding a phase offset to each circle.

The first fractal in this post comes in a family, a bit like the multi-brots:
(http://2.bp.blogspot.com/-q7iPnrbgC94/UqwyiNUDvCI/AAAAAAAAAWc/s1ljXAQg8rM/s1600/roll-fracs.png)
You define them by the ratio of child curvature to parent, in the pic it goes -4, -3, -2,   2, 3, 4.     (-1, 0 and 1 are not fractals)

It looks like all the members of this family don't self intersect (so are a proper embedding on the 2d plane)... probably any curvature ratio with integer magnitude is like this.


Title: Re: Rolling fractals
Post by: knighty on December 14, 2013, 06:12:00 PM
Interesting!
It looks like all the members of this family don't self intersect (so are a proper embedding on the 2d plane)... probably any curvature ratio with integer magnitude is like this.
IMHO you could check for self intersection by using the derivative of the associated polynomial along the curve. If it is zero then there is an intersection. This is not easy though because if the curves nearly intersct the magnitude of the derivative would be very small.


Title: Re: Rolling fractals
Post by: eiffie on December 14, 2013, 07:23:18 PM
Any ideas on a distance estimate to these?


Title: Re: Rolling fractals
Post by: cKleinhuis on December 14, 2013, 07:44:16 PM
i have to interrupt, how qualify those curves as fractal? they might be complex, but self similarity i dont encounter, and infinite lengthes neither :( nevertheless an interesting method :)


Title: Re: Rolling fractals
Post by: Tglad on December 15, 2013, 05:44:52 AM
Look at the first image, there is self similarity up the end of the stalks... like mandelbrots etc it isn't exactly scale symmetric but definitely similar at each scale.
The 2nd image is like 4 leaves... which are self similar looking (see pic)
I'm pretty sure they are infinite in length too... but I haven't proved it.

Effie, no idea.. but a good question... hmmm.

Knighty, I'd like to try something like you say to see if they self intersect... it would be nice if they didn't... but they get close. May be very hard to prove.




Title: Re: Rolling fractals
Post by: kram1032 on December 15, 2013, 05:22:05 PM
There is very clear self-similarity similar to what a De Rham curve might do. There probably are version of this that have an infinite boundary too but others may be bounded. Still, the circumference versus area should be a substatial ratio in any case.

Note that there are infinitely many cricles rotating inside each other at all scales. That this produces fractals is not surprsing at all, but it's quite beautiful to look at and closely related to fourier analysis. Very nice.


Title: Re: Rolling fractals
Post by: eiffie on December 15, 2013, 05:26:02 PM
If you reduce the radius by half each iteration and perform infinite iterations how long is the path after the 1st circle finishes its rotation?


Title: Re: Rolling fractals
Post by: Tglad on December 18, 2013, 12:29:03 AM
Effie, it is infinite... I'm not sure its fractal dimension, but it is certainly greater than 1, so any small section of the curve has infinite length.

Kram, yes its quite similar to this De Rham curve for example:
(http://upload.wikimedia.org/wikipedia/en/f/f6/Cesaro-0.3.png)

I'm guessing that De Rham curves are normal fractals and these rolling ones are possibly multifractal... the leaf one does seem to get smoother towards the tip for example.


Title: Re: Rolling fractals
Post by: mclarekin on December 18, 2013, 04:18:04 AM
@Tglad etc. Very Interesting post. Lots of possibilities :) :)

@Eiffie, Like the 3D video :) :)


Title: Re: Rolling fractals
Post by: kram1032 on December 18, 2013, 07:25:39 PM
At the self-intersection:
I'm pretty confident it should be easy enough to find examples that do definitely self-intersect. (Just start off with parameters that already feature self-intersection in an early iteration while not compensating for the overlap in later iterations)
More interesting would be, for which parameters, e.g. scale-factors, phases and rotation-speed-functions, self-intersection would be avoided.


Title: Re: Rolling fractals
Post by: tly on February 25, 2014, 12:23:22 PM
hey guys :)

im new here, saw the thread some time ago and tried it myself this weekend.
you can get some pretty results by rotating through different roll speeds for every iteration.
for example the patttern (2,4,-5) would multiply the roll speed by 2, next iteration by 4, next iteration by -5 and then again by 2,4,-5 etc.
If you use fractional roll speeds like 3/2 the result can be very noisy and random. I noticed that some parts inside the fractals look like multibrots :)

heres my imgur album: http://imgur.com/a/FEQhh

and some special ones:
roll speed -2 and radius reduction 0.7 per iteration:

(http://i.imgur.com/Az46sUS.png)

roll speed -3, radius reduction 0.6:

(http://i.imgur.com/fkyWilo.png)

and a random one: roll speed -1.5, radius reduction 0.8

(http://i.imgur.com/aofl16D.png)

PS: how can i scale theses images ? :embarrass:

I can post the java app i made if you want to try some settings for yourself :)


Title: Re: Rolling fractals
Post by: cKleinhuis on February 25, 2014, 01:33:31 PM
hi there, nice, i am pretty sure we want to look into your little app

regarding image sizes, with "width" and "height" in the img tag you should be able to set desired sizes


Title: Re: Rolling fractals
Post by: eiffie on February 25, 2014, 05:29:13 PM
Great find! The images are very interesting and the app would be appreciated. :D


Title: Re: Rolling fractals
Post by: tly on February 25, 2014, 10:31:52 PM
thank you for your kind feedback  O0

this is the layout of the app:
(http://i.imgur.com/DEYMASD.png)

I did the gui today, so it could be messy and buggy ;)

Usage:

- click in the black part to start/stop the animation
- reset if you have visual bugs (i.e. after changing settings)
- click Render Image to create a good quality image (a window will pop up when its finished)

Settings:

- show circles/origins/radii: visual feedback in the animation where the circles are at the moment (can be distracting ;) )
- skip steps: tells the program how many steps it should go before the next frame, the higher, the faster the animation.
   (lags if too high)
- add rotation: my old program (images above) had a bug, that the nth circles would roll n times as fast as the first one. that looked surprisingly good, so i kept it as an option.
so whats the big difference?
- looks different
- a pattern with an integer roll speed of n has normally a rotational symetry of order |n-1|. by adding the rorationangle every iteration you actually get a rotational symetry of order |n| :)

- circles: number of circles used
- renderRounds: a lot of patterns do not end up a the origin after one cycle of the 1st circle, so it could be necessary to render more than one cycle. renderRounds determines the number of cycles.
- radiusAmp: the ratio by which the radius is multiplied every iteration.
- precision: the angle in radians that is used every step to rotate the circles. the smaller the better :)
- roll speed: enter one or more values, for example -1,2,1.5 (values separated by a comma). i really dont know how to explain how it works :D see this example:
Quote
the patttern (2,4,-5) would multiply the roll speed by 2, next iteration by 4, next iteration by -5 and then again by 2,4,-5 etc.


Download link:
http://www56.zippyshare.com/v/66195277/file.html


Title: Re: Rolling fractals
Post by: cKleinhuis on February 25, 2014, 10:39:20 PM
sweetly visualised, the reset buttons seems to need another click to the image to get the rolling circles displayed, and the first line seems to be let go for the preview visualisation :D



Title: Re: Rolling fractals
Post by: tly on February 26, 2014, 12:01:42 PM
sweetly visualised, the reset buttons seems to need another click to the image to get the rolling circles displayed, and the first line seems to be let go for the preview visualisation :D



thanks, ill try to correct that :)

Edit: done :)
http://www56.zippyshare.com/v/66195277/file.html

You can now load and save settings, this code
Code:
0;0.00001;30;200;false;true;true;-7,-2,0.5;0.7;2;true;
is this fractal :)
(http://i.imgur.com/JbSq93o.png)


Title: Re: Rolling fractals
Post by: Tglad on February 27, 2014, 06:40:59 AM
That's great, did you confirm that it gives the same results as the first few images on this thread?
I ask because the maths is a bit subtle, making sure the child circle is rolling relative to the parent ball's position _and_ orientation, not just relative to the parent's position.

Very cool snowflakes! I must try downloading the app.  :beer: :beer:  O0


Title: Re: Rolling fractals
Post by: tly on February 27, 2014, 04:59:04 PM
thanks :)

i think i made the same "mistake" as Matthen :D

these settings create Matthens picture:
Code:
0;0.0001;30;200;false;true;true;-3;0.3333333;1;false;

But what exactly is the mathematical difference?

Does rolling instead of sliding mean that you have to add up the rotations of the circles?
If it does, the option "add rotation" should do what you want :)


Title: Re: Rolling fractals
Post by: eiffie on February 27, 2014, 06:11:37 PM
I remember making that mistake too because the math is a bit easier. Your app gives nice results all the same. This is frustrating to port to GLSL since finding the rotation that would wind up painting the pixel (x,y) is not straight forward.


Title: Re: Rolling fractals
Post by: Tglad on February 28, 2014, 12:11:51 AM
"Does rolling instead of sliding mean that you have to add up the rotations of the circles?"
I think so...
say each child circle is n times smaller than its parent (e.g. 2* smaller), then it rotates locally at angular velocity n times its parent, so first child would spin at n, the grandchild at speed n + n^2, the great grandchild at n + n^2 + n^3, etc.


Title: Re: Rolling fractals
Post by: tly on February 28, 2014, 12:56:40 AM
I remember making that mistake too because the math is a bit easier. Your app gives nice results all the same. This is frustrating to port to GLSL since finding the rotation that would wind up painting the pixel (x,y) is not straight forward.

i made a shader with the rolling circles :)
the problem i have is to draw the line...
http://glsl.heroku.com/e#14650.0

"Does rolling instead of sliding mean that you have to add up the rotations of the circles?"
I think so...
say each child circle is n times smaller than its parent (e.g. 2* smaller), then it rotates locally at angular velocity n times its parent, so first child would spin at n, the grandchild at speed n + n^2, the great grandchild at n + n^2 + n^3, etc.

thanks, ill try that :)


Title: Re: Rolling fractals
Post by: eiffie on February 28, 2014, 05:23:13 PM
Yes drawing the fractal bit is the tough part. You can always draw a series of dots and connect them but it won't be any faster than the Java version and less accurate.  I tried finding the angle which would get you closest to the pixel by narrowing in on it through successive approximation but there are lots of local minima that make the job tricky. The result always had little bits missing.


Title: Re: Rolling fractals
Post by: Syntopia on February 28, 2014, 08:09:38 PM
i made a shader with the rolling circles :)
the problem i have is to draw the line...
http://glsl.heroku.com/e#14650.0

I think yase.chnk.us is a better fit for drawing these kind of images using WebGL. This uses GPU calculated point coordinates, instead of using a fullscren shader.

I ported your example here: http://goo.gl/Ql6Aic

(http://blog.hvidtfeldts.net/media/not.png)
(http://blog.hvidtfeldts.net/media/not2.png)


Title: Re: Rolling fractals
Post by: cKleinhuis on February 28, 2014, 08:41:07 PM
I think yase.chnk.us is a better fit for drawing these kind of images using WebGL. This uses GPU calculated point coordinates, instead of using a fullscren shader.

I ported your example here: http://goo.gl/Ql6Aic

(http://blog.hvidtfeldts.net/media/not.png)
(http://blog.hvidtfeldts.net/media/not2.png)

woot, great visualisation, too bad they not provide sliders ;) now, what about extending it to spheres :D


Title: Re: Rolling fractals
Post by: Syntopia on February 28, 2014, 09:28:03 PM
Yo
woot, great visualisation, too bad they not provide sliders ;) now, what about extending it to spheres :D

I think you can extend to 3D by making the rotation 3D, e.g: http://goo.gl/x5YuUj

(http://blog.hvidtfeldts.net/media/not3.png)


Title: Re: Rolling fractals
Post by: cKleinhuis on February 28, 2014, 09:38:08 PM
Yo
I think you can extend to 3D by making the rotation 3D, e.g: http://goo.gl/x5YuUj

(http://blog.hvidtfeldts.net/media/not3.png)

sweee-heeet!


Title: Re: Rolling fractals
Post by: tly on March 01, 2014, 01:28:56 AM
awesome :)


Title: Re: Rolling fractals
Post by: knighty on March 01, 2014, 03:49:41 PM
Yes!
 :wow:


Title: Re: Rolling fractals
Post by: youhn on March 01, 2014, 04:23:09 PM
... 4D  :hmh:



Or let it rotate in even bigger n-dimensional spaces and project back to 2D or 3D. Wish I had training some more math ...


Title: Re: Rolling fractals
Post by: eiffie on March 01, 2014, 05:16:06 PM
Love that 3d!


Title: Re: Rolling fractals
Post by: Dinkydau on March 01, 2014, 05:17:19 PM
That's awesome in 3d. Nice work


Title: Re: Rolling fractals
Post by: kram1032 on March 02, 2014, 01:01:01 AM
That 3D rolling fractal looks amazing!
I'd love to see how it is created though. Like, an animation of how it grows with all the, presumably, spheres that roll around each other.
It very much looks like a leaf-fractal, though I wonder whether there is some logical way to "fill in" the middle parts to get some additional internal structures.

EDIT: Oh wait, the way you coded this, wouldn't that be, like, tori circling each other? E.g. two orthogonal circles?
Really pretty results for sure. I wonder what other interesting base geometries could be used though.

And doing something with projective geometry could give interesting roughly plane-filling patterns.


Title: Re: Rolling fractals
Post by: tly on March 02, 2014, 06:28:29 PM
i think circle inversions could be interesting too :)


Title: Re: Rolling fractals
Post by: youhn on March 03, 2014, 12:16:59 AM
I think yase.chnk.us is a better fit for drawing these kind of images using WebGL. This uses GPU calculated point coordinates, instead of using a fullscren shader.

I ported your example here: http://goo.gl/Ql6Aic


Played around with your code to create this: http://yase.chnk.us/#x44


Title: Re: Rolling fractals
Post by: kram1032 on March 03, 2014, 07:16:24 PM
While I know that that's just noise, I really like how it seems to move like fire when it's especially rolled-up.


Title: Re: Rolling fractals
Post by: youhn on March 03, 2014, 10:53:01 PM
For those circle-in-circle things that pretty much fill up the whole space - or so it seems from a distance - could we not better wrap a sheet tightly around it and focus on that ... ?


Title: Re: Rolling fractals
Post by: laser blaster on March 07, 2014, 03:26:51 AM
I was playing around with "yet another shader editor",and I came up with an interesting kind of fractal that's similar to these rolling fractals, but different.

http://yase.chnk.us/#zjq

The fractal is made by adding a bunch of cosine waves together, with each successive wave having triple the frequency and 1/sqrt(3) the amplitude of the last. It looks very IFS-ish, but more varied. It's justa  parametric curve with the x and y positions being phase-shifted versions of teh same fractal wave. I also vary the phase over time. One thing I found striking was how the black, unfilled areas resemble distorted mandelbrot-like features, like the kind you get when you don't start iterating at the critical points, or in odd variants like Rudy Rucker's cubic mandelbrot.

http://yase.chnk.us/#prb
Here's a 3D one. For this one, instead of using cosine functions to make the fractal, I used cos(t+cos(3t)). It gives a little bit more interesting shapes.

http://yase.chnk.us/#5zz
This one's a 2D version of the last.






Title: Re: Rolling fractals
Post by: tly on March 07, 2014, 12:10:00 PM
I was playing around with "yet another shader editor",and I came up with an interesting kind of fractal that's similar to these rolling fractals, but different.

http://yase.chnk.us/#zjq

thats really interesting :)
your fractal even looks almost identical to some settings in my app:
(http://i.imgur.com/Z0dalkh.png)

Edit: not almost identical but exactly the same :)
you can try with Syntopias shader:
http://goo.gl/Ql6Aic
the settings are:

addRotation=false;
angleAmp =-3.0
scale = 1.0/sqrt(3.0);


Title: Re: Rolling fractals
Post by: jehovajah on April 07, 2014, 12:01:42 PM
Thanks for this guys!

As you know I a always going on about trochoids and Laz Plath. Currently I am working through Grassmann to see if I can intuit these trochoidal forms and justify their use as solutions to fluid dynamic formulations. I have not really scratched the surface of that yet because it involves a complete reeducation on my part. So I am in research mode more than fractal imaging and videoing mode.

There is a deep significance to rolling fractals Which I can hardly express, but ultimately they are the ground for every subjective process!

Keep fractaling guys! You are doing great stuff?


Title: Re: Rolling fractals
Post by: matsoljare on April 08, 2014, 08:16:46 PM
No animations yet?


Title: Re: Rolling fractals
Post by: youhn on April 08, 2014, 09:08:04 PM
Scrolling through the topic I found these:


https://www.youtube.com/watch?v=zn0C80TeMG4

https://glsl.heroku.com/e#14650.0

http://yase.chnk.us/#r=-.055,-.018,-.109,.992&z=5d000001004e030000000000000017e07ce669362a411ecf9b2bb4de8b741efce737ebf714ef8cd5a172f2fd2da4ba86f499f000605787f388fd666a030e0bf4b1f5351a700f87b5ae7ef7aefcd4d0165b8571c341f3c973e4480faba42367d7ec1185e341b88ccd6da65867f3571f3885d02acd842d9cb253072d9bf68cfb0add56c55224d8c76599eedee6a81b38f376434df511b5cd4441e66a1bf93998d2804dd3c665ea0f5b4acc78a68b3122fbd0726087ac9a8447f61f6167a5a1b99be999f28b4155b733a3760cec4a4387f8b6f52ce4c749bb16edc47eafd0136f9d6ba72654a6caa227ac5f9444af05aac6c25f1e78d63e09ed2ea740e87a3bd4ce223ed55d965779db2b188988efd0a95da0c1bb5ec329df96b696ab7131874e74c78b0d8662c2188cd4dd2c1307f41e18d7c3434b9288bdbe77ff07515b7660b359930e825e3962faef4f63c276cb4a3fb2e78e90f0aab6b29ea838ae55c4fd60c49fa86664f8254d9ae9816b7089220872f9982bce8a3f87d25a94c5125a62bbd2dd167a81d513cbcbda6cbac95902a843e4c3013b93ffcc4e50827fae977ed1f39a9feefa38f158732fa52a518a4468602afb3f3e91c91aa8363b56fd9976224cc367c39f3ae3fc5dc3f2e9ebc4d2e23218dece02c6c5da1027789d165f62e85ffaa43aa33737afac17a2fb9fa15bff2aca1000

http://yase.chnk.us/#r=.097,.92,-.374,.066&z=5d000001001e030000000000000017e07ce669362a411ecf9b2bb4de8b741efce737ebf714ef8cd5a172f2fd2da4ba86f499f000605787f388fd666a030e0bf4b1f5351a700f87b5ae7ef7aefcd4d0165b8571c341f3c973e4480faba42367d7ec1185e341b88ccd6da65867f3572c0628717530e911725ae1cefd0e43b45e3f3c81c26e620e0de39850661fb7585e830bbfc48c6af27aeb70ee3c2a6c90c1c9b4238dd6c3baa0e449d0e6e05f5c0e9956f3aa2d65db5993f610599c7a2357fe941c8875ea3260d620ae488e9e274399ef1f20f7ecb8b6b479d8600973661ce506b71ae8a3236a667b606badfc7a04c5a88708d97b5e54a456586754837abc8349040ca403ec71b7f6982528e362d1a92922e34fa7dda7bbb8ddebc89f6e10144a79eb3d3cf1a501357a309f43e55cdd4016e5ac9943f553e3f9d6357b36d05dc165b25b3ffd6848265de3ea6fa8007fe3bb4df98543bd837c9ec3e218127986e7d9d1c72b41d5b2a94a2a48260b4915c004228692837a7d01eac92a75725082a4c7f46307a907faf7b3983f8f17fbe278ec6ff6223926783d3cf98eba8bb10d7700d91e141f2191537e87dcf22e4d4adafb6e9bbad531b0b4f485e154ab157883ebd61f851f4c9fc48e2350d20142bc4128c9ea6a9021ffeeeff0ae

http://yase.chnk.us/#x44

http://yase.chnk.us/#zjq

http://yase.chnk.us/#prb

http://yase.chnk.us/#5zz

http://goo.gl/Ql6Aic

Most of them are interactive. You can rotate, zoom and change the code.


Title: Re: Rolling fractals
Post by: matsoljare on April 09, 2014, 09:59:56 PM
Yeah cool, would just love to see some high quality renderings.