Logo by haltenny - Contribute your own Logo!

END OF AN ERA, FRACTALFORUMS.COM IS CONTINUED ON FRACTALFORUMS.ORG

it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Did you know ? you can use LaTex inside Postings on fractalforums.com!
 
*
Welcome, Guest. Please login or register. March 28, 2024, 08:15:46 PM


Login with username, password and session length


The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!


Pages: [1]   Go Down
  Print  
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: The power of fold  (Read 1622 times)
Description: Folding operation and tilings
0 Members and 1 Guest are viewing this topic.
knighty
Fractal Iambus
***
Posts: 819


« on: September 07, 2011, 09:30:45 PM »

Well... this is not a new theory but rather a trick to render spherical, euclidean and hyperbolic tesselations using folding operation. While I was playing with "kleinian drops" boxplorer shader I was surprised to see some hyperbolic tesselations like patterns. After some investigations I wrote this little scripts for evaldraw (link) and fragmentarium (link).
For now, I'm wondering if it is possible to get the so called "wallpaper groups" using this technique.
Logged
subblue
Conqueror
*******
Posts: 116



WWW
« Reply #1 on: September 07, 2011, 11:21:13 PM »

Nicely done. Funny that - I've also recently been playing around with hyperbolic mappings after seeing Jos Leys Ringworld article smiley
Logged

www.subblue.com - a blog exploring mathematical and generative graphics
s31415
Conqueror
*******
Posts: 110



WWW
« Reply #2 on: September 08, 2011, 01:36:20 AM »

Hi,

I did implement the wallpaper groups in UltraFractal in a related way. The algorithm takes a shape, for instance a continuous circular gradient centered at the origin, and creates rotated and shifted copies so that the whole pattern admits any given wallpaper group as a symmetry group. Check the following UF parameter file.

Best wishes,

Sam

Fractal1 {
::vsegkin2dqVyutRSS07Gw/DC8eJn7L9AepPM9pZgBsxMHbUNZJZCzNQS12+vfeJJzXE0WuHp
  GwHkjsyIjM2evIle4w4iTjr/l3+m7u70qTrnmP7feRkd2dfZ1yTfaexYu7TTre8TnO/jrH/2
  0hjzttds4w0yVnOOf2HG380067+X72ud10h/R5dO/7cGrd2bfz5v/s+XMu/0qdbnP7XHX85H
  Ps7ptLnd3u9jLWd6bztQ1bmO840mdLnmv7PnOgN+23sZc/+Vbf8y+n2ea6wcz7wXO+42mJ8w
  uDbea945l3M+1Vt1ba6hVrn2OuB3mPcac7yxDLv/pH2M7OohDfb+s3v6rTrhtta7xVLnuc5P
  Mu94DY7b3td6tvZ3Tn+xlWva704BlyPOu5+nWsm69jHG3/fWN9lZttt/3b/3P8px99vc9f8L
  f8D/+/dc969Q4hfDug9Hnp/w7/zf/xptTHWtodN+OtgFhps/4ZNaN2vbt3/bfvqfOd0877nv
  P84NShTf/Yz1afGx2527/B9glG3+IyXqm7N3syypF739l5ufcPf8A+h5zWsbzmdbv4O6r9rr
  3t4zze2NcrP5ZX/G3yPTJ8j+j2Z9z/yHO/lXC6I96Hs3P2XZ2La//1h0f2Wkj/VspnOOd4v1
  Gv9C/i34+z//eZ59en3kzvzcvN1+hXvO2gy+joA81szlHW9wpWPhXzmOuYEZu2XzWOs7045u
  Xm/O764pp9vude8zTf51vjX/5Mec/0iT/1+iLlWPbd773ta7pZ/f38LvI44z1p7Vth9NT6ll
  Ej0W9t6f/061f86CzeJ7+1WbfeH8of5bZLMsb32jHGXuCFNnBoOuZ3OAUvd3dMLdIlvb12lT
  fdu5uF7Wv7w8UtksxyVpurSzWbGltNtcZB/1FKxkLZrXlGvKtaqGXweVauLNHSWbRUS56CWj
  3XcR3VxWDlXSev13lfhMxllshYIY7Wv1T55izLqKQ5lQB7ROcbStFv11tWbmnetG8FTXeVf6
  mYJ56Xbs3+WM5QMl6y7uvaJnzXyPvuSQtDf0zdQPYN4q8sdZ5srJQvK3tWX3HWjhiz1v3+uL
  s6KBH1j3J6pUgRxbtnBU85Vqef3eywDFDdz0nE9kseE+i9V62Ts6tVPP4aXc2HKme6VQFRTe
  kxY7bI4peqxUs7pDd/WMkNmCFrsnIylypujI0jmRnJX5FI0tngzZih+XHNie8BgOl63rYPU6
  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
  o/3Xgr90t/PAA30zuC==
}
Logged

