You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.2 KiB
54 lines
1.2 KiB
startshape GRID (1000,1000)[] //( 640, 640 ) []
|
|
|
|
CF::Time = [time 0 1]
|
|
CF::Background = [ b -1 ]
|
|
CF::MinimumSize = 0.0001
|
|
|
|
sine(t,amp,freq,phase) = amp*sin( 360 * (freq*t + phase) )
|
|
|
|
dist ( n, o ) = abs ( n - o )
|
|
inv2 ( n ) = 1/n^2
|
|
|
|
para ( n, o, p ) = n^2*o+p
|
|
|
|
st0 = sine ( ftime(), 1, 3, 0.2 )
|
|
st1 = sine ( ftime(), 1, 3, 0.5 )
|
|
st2 = sine ( ftime(), 1, 2, 0.9 )
|
|
|
|
shape GRID ( natural n, natural o )
|
|
{
|
|
loop i=n []
|
|
{
|
|
si0 = sine ( i/n, 1, 1, 0 )
|
|
si1 = sine ( i/n, 1, 2, 0.2 )
|
|
si2 = sine ( i/n, 1, 3, 0.7 )
|
|
|
|
s0 = sine ( (1/n)*i, o/3*si0, 3, ftime() )+st0
|
|
s1 = sine ( (1/n)*i, o/3*si1, 2, ftime() )+st1
|
|
s2 = sine ( (1/n)*i, o/3*si2, 1, ftime() )+st2
|
|
|
|
X = i-(n/2)
|
|
|
|
|
|
loop j=o []
|
|
{
|
|
|
|
Y = j-(o/2)
|
|
|
|
BC = 0.02
|
|
BN = 2/3
|
|
BM = 1.4
|
|
B0 = BN/para ( BC, dist ( Y, s0 )^2, BM )
|
|
B1 = BN/para ( BC, dist ( Y, s1 )^2, BM )
|
|
B2 = BN/para ( BC, dist ( Y, s2 )^2, BM )
|
|
|
|
B = B0+B1+B2
|
|
S = 1.2-(B0+B1+B2)
|
|
H = st0*st1*st2*si0+190
|
|
|
|
SQUARE [ x X y Y b B sat S hue H]
|
|
}
|
|
}
|
|
|
|
}
|