startshape Test
CF::Background = [hue 240 sat 1 b -1] CF::Size = [s 1.4 1.5 x 0.3 y 0] CF::Impure = 1
sum(number item) = item +90.0
rotationxYX(number betavalue, number gammavalue, number x1, number y1, number z1) =
x1*cos(gammavalue) - z1*sin(gammavalue)
rotationyYX(number betavalue, number gammavalue, number x1, number y1, number z1) =
-x1*sin(gammavalue)*sin(betavalue) +
y1*cos(betavalue) - z1*cos(gammavalue)*sin(betavalue)
rotationzYX(number betavalue, number gammavalue, number x1, number y1, number z1) =
x1*sin(gammavalue)*cos(betavalue) +y1*sin(betavalue)
+ z1*cos(gammavalue)*cos(betavalue)
bifurkation(number value, number iterator) = value* iterator*(1 - iterator)
shape Test {
ball(35,100) [s .3 ] ring [r -35] starshower[]
}
shape ring {
loop i = 25,60 [] feigenbaum(960, 3.4+i*0.01,0.9 ) []
}
shape feigenbaum(natural iter, number a_value, number start)
{
if (iter > 0) { x1 =(a_value-3)*cos(start*360) y1 = (a_value-3)*sin(start*360) z1 = 0 ball1[ h 20..70 sat 0.1..0.4 x rotationxYX(75,0,
x1, y1, z1) y rotationyYX(75,0, x1, y1, z1) z (-2*rotationzYX(75,0, x1, y1, z1)) b (1-rotationzYX(70,0, x1, y1, z1))]
feigenbaum(iter--1, a_value, (a_value*
start*(1 - start))) []
} }
shape ball1 {
CIRCLE [s 0.005 ] ball1[s.98 sat -0.06 x 0.005 b -0.1]
}
shape ballcircle(number alpha1, gamma1, radius, width, height)
{
loop i = 720 [] { x1 = radius*cos(i/2) y1 = radius * sin(i/2) z1 = height x1new = rotationxYX(alpha1,gamma1,x1,y1,z1) y1new = rotationyYX(alpha1,gamma1,x1,y1,z1) z1new = rotationzYX(alpha1,gamma1,x1,y1,z1) CIRCLE( ) [ x x1new y y1new z z1new s width
]
}
}
shape ball(number gam1, number alph1) {
// alph1 rotation x // gam1 rotation y n = 100 loop k= -n, n [] ballcircle(alph1, gam1,(cos(k/n*90)), 0.09,
(sin(k/n*90))) [ sat 0.2 b ((k/n)+0.7) h 0..70] }
shape starshower {
loop i= 1,4000 [ ] { radius = 180*exp(-i*0.01) alpha1= 0..360 star [s (1.0*exp(-i*0.01)) x (radius*cos(alpha1)) y (radius*sin(alpha1)) z -100] }
}
shape star {
loop 1,1000 [s 0.8 ] CIRCLE [hue 30..60 x -0.1..0.1 y -0.1..0.1 sat 0.5..1 a 0.1..1 b 1] loop i=0,4 [] startreck[flip (i*45) s 0.4]
}
shape startreck {
CIRCLE [hue 10..60 sat 0.3 a 0.1..1 b 1] startreck[ s 0.9..0.95 x 0.2 y 0.1..0.2 z -1]
}