Page 1 of 1

Nice swirly stuff

Posted: Sun Jul 17, 2005 4:33 pm
by bob
Just starting to get up to speed with this. I like these abstract swirls based on code I found at Korsh.com. I changed and expanded the code to make it look more abstract and random. The code is quite long as it needs the same code for left and right. Every once in a while it switches direction when splitting.

Code: Select all

startshape FIRST

rule FIRST {
  CIRCLE { }
  STEPLEFT { r 20 x .8 }
  STEPLEFT { r 110 y .8 }
  STEPLEFT { r 200 x -.8}
  STEPLEFT { r 290 y -.8 }
}

rule FIRST {
  CIRCLE { }
  STEPRIGHT { r 20 x .8 }
  STEPRIGHT { r 110 y .8 }
  STEPRIGHT { r 200 x -.8}
  STEPRIGHT { r 290 y -.8 }
}

//
//	curve right
//
rule STEPRIGHT 20 {
  SQUARE {}
  STEPRIGHT {r -5 x .8 s 0.99  b 0.01} 
}

rule STEPRIGHT 0.5 {
  SQUARE {}
  STRAIGHTRIGHT {}
}

rule STEPRIGHT {
  SQUARE{}
  STEPRIGHT {r -10  x .8 s 0.95  b 0.01}
  STEPRIGHT {r 80 x .8 s 0.4  b  0.01}
}

rule STEPRIGHT {
  SQUARE{}
  STEPRIGHT {r -10  x .8 s 0.95  b 0.01}
  STEPRIGHT {r -80 x .8 s 0.4  b 0.01}
}

rule STEPRIGHT 0.2 {
	  FIRST {s 0.7 r 5}
}

//
//	curve left
//
rule STEPLEFT 20 {
  SQUARE {}
  STEPLEFT {r 5 x .8 s 0.99  b 0.01} 
}

rule STEPLEFT 0.5 {
  SQUARE {}
  STRAIGHTLEFT {}
}

rule STEPLEFT {
  SQUARE{}
  STEPLEFT {r 10  x .8 s 0.95  b 0.01}
  STEPLEFT {r -80 x .8 s 0.4  b  0.01}
}

rule STEPLEFT {
  SQUARE{}
  STEPLEFT {r 10  x .8 s 0.95  b 0.01}
  STEPLEFT {r 80 x .8 s 0.4  b 0.01}
}

rule STEPLEFT 0.2 {
	  FIRST {s 0.8 r 5}
}


//
//	go straight and back right or left
//
rule STRAIGHTRIGHT  30 {
  SQUARE {}
  STRAIGHTRIGHT {x .8 s 0.99  b 0.01} 
}

rule STRAIGHTRIGHT {
  SQUARE {}
  STEPRIGHT {x .8 s 0.99  b 0.01} 
}

rule STRAIGHTLEFT 30 {
  SQUARE {}
  STRAIGHTLEFT {x .8 s 0.99  b 0.01} 
}

rule STRAIGHTLEFT {
  SQUARE {}
  STEPLEFT {x .8 s 0.99  b 0.01} 
}