knighty
Fractal Iambus
***
Posts: 819


« Reply #3 on: September 08, 2011, 09:30:52 PM »

Subblue: Scary! in fact no but sometime I feel like people here read each other minds alien. Have you seen this picture by trafassel.

s31415: Wow! great work. Thank you very much. I'll try to study it.
Logged
subblue
Conqueror
*******
Posts: 116



WWW
« Reply #4 on: September 08, 2011, 11:36:51 PM »

Subblue: Scary! in fact no but sometime I feel like people here read each other minds alien. Have you seen this picture by trafassel.
Indeed! Cool picture
Logged

www.subblue.com - a blog exploring mathematical and generative graphics
subblue
Conqueror
*******
Posts: 116



WWW
« Reply #5 on: September 10, 2011, 10:49:46 PM »

This is a very interesting presentation with lots of nice hyperbolic kaleidoscopes:
http://bulatov.org/math/1107/
Logged

www.subblue.com - a blog exploring mathematical and generative graphics
s31415
Conqueror
*******
Posts: 110



WWW
« Reply #6 on: September 10, 2011, 11:20:42 PM »

Thanks for the link! These non-periodic Euclidean tilings near the end are amazing. I have to implement this...

Sam
Logged

knighty
Fractal Iambus
***
Posts: 819


« Reply #7 on: September 10, 2011, 11:34:40 PM »

Tremendous work! It deserves a place in the "site of the month" thread smiley
Humm... it should be doable with circular (spherical) foldings.

I have cited bulatov's site in the evaldraw script attached to the OP but forgotten to do so in the fragmentarium one Sceptical.

I'm curious about his rendering technique. Maybe he is using foldings or a the technique described in this (awesome) paper.(also forgotten to cite this one...)

Logged
knighty
Fractal Iambus
***
Posts: 819


« Reply #8 on: September 12, 2011, 10:37:50 PM »

Humm... it should be doable with circular (spherical) foldings.
Here is an evaldraw script:
Code:
static mi=10;//max iteration
static l=4;//
static ratio=0.5;
static angle=0.0;
static xc,rx,yc,ry;
(x,y){
   static frm=-1;
   if(frm<numframes){
      frm=numframes;
      k=0;
      if(keystatus[0xc8]){//up
         ratio+=0.001;k=1;
         ratio=min(ratio,1);
      }
      if(keystatus[0xd0]){//dn
         ratio-=0.001;k=1;
         ratio=max(0,ratio);
      }
      if(keystatus[0xcd]){//right
         keystatus[0xcd]=0;
         l+=1;k=1;
      }
      if(keystatus[0xcb]){//left
         keystatus[0xcb]=0;
         if(l>3) l-=1;k=1;
      }
      if(keystatus[0xc9]){//pgup
         angle+=0.001;k=1;
         angle=min(angle,1);
      }
      if(keystatus[0xd1]){//pgdn
         angle-=0.001;k=1;
         angle=max(angle,0);
      }
      if(keystatus[0x4e]){//numpad +
         keystatus[0x4e]=0;
         mi+=1;
      }
      if(keystatus[0x4a]){//numpad -
         keystatus[0x4a]=0;
         if(mi>0) mi-=1;
      }
      if(frm==0 || k) init(l,tan(0.5*pi*ratio),0.5*pi*angle);
   }
  
      //if(x*x+y*y>1) return 0;
      k=bulatov(x,y);
}
checker(rf0,rf1,rf2,rf3){
   //return (1*rf0+1*rf1+1*rf2+1*rf3)/1/mi;//for example
   //if((rf0+rf1+rf2+rf3)==0) return 10;//in order to show the fundamental domain
   0.1+0.4*((1*rf0+1*rf1+1*rf2+1*rf3)%2)
   //(((1*rf0+1*rf1+1*rf2+1*rf3)%2)*0.5-0.5)*(1*rf0+1*rf1+1*rf2+1*rf3)/mi+0.5
}
inside(x,y){
   x=abs(x);y=abs(y);
   v=(1-x/xc-y/yc>0);
   x-=xc;
   r2=x*x+y*y;
   if(rx>0) k=max(rx*rx/r2,1); else k=min(rx*rx/r2,1);
   v=v&&(k==1);
   x+=xc;
   y-=yc;
   r2=x*x+y*y;
   k=max(ry*ry/r2,1);
   v=v&&(k==1);
   y+=yc;
   v
}
bulatov(&x,&y){
   ax=x+1;ay=y+1;
   rf0=0;rf1=0;rf2=0;rf3=0;arf=1;i=0;
   for(i=0;i<mi && arf!=(rf0+rf1+rf2+rf3);i++){//if current iterate is inside the fundamental triagle we are done
      arf=(rf0+rf1+rf2+rf3);
      ax=x;ay=y;
      //1st fold
      x=abs(x);rf0+=x!=ax;
      //2nd fold
      y=abs(y);rf1+=y!=ay;
      //3rd fold
      x-=xc;
      r2=x*x+y*y;
      if(rx>0) k=max(rx*rx/r2,1); else k=min(rx*rx/r2,1);
      rf2+=k!=1;
      x*=k;y*=k;
      x+=xc;
      //4th fold
      y-=yc;
      r2=x*x+y*y;
      k=max(ry*ry/r2,1);rf3+=k!=1;
      x*=k;y*=k;
      y+=yc;
   }
   (inside(x,y))*checker(rf0,rf1,rf2,rf3)
}
init(l,k,angle){
   c=cos(pi/l);
   rx=1/sqrt(k*c);
   ry=sqrt(k/c);
   xc=sqrt(1+rx*rx);
   yc=sqrt(1+ry*ry);
   s=sin(angle);c=cos(angle);
   xc1=c*xc*(1-s*xc)/((xc-s)^2-(rx*c)^2);
   rx=(rx*(1-s*xc)/((xc-s)^2-(rx*c)^2));
   xc=xc1;
}
controls:
-{up} & {down} arrows.
-{left} & {right} arrows
-{page up} and {page down}
- numeric pad {+} & {-}
- {F7} & {shift]+{F7}


* bulatov-fractal.JPG (82.6 KB, 648x514 - viewed 91 times.)
« Last Edit: September 12, 2011, 10:43:51 PM by knighty » Logged
Pages: [1]   Go Down
  Print  
 
Jump to:  

Related Topics
Subject Started by Replies Views Last post
Generalized Box Fold. Amazing Box, Amazing Surf and variations « 1 2 » fractower 25 8377 Last post September 23, 2011, 11:31:57 PM
by knighty
3-fold symmetry Still Frame Kalles Fraktaler 0 1187 Last post May 08, 2014, 05:02:44 PM
by Kalles Fraktaler
Infinitized (Sierpinski) fold using bitwise operators (new) Theories & Research DarkBeam 7 594 Last post February 06, 2015, 12:56:01 AM
by DarkBeam
A weird cut-fold toy Fragmentarium DarkBeam 5 1568 Last post September 14, 2015, 06:16:29 PM
by Patryk Kizny
Fold Box Mod Mandelbulber Gallery mclarekin 0 752 Last post February 13, 2016, 09:19:00 PM
by mclarekin

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.18 seconds with 24 queries. (Pretty URLs adds 0.01s, 2q)