|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
Objectcommon:Generic
common:Coloring
common:GradientColoring
mmf:MMF_DLA
class
class MMF_DLA(common.ulb:GradientColoring) {
public:
import "common.ulb"
; @param pparent the parent, generally "this" from the parent, or zero
func MMF_DLA(Generic pparent)
GradientColoring.GradientColoring(pparent)
float nd[16]
bool ss[16,16]
complex p = (0,0)
float d = 0.0
float rot = (270.0+@angle)*(#pi/180.0) ; degrees to radians conversion
float ele = @elevation*(#pi/180.0)
int i = 0
int j = 0
int k = 0
int l = 0
int z = 0
int a = 0
int b = 0
int c = @numgenerations
bool f = true
; The lighting Normal
lx = cos(rot) * cos(ele)
ly = sin(rot) * cos(ele)
lz = sin(ele)
i = #height + 3 + @offset
repeat
j = #width + 3 + @offset
repeat
s[j,i] = 0
until (j=j-1)<0
until (i=i-1)<0
i = ceil((#height+4+@offset)/64) - 1
repeat
j = ceil((#width+4+@offset)/64) - 1
repeat
k = 16
repeat
t[j,i,k] = 0
until (k=k-1)<0
until (j=j-1)<0
until (i=i-1)<0
i = 15
repeat
g[i] = 0
tn[i] = 0
top[i] = 100000000
btm[i] = -1
lft[i] = 100000000
rgt[i] = -1
until (i=i-1)<0
mxl = 100000000
mxr = -1
mxu = 100000000
mxd = -1
r = @seed
n = 0
q = (#width+@offset)*(#height+@offset)
if @use=="Pixel Count"
q = @pixels
elseif @use=="Percentage"
q = round(0.01*@percent*q)
endif
a = q
pn[0] = @palmin1
pn[1] = @palmin2
pn[2] = @palmin3
pn[3] = @palmin4
pn[4] = @palmin5
pn[5] = @palmin6
pn[6] = @palmin7
pn[7] = @palmin8
pn[8] = @palmin9
pn[9] = @palmin10
pn[10] = @palmin11
pn[11] = @palmin12
pn[12] = @palmin13
pn[13] = @palmin14
pn[14] = @palmin15
pn[15] = @palmin16
px[0] = @palmax1 - @palmin1
px[1] = @palmax2 - @palmin2
px[2] = @palmax3 - @palmin3
px[3] = @palmax4 - @palmin4
px[4] = @palmax5 - @palmin5
px[5] = @palmax6 - @palmin6
px[6] = @palmax7 - @palmin7
px[7] = @palmax8 - @palmin8
px[8] = @palmax9 - @palmin9
px[9] = @palmax10 - @palmin10
px[10] = @palmax11 - @palmin11
px[11] = @palmax12 - @palmin12
px[12] = @palmax13 - @palmin13
px[13] = @palmax14 - @palmin14
px[14] = @palmax15 - @palmin15
px[15] = @palmax16 - @palmin16
lc[0] = @lightcol1
lc[1] = @lightcol2
lc[2] = @lightcol3
lc[3] = @lightcol4
lc[4] = @lightcol5
lc[5] = @lightcol6
lc[6] = @lightcol7
lc[7] = @lightcol8
lc[8] = @lightcol9
lc[9] = @lightcol10
lc[10] = @lightcol11
lc[11] = @lightcol12
lc[12] = @lightcol13
lc[13] = @lightcol14
lc[14] = @lightcol15
lc[15] = @lightcol16
m[0] = @method1
m[1] = @method2
m[2] = @method3
m[3] = @method4
m[4] = @method5
m[5] = @method6
m[6] = @method7
m[7] = @method8
m[8] = @method9
m[9] = @method10
m[10] = @method11
m[11] = @method12
m[12] = @method13
m[13] = @method14
m[14] = @method15
m[15] = @method16
nd[0] = @nodirection1*sqrt(#width*#height/(640*480))
nd[1] = @nodirection2*sqrt(#width*#height/(640*480))
nd[2] = @nodirection3*sqrt(#width*#height/(640*480))
nd[3] = @nodirection4*sqrt(#width*#height/(640*480))
nd[4] = @nodirection5*sqrt(#width*#height/(640*480))
nd[5] = @nodirection6*sqrt(#width*#height/(640*480))
nd[6] = @nodirection7*sqrt(#width*#height/(640*480))
nd[7] = @nodirection8*sqrt(#width*#height/(640*480))
nd[8] = @nodirection9*sqrt(#width*#height/(640*480))
nd[9] = @nodirection10*sqrt(#width*#height/(640*480))
nd[10] = @nodirection11*sqrt(#width*#height/(640*480))
nd[11] = @nodirection12*sqrt(#width*#height/(640*480))
nd[12] = @nodirection13*sqrt(#width*#height/(640*480))
nd[13] = @nodirection14*sqrt(#width*#height/(640*480))
nd[14] = @nodirection15*sqrt(#width*#height/(640*480))
nd[15] = @nodirection16*sqrt(#width*#height/(640*480))
sz[0] = ceil(0.01*@size1*(#width+4+@offset)*(#height+4+@offset))
sz[1] = ceil(0.01*@size2*(#width+4+@offset)*(#height+4+@offset))
sz[2] = ceil(0.01*@size3*(#width+4+@offset)*(#height+4+@offset))
sz[3] = ceil(0.01*@size4*(#width+4+@offset)*(#height+4+@offset))
sz[4] = ceil(0.01*@size5*(#width+4+@offset)*(#height+4+@offset))
sz[5] = ceil(0.01*@size6*(#width+4+@offset)*(#height+4+@offset))
sz[6] = ceil(0.01*@size7*(#width+4+@offset)*(#height+4+@offset))
sz[7] = ceil(0.01*@size8*(#width+4+@offset)*(#height+4+@offset))
sz[8] = ceil(0.01*@size9*(#width+4+@offset)*(#height+4+@offset))
sz[9] = ceil(0.01*@size10*(#width+4+@offset)*(#height+4+@offset))
sz[10] = ceil(0.01*@size11*(#width+4+@offset)*(#height+4+@offset))
sz[11] = ceil(0.01*@size12*(#width+4+@offset)*(#height+4+@offset))
sz[12] = ceil(0.01*@size13*(#width+4+@offset)*(#height+4+@offset))
sz[13] = ceil(0.01*@size14*(#width+4+@offset)*(#height+4+@offset))
sz[14] = ceil(0.01*@size15*(#width+4+@offset)*(#height+4+@offset))
sz[15] = ceil(0.01*@size16*(#width+4+@offset)*(#height+4+@offset))
dtct[0] = (@detect1 - 1.0)/#randomrange
dtct[1] = (@detect2 - 1.0)/#randomrange
dtct[2] = (@detect3 - 1.0)/#randomrange
dtct[3] = (@detect4 - 1.0)/#randomrange
dtct[4] = (@detect5 - 1.0)/#randomrange
dtct[5] = (@detect6 - 1.0)/#randomrange
dtct[6] = (@detect7 - 1.0)/#randomrange
dtct[7] = (@detect8 - 1.0)/#randomrange
dtct[8] = (@detect9 - 1.0)/#randomrange
dtct[9] = (@detect10 - 1.0)/#randomrange
dtct[10] = (@detect11 - 1.0)/#randomrange
dtct[11] = (@detect12 - 1.0)/#randomrange
dtct[12] = (@detect13 - 1.0)/#randomrange
dtct[13] = (@detect14 - 1.0)/#randomrange
dtct[14] = (@detect15 - 1.0)/#randomrange
dtct[15] = (@detect16 - 1.0)/#randomrange
mov[0] = @move1
mov[1] = @move2
mov[2] = @move3
mov[3] = @move4
mov[4] = @move5
mov[5] = @move6
mov[6] = @move7
mov[7] = @move8
mov[8] = @move9
mov[9] = @move10
mov[10] = @move11
mov[11] = @move12
mov[12] = @move13
mov[13] = @move14
mov[14] = @move15
mov[15] = @move16
ss[0,0] = @seed1stimulus1
ss[0,1] = @seed1stimulus2
ss[0,2] = @seed1stimulus3
ss[0,3] = @seed1stimulus4
ss[0,4] = @seed1stimulus5
ss[0,5] = @seed1stimulus6
ss[0,6] = @seed1stimulus7
ss[0,7] = @seed1stimulus8
ss[0,8] = @seed1stimulus9
ss[0,9] = @seed1stimulus10
ss[0,10] = @seed1stimulus11
ss[0,11] = @seed1stimulus12
ss[0,12] = @seed1stimulus13
ss[0,13] = @seed1stimulus14
ss[0,14] = @seed1stimulus15
ss[0,15] = @seed1stimulus16
ss[1,0] = @seed2stimulus1
ss[1,1] = @seed2stimulus2
ss[1,2] = @seed2stimulus3
ss[1,3] = @seed2stimulus4
ss[1,4] = @seed2stimulus5
ss[1,5] = @seed2stimulus6
ss[1,6] = @seed2stimulus7
ss[1,7] = @seed2stimulus8
ss[1,8] = @seed2stimulus9
ss[1,9] = @seed2stimulus10
ss[1,10] = @seed2stimulus11
ss[1,11] = @seed2stimulus12
ss[1,12] = @seed2stimulus13
ss[1,13] = @seed2stimulus14
ss[1,14] = @seed2stimulus15
ss[1,15] = @seed2stimulus16
ss[2,0] = @seed3stimulus1
ss[2,1] = @seed3stimulus2
ss[2,2] = @seed3stimulus3
ss[2,3] = @seed3stimulus4
ss[2,4] = @seed3stimulus5
ss[2,5] = @seed3stimulus6
ss[2,6] = @seed3stimulus7
ss[2,7] = @seed3stimulus8
ss[2,8] = @seed3stimulus9
ss[2,9] = @seed3stimulus10
ss[2,10] = @seed3stimulus11
ss[2,11] = @seed3stimulus12
ss[2,12] = @seed3stimulus13
ss[2,13] = @seed3stimulus14
ss[2,14] = @seed3stimulus15
ss[2,15] = @seed3stimulus16
ss[3,0] = @seed4stimulus1
ss[3,1] = @seed4stimulus2
ss[3,2] = @seed4stimulus3
ss[3,3] = @seed4stimulus4
ss[3,4] = @seed4stimulus5
ss[3,5] = @seed4stimulus6
ss[3,6] = @seed4stimulus7
ss[3,7] = @seed4stimulus8
ss[3,8] = @seed4stimulus9
ss[3,9] = @seed4stimulus10
ss[3,10] = @seed4stimulus11
ss[3,11] = @seed4stimulus12
ss[3,12] = @seed4stimulus13
ss[3,13] = @seed4stimulus14
ss[3,14] = @seed4stimulus15
ss[3,15] = @seed4stimulus16
ss[4,0] = @seed5stimulus1
ss[4,1] = @seed5stimulus2
ss[4,2] = @seed5stimulus3
ss[4,3] = @seed5stimulus4
ss[4,4] = @seed5stimulus5
ss[4,5] = @seed5stimulus6
ss[4,6] = @seed5stimulus7
ss[4,7] = @seed5stimulus8
ss[4,8] = @seed5stimulus9
ss[4,9] = @seed5stimulus10
ss[4,10] = @seed5stimulus11
ss[4,11] = @seed5stimulus12
ss[4,12] = @seed5stimulus13
ss[4,13] = @seed5stimulus14
ss[4,14] = @seed5stimulus15
ss[4,15] = @seed5stimulus16
ss[5,0] = @seed6stimulus1
ss[5,1] = @seed6stimulus2
ss[5,2] = @seed6stimulus3
ss[5,3] = @seed6stimulus4
ss[5,4] = @seed6stimulus5
ss[5,5] = @seed6stimulus6
ss[5,6] = @seed6stimulus7
ss[5,7] = @seed6stimulus8
ss[5,8] = @seed6stimulus9
ss[5,9] = @seed6stimulus10
ss[5,10] = @seed6stimulus11
ss[5,11] = @seed6stimulus12
ss[5,12] = @seed6stimulus13
ss[5,13] = @seed6stimulus14
ss[5,14] = @seed6stimulus15
ss[5,15] = @seed6stimulus16
ss[6,0] = @seed7stimulus1
ss[6,1] = @seed7stimulus2
ss[6,2] = @seed7stimulus3
ss[6,3] = @seed7stimulus4
ss[6,4] = @seed7stimulus5
ss[6,5] = @seed7stimulus6
ss[6,6] = @seed7stimulus7
ss[6,7] = @seed7stimulus8
ss[6,8] = @seed7stimulus9
ss[6,9] = @seed7stimulus10
ss[6,10] = @seed7stimulus11
ss[6,11] = @seed7stimulus12
ss[6,12] = @seed7stimulus13
ss[6,13] = @seed7stimulus14
ss[6,14] = @seed7stimulus15
ss[6,15] = @seed7stimulus16
ss[7,0] = @seed8stimulus1
ss[7,1] = @seed8stimulus2
ss[7,2] = @seed8stimulus3
ss[7,3] = @seed8stimulus4
ss[7,4] = @seed8stimulus5
ss[7,5] = @seed8stimulus6
ss[7,6] = @seed8stimulus7
ss[7,7] = @seed8stimulus8
ss[7,8] = @seed8stimulus9
ss[7,9] = @seed8stimulus10
ss[7,10] = @seed8stimulus11
ss[7,11] = @seed8stimulus12
ss[7,12] = @seed8stimulus13
ss[7,13] = @seed8stimulus14
ss[7,14] = @seed8stimulus15
ss[7,15] = @seed8stimulus16
ss[8,0] = @seed9stimulus1
ss[8,1] = @seed9stimulus2
ss[8,2] = @seed9stimulus3
ss[8,3] = @seed9stimulus4
ss[8,4] = @seed9stimulus5
ss[8,5] = @seed9stimulus6
ss[8,6] = @seed9stimulus7
ss[8,7] = @seed9stimulus8
ss[8,8] = @seed9stimulus9
ss[8,9] = @seed9stimulus10
ss[8,10] = @seed9stimulus11
ss[8,11] = @seed9stimulus12
ss[8,12] = @seed9stimulus13
ss[8,13] = @seed9stimulus14
ss[8,14] = @seed9stimulus15
ss[8,15] = @seed9stimulus16
ss[9,0] = @seed10stimulus1
ss[9,1] = @seed10stimulus2
ss[9,2] = @seed10stimulus3
ss[9,3] = @seed10stimulus4
ss[9,4] = @seed10stimulus5
ss[9,5] = @seed10stimulus6
ss[9,6] = @seed10stimulus7
ss[9,7] = @seed10stimulus8
ss[9,8] = @seed10stimulus9
ss[9,9] = @seed10stimulus10
ss[9,10] = @seed10stimulus11
ss[9,11] = @seed10stimulus12
ss[9,12] = @seed10stimulus13
ss[9,13] = @seed10stimulus14
ss[9,14] = @seed10stimulus15
ss[9,15] = @seed10stimulus16
ss[10,0] = @seed11stimulus1
ss[10,1] = @seed11stimulus2
ss[10,2] = @seed11stimulus3
ss[10,3] = @seed11stimulus4
ss[10,4] = @seed11stimulus5
ss[10,5] = @seed11stimulus6
ss[10,6] = @seed11stimulus7
ss[10,7] = @seed11stimulus8
ss[10,8] = @seed11stimulus9
ss[10,9] = @seed11stimulus10
ss[10,10] = @seed11stimulus11
ss[10,11] = @seed11stimulus12
ss[10,12] = @seed11stimulus13
ss[10,13] = @seed11stimulus14
ss[10,14] = @seed11stimulus15
ss[10,15] = @seed11stimulus16
ss[11,0] = @seed12stimulus1
ss[11,1] = @seed12stimulus2
ss[11,2] = @seed12stimulus3
ss[11,3] = @seed12stimulus4
ss[11,4] = @seed12stimulus5
ss[11,5] = @seed12stimulus6
ss[11,6] = @seed12stimulus7
ss[11,7] = @seed12stimulus8
ss[11,8] = @seed12stimulus9
ss[11,9] = @seed12stimulus10
ss[11,10] = @seed12stimulus11
ss[11,11] = @seed12stimulus12
ss[11,12] = @seed12stimulus13
ss[11,13] = @seed12stimulus14
ss[11,14] = @seed12stimulus15
ss[11,15] = @seed12stimulus16
ss[12,0] = @seed13stimulus1
ss[12,1] = @seed13stimulus2
ss[12,2] = @seed13stimulus3
ss[12,3] = @seed13stimulus4
ss[12,4] = @seed13stimulus5
ss[12,5] = @seed13stimulus6
ss[12,6] = @seed13stimulus7
ss[12,7] = @seed13stimulus8
ss[12,8] = @seed13stimulus9
ss[12,9] = @seed13stimulus10
ss[12,10] = @seed13stimulus11
ss[12,11] = @seed13stimulus12
ss[12,12] = @seed13stimulus13
ss[12,13] = @seed13stimulus14
ss[12,14] = @seed13stimulus15
ss[12,15] = @seed13stimulus16
ss[13,0] = @seed14stimulus1
ss[13,1] = @seed14stimulus2
ss[13,2] = @seed14stimulus3
ss[13,3] = @seed14stimulus4
ss[13,4] = @seed14stimulus5
ss[13,5] = @seed14stimulus6
ss[13,6] = @seed14stimulus7
ss[13,7] = @seed14stimulus8
ss[13,8] = @seed14stimulus9
ss[13,9] = @seed14stimulus10
ss[13,10] = @seed14stimulus11
ss[13,11] = @seed14stimulus12
ss[13,12] = @seed14stimulus13
ss[13,13] = @seed14stimulus14
ss[13,14] = @seed14stimulus15
ss[13,15] = @seed14stimulus16
ss[14,0] = @seed15stimulus1
ss[14,1] = @seed15stimulus2
ss[14,2] = @seed15stimulus3
ss[14,3] = @seed15stimulus4
ss[14,4] = @seed15stimulus5
ss[14,5] = @seed15stimulus6
ss[14,6] = @seed15stimulus7
ss[14,7] = @seed15stimulus8
ss[14,8] = @seed15stimulus9
ss[14,9] = @seed15stimulus10
ss[14,10] = @seed15stimulus11
ss[14,11] = @seed15stimulus12
ss[14,12] = @seed15stimulus13
ss[14,13] = @seed15stimulus14
ss[14,14] = @seed15stimulus15
ss[14,15] = @seed15stimulus16
ss[15,0] = @seed16stimulus1
ss[15,1] = @seed16stimulus2
ss[15,2] = @seed16stimulus3
ss[15,3] = @seed16stimulus4
ss[15,4] = @seed16stimulus5
ss[15,5] = @seed16stimulus6
ss[15,6] = @seed16stimulus7
ss[15,7] = @seed16stimulus8
ss[15,8] = @seed16stimulus9
ss[15,9] = @seed16stimulus10
ss[15,10] = @seed16stimulus11
ss[15,11] = @seed16stimulus12
ss[15,12] = @seed16stimulus13
ss[15,13] = @seed16stimulus14
ss[15,14] = @seed16stimulus15
ss[15,15] = @seed16stimulus16
merge = new @merge(this)
DLAStimulus[0] = new @DLAStimulus1(this)
if @numstimuli>0
DLAStimulus[1] = new @DLAStimulus2(this)
if @numstimuli>1
DLAStimulus[2] = new @DLAStimulus3(this)
if @numstimuli>2
DLAStimulus[3] = new @DLAStimulus4(this)
if @numstimuli>3
DLAStimulus[4] = new @DLAStimulus5(this)
if @numstimuli>4
DLAStimulus[5] = new @DLAStimulus6(this)
if @numstimuli>5
DLAStimulus[6] = new @DLAStimulus7(this)
if @numstimuli>6
DLAStimulus[7] = new @DLAStimulus8(this)
if @numstimuli>7
DLAStimulus[8] = new @DLAStimulus9(this)
if @numstimuli>8
DLAStimulus[9] = new @DLAStimulus10(this)
if @numstimuli>9
DLAStimulus[10] = new @DLAStimulus11(this)
if @numstimuli>10
DLAStimulus[11] = new @DLAStimulus12(this)
if @numstimuli>11
DLAStimulus[12] = new @DLAStimulus13(this)
if @numstimuli>12
DLAStimulus[13] = new @DLAStimulus14(this)
if @numstimuli>13
DLAStimulus[14] = new @DLAStimulus15(this)
if @numstimuli>14
DLAStimulus[15] = new @DLAStimulus16(this)
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
DLADead = new @DLADead(this) ; "dead" point seeding
o = 0
DLASeed[0] = new @DLASeed1(this)
if @numplants>0
o = 1
DLASeed[1] = new @DLASeed2(this)
if @numplants>1
o = 2
DLASeed[2] = new @DLASeed3(this)
if @numplants>2
o = 3
DLASeed[3] = new @DLASeed4(this)
if @numplants>3
o = 4
DLASeed[4] = new @DLASeed5(this)
if @numplants>4
o = 5
DLASeed[5] = new @DLASeed6(this)
if @numplants>5
o = 6
DLASeed[6] = new @DLASeed7(this)
if @numplants>6
o = 7
DLASeed[7] = new @DLASeed8(this)
if @numplants>7
o = 8
DLASeed[8] = new @DLASeed9(this)
if @numplants>8
o = 9
DLASeed[9] = new @DLASeed10(this)
if @numplants>9
o = 10
DLASeed[10] = new @DLASeed11(this)
if @numplants>10
o = 11
DLASeed[11] = new @DLASeed12(this)
if @numplants>11
o = 12
DLASeed[12] = new @DLASeed13(this)
if @numplants>12
o = 13
DLASeed[13] = new @DLASeed14(this)
if @numplants>13
o = 14
DLASeed[14] = new @DLASeed15(this)
if @numplants>14
o = 15
DLASeed[15] = new @DLASeed16(this)
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
if n==0
$define DEBUG
print("Major Problem !")
print("No organism seeds planted.")
print("You need to rethink your seeding.")
$undef DEBUG
else
i = @numplants
repeat
if tn[i]==0
$define DEBUG
print("Warning: No seeds planted for organism ",i+1)
print("You may want to rethink your seeding.")
$undef DEBUG
endif
until (i=i-1)<0
z = 100000
b = q
repeat
o = 0
repeat
if (d=nd[o])>0.0 && tn[o]>0 && sz[o]>0
if tn[o]<d
d = tn[o]
endif
while d>=1.0
RandomGrowth(abs(r=random(r))%tn[o])
d = d - 1.0
endwhile
if abs(r=random(r))/#randomrange<d
RandomGrowth(abs(r=random(r))%tn[o])
endif
endif
until (o=o+1)>@numplants
i = @numstimuli
l = @pixelgrowth - 1
repeat
maxleft = 100000000
maxright = -1
maxup = 100000000
maxdown = -1
o = @numplants
repeat
if ss[o,i] && tn[o]>0 && sz[o]>0
if lft[o]<maxleft
maxleft = lft[o]
endif
if rgt[o]>maxright
maxright = rgt[o]
endif
if top[o]<maxup
maxup = top[o]
endif
if btm[o]>maxdown
maxdown = btm[o]
endif
endif
until (o=o-1)<0
if maxright>=0
if l<@pixelgrowth - 1
if @notinside
f = true
endif
pgx = real(p)
pgy = imag(p)
if pgx<0.0
pgx = 0.0
elseif pgx>#width+3+@offset
pgx = #width+3+@offset
endif
if pgy<0.0
pgy = 0.0
elseif pgy>#height+3+@offset
pgy = #height+3+@offset
endif
bx = floor(pgx/64)
by = floor(pgy/64)
elseif @notinside
f = true
j = @numtries
repeat
p = DLAStimulus[i].GetPoint(maxleft,maxright,maxup,maxdown)
pgx = real(p)
pgy = imag(p)
if pgx<0.0
pgx = 0.0
elseif pgx>#width+3+@offset
pgx = #width+3+@offset
endif
if pgy<0.0
pgy = 0.0
elseif pgy>#height+3+@offset
pgy = #height+3+@offset
endif
bx = floor(pgx/64)
by = floor(pgy/64)
if s[floor(pgx),floor(pgy)]>0
f = false
endif
until f || (j=j-1)<=0
else
p = DLAStimulus[i].GetPoint(maxleft,maxright,maxup,maxdown)
pgx = real(p)
pgy = imag(p)
if pgx<0.0
pgx = 0.0
elseif pgx>#width+3+@offset
pgx = #width+3+@offset
endif
if pgy<0.0
pgy = 0.0
elseif pgy>#height+3+@offset
pgy = #height+3+@offset
endif
bx = floor(pgx/64)
by = floor(pgy/64)
endif
fo = -1
if !@notinside || f
maxleft = floor(maxleft/64)
maxright = floor(maxright/64)
maxup = floor(maxup/64)
maxdown = floor(maxdown/64)
v = DLAStimulus[i].GetRange() \
*(0.0001*(sqr(#width+5)+sqr(#height+5)))
if (d = DLADead.DeadDistance(pgx,pgy))<v
v = d
endif
d = sqrt(v)
if (j=floor((pgx-d)/64))>maxleft
maxleft = j
endif
if (j=ceil((pgx+d)/64) - 1)<maxright
maxright = j
endif
if (j=floor((pgy-d)/64))>maxup
maxup = j
endif
if (j=ceil((pgy+d)/64) - 1)<maxdown
maxdown = j
endif
dir = DLAStimulus[i].Direction(pgx,pgy)
fk = -1
o = @numplants
repeat
if ss[o,i] && tn[o]>0 && sz[o]>0
PointGrowth()
endif
until (o=o-1)<0
if fk>=0
o = fo
NewGrowth(fk,sx[fx,fy,fk],sy[fx,fy,fk],fx,fy)
if @seeds=="Diamond"
MoreGrowth(sx[fx,fy,fk],sy[fx,fy,fk]-1)
MoreGrowth(sx[fx,fy,fk]-1,sy[fx,fy,fk])
MoreGrowth(sx[fx,fy,fk]+1,sy[fx,fy,fk])
MoreGrowth(sx[fx,fy,fk],sy[fx,fy,fk]+1)
endif
endif
endif
o = 0
repeat
if o!=fo && (d=-nd[o])>0.0 && tn[o]>0 && sz[o]>0
if tn[o]<d
d = tn[o]
endif
while d>=1.0
RandomGrowth(abs(r=random(r))%tn[o])
d = d - 1.0
endwhile
if abs(r=random(r))/#randomrange<d
RandomGrowth(abs(r=random(r))%tn[o])
endif
endif
until (o=o+1)>@numplants
else
l = 0
endif
if (l = l - 1)<0
l = 1
i = i - 1
endif
until i<0
c = c - 1
if (z=z-1)<=0
z = 100000
if b-q<=@fail*100000
n = -n
endif
b = q
if @showprogress
$define DEBUG
if @use=="Pixel Count"
print(" ",@pixels-q," pixels remaining.")
elseif @use=="Percentage"
print(" ",floor(10000*((a-q)/a))/100,"% completed")
else
print(" ",c," generations to go.")
endif
$undef DEBUG
endif
endif
until n<=0 || q<=0 || (@use=="Generations" && c<=0)
endif
if @showprogress
$define DEBUG
print("Completed.")
print("Number of Generations ",@numgenerations-c)
print("Sceeen Pixels Remaining ",(#width+@offset)*(#height+@offset) \
- a + q)
print("Screen %age converted ",round(10000*((a-q) \
/((#width+@offset)*(#height+@offset)))) \
/100 )
print("Seed points remaining ",abs(n))
$undef DEBUG
endif
endfunc
; @param k the number of the seed to grow
func RandomGrowth(int k)
int i = ceil((#height+4+@offset)/64) - 1
repeat
int j = ceil((#width+4+@offset)/64) - 1
repeat
if t[j,i,o+1]-t[j,i,o]>k
k = k + t[j,i,o]
int x = sx[j,i,k]
int y = sy[j,i,k]
NewGrowth(k,x,y,j,i)
return
else
k = k + t[j,i,o] - t[j,i,o+1]
endif
until (j=j-1)<0
until (i=i-1)<0
endfunc
func PointGrowth()
float w
float d
float dx
float dy
float det = dtct[o]
float mv = mov[o]
int xs
int ys
int xe
int ye
int ix
int iy
int e
int off = 10000
if bx<maxleft
off = maxleft - bx
elseif bx>maxright
off = bx - maxright
endif
if by<maxup
if maxup-by<off
off = maxup - by
endif
elseif by>maxdown
if by-maxdown<off
off = by - maxdown
endif
endif
if off==10000
off = 0
endif
off=0
repeat
e = 0
if (xs=bx-off)<maxleft
e = 1
xs = maxleft
endif
if (ys=by-off)<maxup
e = e + 1
ys = maxup
endif
if (xe=bx+off)>maxright
e = e + 1
xe = maxright
endif
if (ye=by+off)>maxdown
e = e + 1
ye = maxdown
endif
if e<4
iy = ys
ix = xs
repeat
if t[ix,iy,o+1]>t[ix,iy,o]
int i = t[ix,iy,o+1] - 1
repeat
w = sqr(dx=pgx-sx[ix,iy,i]) + sqr(dy=pgy-sy[ix,iy,i])
if @addrandom && det>0.0
w = w*sqr(1.0 + abs(r=random(r))*det)
endif
if @addmovement && dir!=0.0 && mv>0.0
d = sqrt(w)
w = sqr(d + mv*(d - dx*real(dir) - dy*imag(dir)))
endif
if w<v
v = w
w = sqrt(w)
if (fx=floor((pgx-w)/64))>maxleft
maxleft = fx
endif
if (fx=ceil((pgx+w)/64) - 1)<maxright
maxright = fx
endif
if (fy=floor((pgy-w)/64))>maxup
maxup = fy
endif
if (fy=ceil((pgy+w)/64) - 1)<maxdown
maxdown = fy
endif
fo = o
fk = i
fx = ix
fy = iy
endif
until (i=i-1)<t[ix,iy,o]
endif
until (ix=ix+1)>xe
if ye>ys
iy = ye
ix = xs
repeat
if t[ix,iy,o+1]>t[ix,iy,o]
int i = t[ix,iy,o+1] - 1
repeat
w = sqr(dx=pgx-sx[ix,iy,i]) + sqr(dy=pgy-sy[ix,iy,i])
if @addrandom && det>0.0
w = w*sqr(1.0 + abs(r=random(r))*det)
endif
if @addmovement && dir!=0.0 && mv>0.0
d = sqrt(w)
w = sqr(d + mv*(d - dx*real(dir) - dy*imag(dir)))
endif
if w<v
v = w
w = sqrt(w)
if (fx=floor((pgx-w)/64))>maxleft
maxleft = fx
endif
if (fx=ceil((pgx+w)/64) - 1)<maxright
maxright = fx
endif
if (fy=floor((pgy-w)/64))>maxup
maxup = fy
endif
if (fy=ceil((pgy+w)/64) - 1)<maxdown
maxdown = fy
endif
fo = o
fk = i
fx = ix
fy = iy
endif
until (i=i-1)<t[ix,iy,o]
endif
until (ix=ix+1)>xe
if (iy=ys+1)<ye
ix = xs
repeat
if t[ix,iy,o+1]>t[ix,iy,o]
int i = t[ix,iy,o+1] - 1
repeat
w = sqr(dx=pgx-sx[ix,iy,i]) + sqr(dy=pgy-sy[ix,iy,i])
if @addrandom && det>0.0
w = w*sqr(1.0 + abs(r=random(r))*det)
endif
if @addmovement && dir!=0.0 && mv>0.0
d = sqrt(w)
w = sqr(d + mv*(d - dx*real(dir) - dy*imag(dir)))
endif
if w<v
v = w
w = sqrt(w)
if (fx=floor((pgx-w)/64))>maxleft
maxleft = fx
endif
if (fx=ceil((pgx+w)/64) - 1)<maxright
maxright = fx
endif
if (fy=floor((pgy-w)/64))>maxup
maxup = fy
endif
if (fy=ceil((pgy+w)/64) - 1)<maxdown
maxdown = fy
endif
fo = o
fk = i
fx = ix
fy = iy
endif
until (i=i-1)<t[ix,iy,o]
endif
until (iy=iy+1)>=ye
if xe>xs
ix = xe
iy = ys + 1
repeat
if t[ix,iy,o+1]>t[ix,iy,o]
int i = t[ix,iy,o+1] - 1
repeat
w = sqr(dx=pgx-sx[ix,iy,i]) + sqr(dy=pgy-sy[ix,iy,i])
if @addrandom && det>0.0
w = w*sqr(1.0 + abs(r=random(r))*det)
endif
if @addmovement && dir!=0.0 && mv>0.0
d = sqrt(w)
w = sqr(d + mv*(d - dx*real(dir) - dy*imag(dir)))
endif
if w<v
v = w
w = sqrt(w)
if (fx=floor((pgx-w)/64))>maxleft
maxleft = fx
endif
if (fx=ceil((pgx+w)/64) - 1)<maxright
maxright = fx
endif
if (fy=floor((pgy-w)/64))>maxup
maxup = fy
endif
if (fy=ceil((pgy+w)/64) - 1)<maxdown
maxdown = fy
endif
fo = o
fk = i
fx = ix
fy = iy
endif
until (i=i-1)<t[ix,iy,o]
endif
until (iy=iy+1)>=ye
endif
endif
endif
off = off + 1
endif
until e>=4
endfunc
float func DeadDist()
float w
int xs
int ys
int xe
int ye
int ix
int iy
int e
int maxleft = mxl
int maxright = mxr
int maxup = mxu
int maxdown = mxd
int off = 10000
if bx<mxl
off = mxl - bx
elseif bx>mxr
off = bx - mxr
endif
if by<mxu
if mxu-by<off
off = mxu - by
endif
elseif by>mxd
if by-mxd<off
off = by - mxd
endif
endif
if off==10000
off = 0
endif
repeat
e = 0
if (xs=bx-off)<maxleft
e = 1
xs = maxleft
endif
if (ys=by-off)<maxup
e = e + 1
ys = maxup
endif
if (xe=bx+off)>maxright
e = e + 1
xe = maxright
endif
if (ye=by+off)>maxdown
e = e + 1
ye = maxdown
endif
if e<4
iy = ys
ix = xs
repeat
if t[ix,iy,0]>0
int i = t[ix,iy,0] - 1
repeat
if (w=sqr(pgx-sx[ix,iy,i])+sqr(pgy-sy[ix,iy,i]))<v
v = w
w = sqrt(w)
if (fx=floor((pgx-w)/64))>maxleft
maxleft = fx
endif
if (fx=ceil((pgx+w)/64) - 1)<maxright
maxright = fx
endif
if (fy=floor((pgy-w)/64))>maxup
maxup = fy
endif
if (fy=ceil((pgy+w)/64) - 1)<maxdown
maxdown = fy
endif
endif
until (i=i-1)<0
endif
until (ix=ix+1)>xe
if ye>ys
iy = ye
ix = xs
repeat
if t[ix,iy,0]>0
int i = t[ix,iy,0] - 1
repeat
if (w=sqr(pgx-sx[ix,iy,i])+sqr(pgy-sy[ix,iy,i]))<v
v = w
w = sqrt(w)
if (fx=floor((pgx-w)/64))>maxleft
maxleft = fx
endif
if (fx=ceil((pgx+w)/64) - 1)<maxright
maxright = fx
endif
if (fy=floor((pgy-w)/64))>maxup
maxup = fy
endif
if (fy=ceil((pgy+w)/64) - 1)<maxdown
maxdown = fy
endif
endif
until (i=i-1)<0
endif
until (ix=ix+1)>xe
if (iy=ys+1)<ye
ix = xs
repeat
if t[ix,iy,0]>0
int i = t[ix,iy,0] - 1
repeat
if (w=sqr(pgx-sx[ix,iy,i])+sqr(pgy-sy[ix,iy,i]))<v
v = w
w = sqrt(w)
if (fx=floor((pgx-w)/64))>maxleft
maxleft = fx
endif
if (fx=ceil((pgx+w)/64) - 1)<maxright
maxright = fx
endif
if (fy=floor((pgy-w)/64))>maxup
maxup = fy
endif
if (fy=ceil((pgy+w)/64) - 1)<maxdown
maxdown = fy
endif
endif
until (i=i-1)<0
endif
until (iy=iy+1)>=ye
if xe>xs
ix = xe
iy = ys + 1
repeat
if t[ix,iy,0]>0
int i = t[ix,iy,0] - 1
repeat
if (w=sqr(pgx-sx[ix,iy,i])+sqr(pgy-sy[ix,iy,i]))<v
v = w
w = sqrt(w)
if (fx=floor((pgx-w)/64))>maxleft
maxleft = fx
endif
if (fx=ceil((pgx+w)/64) - 1)<maxright
maxright = fx
endif
if (fy=floor((pgy-w)/64))>maxup
maxup = fy
endif
if (fy=ceil((pgy+w)/64) - 1)<maxdown
maxdown = fy
endif
endif
until (i=i-1)<0
endif
until (iy=iy+1)>=ye
endif
endif
endif
off = off + 1
endif
until e>=4
return v
endfunc
; @param k the index for the point number
; @param x pixel x coordinate
; @param y pixel y coordinate
; @param ix 64*64 box x index
; @param iy 64*64 box y index
func NewGrowth(int k, int x, int y, int ix, int iy)
int i = o + 1
int j
if s[x,y]==-1
s[x,y] = (g[o]=g[o]+1)*16 + o
if x>=2 && x<=#width+1+@offset && y>=2 && y<=#height+1+@offset
q = q - 1
endif
n = n - 1
tn[o] = tn[o] - 1
sz[o] = sz[o] - 1
repeat
t[ix,iy,i] = t[ix,iy,i] - 1
sx[ix,iy,k] = sx[ix,iy,t[ix,iy,i]]
sy[ix,iy,k] = sy[ix,iy,t[ix,iy,i]]
k = t[ix,iy,i]
until (i=i+1)>@numplants+1
x = x - 1
y = y - 1
if (i=y+2)<=#height+3+@offset
if @seeds=="Square"
j = x + 2
repeat
if j>=0 && j<=#width+3+@offset && s[j,i]==0
NewSeed(j,i)
endif
until (j=j-1)<x
else
if s[x+1,i]==0
NewSeed(x+1,i)
endif
endif
endif
i = y + 1
if (j=x+2)<=#width+3+@offset
if s[j,i]==0
NewSeed(j,i)
endif
endif
if x>=0
if s[x,i]==0
NewSeed(x,i)
endif
endif
if y>=0
if @seeds=="Square"
j = x + 2
repeat
if j>=0 && j<=#width+3+@offset && s[j,y]==0
NewSeed(j,y)
endif
until (j=j-1)<x
else
if s[x+1,y]==0
NewSeed(x+1,y)
endif
endif
endif
endif
endfunc
func MoreGrowth(int x,int y)
if x>=0 && x<=#width+3+@offset && y>=0 && y<=#height+3+@offset
int ix = floor(x/64)
int iy = floor(y/64)
int i = t[ix,iy,o+1]
while (i=i-1)>=t[ix,iy,o]
if sx[ix,iy,i]==x && sy[ix,iy,i]==y
NewGrowth(i,x,y,ix,iy)
i = -1
endif
endwhile
endif
endfunc
; @param x the x pixel coordinate
; @param y the y pixel coordinate
func NewSeed(int x,int y)
int i = @numplants + 1
int ix = floor(x/64)
int iy = floor(y/64)
repeat
sx[ix,iy,t[ix,iy,i]] = sx[ix,iy,t[ix,iy,i-1]]
sy[ix,iy,t[ix,iy,i]] = sy[ix,iy,t[ix,iy,i-1]]
t[ix,iy,i] = t[ix,iy,i] + 1
until (i=i-1)<=o
sx[ix,iy,t[ix,iy,o]] = x
sy[ix,iy,t[ix,iy,o]] = y
if x<lft[o]
lft[o] = x
endif
if x>rgt[o]
rgt[o] = x
endif
if y<top[o]
top[o] = y
endif
if y>btm[o]
btm[o] = y
endif
tn[o] = tn[o] + 1
if x>0 && x<#width+3+@offset && y>0 && y<#height+3+@offset
n = n + 1
s[x,y] = -1
else
s[x,y] = -2
endif
endfunc
; @param x the x pixel coordinate
; @param y the y pixel coordinate
; @param c the dead point colour
; @param i the dead point palette index
func SetDeadPoint(int x,int y,color c,float i)
if s[x,y]==0
s[x,y] = -3 - (round(red(c)*127)*128 + round(green(c)*127))*128 \
- round(blue(c)*127) - floor(i)*128*128*128
int ix = floor(x/64)
int iy = floor(y/64)
sx[ix,iy,t[ix,iy,0]] = x
sy[ix,iy,t[ix,iy,0]] = y
if ix<mxl
mxl = ix
endif
if ix>mxr
mxr = ix
endif
if iy<mxu
mxu = iy
endif
if iy>mxd
mxd = iy
endif
t[ix,iy,0] = t[ix,iy,0] + 1
int j = 0
while (j=j+1)<=@numplants+1
t[ix,iy,j] = t[ix,iy,0]
endwhile
q = q - 1
endif
endfunc
; @param x the x pixel coordinate
; @param y the y pixel coordinate
func SetStartPoint(int x,int y)
if s[x,y]==0
s[x,y] = -1
int ix = floor(x/64)
int iy = floor(y/64)
sx[ix,iy,t[ix,iy,o+1]] = x
sy[ix,iy,t[ix,iy,o+1]] = y
if x<lft[o]
lft[o] = x
endif
if x>rgt[o]
rgt[o] = x
endif
if y<top[o]
top[o] = y
endif
if y>btm[o]
btm[o] = y
endif
t[ix,iy,o+1] = t[ix,iy,o+1] + 1
int i = o+1
while (i=i+1)<=@numplants+1
t[ix,iy,i] = t[ix,iy,o+1]
endwhile
tn[o] = tn[o] + 1
n = n + 1
endif
endfunc
func Iterate(complex pz)
endfunc
color func Result(complex pz)
float c = 0.0025*@backcol
color clr = gradient(c)
int v = s[2+floor(real(#screenpixel)),2+floor(imag(#screenpixel))]
if v<-2
v = (-(v + 3))%(128*128*128)
return RGBA(floor(v/(128*128))/128,floor((v%(128*128))/128)/128, \
floor(v%128)/128,1)
elseif v<=0
if @backmethod==0
m_Solid = true
endif
else
o = v%16
c = 0.0025*(pn[o] + px[o]*v/(16*g[o]))
clr = gradient(c)
if m[o]>0
float c1 = 0.5*(1.0 + @ambient)
if @sample && @offset>1
float c2
int v1
int n1 = 0
int n2 = 0
int n3 = 0
float t1 = 0.0
float t2 = 0.0
float t3 = 0.0
int i = 0
if @altsample && @offset%2==0
repeat
int j = 0
repeat
v1 = s[j + 2 + floor(real(#screenpixel)), \
i + 2 + floor(imag(#screenpixel))]
if v1>0
if o==v1%16
n1 = n1 + 1
t1 = t1 + 0.0025*(pn[o] + px[o]*v1/(16*g[o]))
endif
endif
until (j=j+1)>=@offset/2
until (i=i+1)>=@offset/2
i = 0
repeat
int j = floor(@offset/2)
repeat
v1 = s[j + 2 + floor(real(#screenpixel)), \
i + 2 + floor(imag(#screenpixel))]
if v1>0
if o==v1%16
n2 = n2 + 1
t2 = t2 + 0.0025*(pn[o] + px[o]*v1/(16*g[o]))
endif
endif
until (j=j+1)>=@offset
until (i=i+1)>=@offset/2
i = floor(@offset/2)
repeat
int j = 0
repeat
v1 = s[j + 2 + floor(real(#screenpixel)), \
i + 2 + floor(imag(#screenpixel))]
if v1>0
if o==v1%16
n3 = n3 + 1
t3 = t3 + 0.0025*(pn[o] + px[o]*v1/(16*g[o]))
endif
endif
until (j=j+1)>=@offset/2
until (i=i+1)>=@offset
else
repeat
int j = 0
repeat
v1 = s[j + 2 + floor(real(#screenpixel)), \
i + 2 + floor(imag(#screenpixel))]
if v1>0
if o==v1%16
if i<@offset && j<@offset
n1 = n1 + 1
t1 = t1 + 0.0025*(pn[o] + px[o]*v1/(16*g[o]))
endif
if j>0 && i<@offset
n2 = n2 + 1
t2 = t2 + 0.0025*(pn[o] + px[o]*v1/(16*g[o]))
endif
if i>0 && j<@offset
n3 = n3 + 1
t3 = t3 + 0.0025*(pn[o] + px[o]*v1/(16*g[o]))
endif
endif
endif
until (j=j+1)>@offset
until (i=i+1)>@offset
endif
if n1>0 && n2>0 && n3>0
t1 = t1/n1
t2 = t2/n2 - t1
t3 = t3/n3 - t1
c1 = @ambient + 0.5*(1.0 - @ambient) \
*(1.0 + (lx*t2 + ly*t3 + lz*(@offset*@lscale)) \
/sqrt(sqr(t2)+sqr(t3)+sqr(@offset*@lscale)))
endif
elseif @offset+2+floor(real(#screenpixel))<#width+4+@offset \
&& @offset+2+floor(imag(#screenpixel))<#height+4+@offset
int v1 = s[@offset + 2 + floor(real(#screenpixel)), \
2 + floor(imag(#screenpixel))]
int v2 = s[2 + floor(real(#screenpixel)), \
@offset + 2 + floor(imag(#screenpixel))]
if v1>0 && v2>0
if o==v1%16 && o==v2%16
c1 = 0.0025*(pn[o] + px[o]*v1/(16*g[o])) - c
float c2 = 0.0025*(pn[o] + px[o]*v2/(16*g[o])) - c
c1 = @ambient + 0.5*(1.0 - @ambient) \
*(1.0 + (lx*c1 + ly*c2 + lz*(0.1*@offset*@lscale)) \
/sqrt(sqr(c1)+sqr(c2)+sqr(0.1*@offset*@lscale)))
endif
endif
endif
if m[0]==1
clr = gradient(c1)
else
color lt = lc[o]*c1
lt = rgba(red(lt), green(lt), blue(lt), 1.0)
if @reverse
clr = merge.FullMerge(lt,clr,@opacity)
else
clr = merge.FullMerge(clr,lt,@opacity)
endif
endif
endif
endif
return clr
endfunc
float func ResultIndex(complex pz)
float c = 0.0025*@backcol
int v = s[2+floor(real(#screenpixel)),2+floor(imag(#screenpixel))]
if v<-2
c = 0.0025*floor(-(v + 3)/(128*128*128))
elseif v<=0
if @backmethod==0
m_Solid = true
endif
else
o = v%16
c = 0.0025*(pn[o] + px[o]*v/(16*g[o]))
if m[o]==1
float c1 = 0.5*(1.0 + @ambient)
if @sample && @offset>1
float c2
int v1
int n1 = 0
int n2 = 0
int n3 = 0
float t1 = 0.0
float t2 = 0.0
float t3 = 0.0
int i = 0
if @altsample && @offset%2==0
repeat
int j = 0
repeat
v1 = s[j + 2 + floor(real(#screenpixel)), \
i + 2 + floor(imag(#screenpixel))]
if v1>0
if o==v1%16
n1 = n1 + 1
t1 = t1 + 0.0025*(pn[o] + px[o]*v1/(16*g[o]))
endif
endif
until (j=j+1)>=@offset/2
until (i=i+1)>=@offset/2
i = 0
repeat
int j = floor(@offset/2)
repeat
v1 = s[j + 2 + floor(real(#screenpixel)), \
i + 2 + floor(imag(#screenpixel))]
if v1>0
if o==v1%16
n2 = n2 + 1
t2 = t2 + 0.0025*(pn[o] + px[o]*v1/(16*g[o]))
endif
endif
until (j=j+1)>=@offset
until (i=i+1)>=@offset/2
i = floor(@offset/2)
repeat
int j = 0
repeat
v1 = s[j + 2 + floor(real(#screenpixel)), \
i + 2 + floor(imag(#screenpixel))]
if v1>0
if o==v1%16
n3 = n3 + 1
t3 = t3 + 0.0025*(pn[o] + px[o]*v1/(16*g[o]))
endif
endif
until (j=j+1)>=@offset/2
until (i=i+1)>=@offset
else
repeat
int j = 0
repeat
v1 = s[j + 2 + floor(real(#screenpixel)), \
i + 2 + floor(imag(#screenpixel))]
if v1>0
if o==v1%16
if i<@offset && j<@offset
n1 = n1 + 1
t1 = t1 + 0.0025*(pn[o] + px[o]*v1/(16*g[o]))
endif
if j>0 && i<@offset
n2 = n2 + 1
t2 = t2 + 0.0025*(pn[o] + px[o]*v1/(16*g[o]))
endif
if i>0 && j<@offset
n3 = n3 + 1
t3 = t3 + 0.0025*(pn[o] + px[o]*v1/(16*g[o]))
endif
endif
endif
until (j=j+1)>@offset
until (i=i+1)>@offset
endif
if n1>0 && n2>0 && n3>0
t1 = t1/n1
t2 = t2/n2 - t1
t3 = t3/n3 - t1
c1 = @ambient + 0.5*(1.0 - @ambient) \
*(1.0 + (lx*t2 + ly*t3 + lz*(@offset*@lscale)) \
/sqrt(sqr(t2)+sqr(t3)+sqr(@offset*@lscale)))
endif
elseif @offset+2+floor(real(#screenpixel))<#width+4+@offset \
&& @offset+2+floor(imag(#screenpixel))<#height+4+@offset
int v1 = s[@offset + 2 + floor(real(#screenpixel)), \
2 + floor(imag(#screenpixel))]
int v2 = s[2 + floor(real(#screenpixel)), \
@offset + 2 + floor(imag(#screenpixel))]
if v1>0 && v2>0
if o==v1%16 && o==v2%16
c1 = 0.0025*(pn[o] + px[o]*v1/(16*g[o])) - c
float c2 = 0.0025*(pn[o] + px[o]*v2/(16*g[o])) - c
c1 = @ambient + 0.5*(1.0 - @ambient) \
*(1.0 + (lx*c1 + ly*c2 + lz*(0.1*@offset*@lscale)) \
/sqrt(sqr(c1)+sqr(c2)+sqr(0.1*@offset*@lscale)))
endif
endif
endif
c = c1
endif
endif
return c
endfunc
bool func IsSolid()
return m_Solid
endfunc
protected:
int s[#width+4+@offset,#height+4+@offset]
int sx[ceil((#width+4+@offset)/64),ceil((#height+4+@offset)/64),4096]
int sy[ceil((#width+4+@offset)/64),ceil((#height+4+@offset)/64),4096]
int t[ceil((#width+4+@offset)/64),ceil((#height+4+@offset)/64),17]
MMF_StimulusDLA DLAStimulus[16]
MMF_SeedDLA DLASeed[16]
MMF_DeadDLA DLADead
DefaultColorMerge merge
float pn[16]
float px[16]
float dtct[16]
float mov[16]
color lc[16]
int m[16]
int g[16]
int tn[16]
int top[16]
int btm[16]
int lft[16]
int rgt[16]
int sz[16]
complex dir
float lx
float ly
float lz
float v
float pgx
float pgy
int r
int n
int o
int q
int bx
int by
int fk
int fx
int fy
int fo
int maxleft
int maxright
int maxup
int maxdown
int mxl
int mxr
int mxu
int mxd
default:
title = "MMF DLA Inspired"
heading
text = "IMPORTANT: This colouring is intended for use with a 'Pixel' \
formula such as mt.ufm-Pixel. \
Note that you should plug this object into either \
'Generic Coloring (Gradient) Render=false' or 'Generic Coloring \
(Direct) Render=false' from mmf5.ucl. \
The formula is inspired by Diffusion Limited Aggregation. \
Unlike DLA it does not use random particle motion to generate \
the fractal, rather random stimuli locations are generated and \
the fractal grows from the closest seed point to the stimulus \
adding to the available seed points at the same time. \
You can create up to 16 different organisms \
each of which may have multiple initial seed points. \
You choose the number of organisms and how each is seeded in the \
screen area and individuals are then grown from the seeds. \
In each generation the organisms grow by one or more \
points, the points of growth either being simply random or \
based on a location where a stimulus is generated. \
You should note that the combined lighting and colouring \
options only work if you plug this formula into the '(Direct)' \
colouring. The formula is designed to be used with the main UF \
gradient parameters set at the default values i.e. 'Color \
Density' set to 1, 'Transfer Function' Linear and 'Gradient \
Offset' zero. The DLA algorithm itself is pixel-based so you \
can't zoom in or out or change location, however the fractal \
plug-ins for seeding and for dead points will respond to \
changes in magnification and location enabling you to use any \
part of another fractal as the seeds and/or the dead points."
endheading
bool param showprogress
caption = "Show Progress"
default = false
hint = "When enabled progress is shown by means of compiler messages. \
If enabled and no compiler messages are produced then try hitting \
the 'Reload Formula' button for the colouring."
endparam
int param seed
caption = "Random Seed"
default = 12345678
hint = "This is the overall random control seed. Changing this will \
modify all directionless growth patterns."
endparam
int param use
caption = "Completion target"
enum = "Pixel Count" "Percentage" "Generations"
default = 1
hint = "Growth is continued until your completion target is met or \
until the maximum possible area is covered. 'Pixel Count' stops \
growth when the specified number of pixels have been converted, \
'Percentage' when the specified percentage of the screen area is \
converted and 'Generations' when the specified number of \
generations of growth is completed."
endparam
int param pixels
caption = "Number of Pixels"
default = 20000
min = 1
hint = "Growth is stopped when this many pixels have 'grown' or when \
growth has ceased."
visible = @use==0
endparam
float param percent
caption = "Percentage of Screen"
default = 100.0
min = 0.1
max = 100.0
hint = "Growth is stopped when this %age of the screen has 'grown' or \
when growth has ceased."
visible = @use==1
endparam
int param numgenerations
caption = "No. of Generations"
default = 10000
min = 1
hint = "The more generations the greater the area of growth but the \
longer the render time. Growth will always stop when all \
possible growth points are converted even if the target number \
of generations is not reached."
visible = @use==2
endparam
float param fail
caption = "Failure Rate"
default = 0.01
min = 0.0
max = 1.0
hint = "Assumes growth has stopped when this many or fewer pixels are \
produced per generation. Set to zero if you wish maximum \
possible growth."
endparam
int param seeds
caption = "Seeding Method"
enum = "Star" "Square" "Diamond"
default = 0
hint = "Using 'Star' seeds are only planted on horizontally and/or \
vertically adjacent pixels to growth points. Using 'Square' \
seeds are planted on the diagonally adjacent pixels as well. \
Using 'Diamond' points are grown in the star shape and the \
surrounding diamond is seeded."
endparam
int param pixelgrowth
caption = "Points per Stimulus"
default = 1
min = 1
hint = "The number of points to grow per organism per stimulus location."
endparam
bool param notinside
caption = "Restrict Stimulus Locations"
default = false
hint = "When enabled the locations of the stimuli are restricted to \
points not already part of the fractal. You should note that \
when enabled and not using any 'Directionless Growth' then you \
should not expect all pixels to 'grow', in other words if using \
'Pixel Count' or 'Percentage' as the 'Completeion Target' then \
if your values are too high completion may be slow."
endparam
int param numtries
caption = "Number of Tries"
default = 10
min = 1
hint = "This is the maximum number of times to try growth of the \
organisms per generation i.e. generate a stimulus either until \
growth is allowed or until this many stimulus locations have \
been tried."
visible = @notinside
endparam
int param backmethod
caption = "'Background' Method"
enum = "Solid Colour" "Palette colour"
default = 0
hint = "Here you can choose to have pixels that are neither 'dead' \
points nor growth points coloured either using the 'Solid Color' \
or by specifying the palette index of the colour to use."
endparam
float param backcol
caption = "Background Colour"
default = 399.0
min = 0.0
hint = "Here you can specify the palette index of the background colour."
visible = @backmethod==1
endparam
int param offset
caption = "Lighting Pixel Offset"
default = 1
min = 1
max = 50
hint = "Specifies the pixel spread for calculating the lighting normals. \
You may want to increase the value for larger renders, e.g. 1 for \
640*480, say 2 for 1280*960 etc. The maximum is 50."
endparam
bool param sample
caption = "Multi-Sample"
default = false
hint = "When disabled the lighting is simply calculated from the main \
point and two points offset horizontally and vertically by the \
'Lighting Pixel Offset'. When enabled all pixels in a square of \
side 'Lighting Pixel Offset' with the main pixel as the top-left \
are used in the lighting calculation (for each pixel in the \
square that pixel and the pixel to the right and below are used \
to calculate the light value for that point and the result from \
all the points in the square is averaged)."
visible = @offset>1
endparam
bool param altsample
caption = "Alternative Sampling"
default = false
hint = "When enabled the 'Multi-Sample' method is changed slightly, \
instead of averaging over the whole area, the area is split \
into 2*2 squares (each of side 'Lighting Pixel Offset/2) and \
the top-left, top-right and bottom-left of these are sampled \
for the lighting."
visible = @offset%2==0 && @sample
endparam
float param lscale
caption = "Light Pre-scale"
default = 1.0
min = 1e-200
hint = "The pre-scale for the lighting. Values closer to zero will \
accentuate the lighting (i.e. >0 and <1). Values >1 will reduce \
the lighting effect."
endparam
float param angle
caption = "Light Rotation"
default = 90.0
hint = "Gives the rotation of any light source, in degrees. With 0 \
degrees, the light comes from above. Positive values give \
clockwise rotation."
endparam
float param elevation
caption = "Light Elevation"
default = 30.0
hint = "Gives the elevation of any light source, in degrees."
endparam
float param ambient
caption = "Ambient Light"
default = 0.0
hint = "Specifies the level of ambient light, usual range is from \
-1 to +1. Use -1 for no ambient."
endparam
DefaultColorMerge param merge
caption = "Lighting Merge method"
default = MMF_ExtendedColorMerge
hint = "This plug-in is ignored if 'MMF DLA Inspired' is plugged \
into a gradient colouring rather than a direct colouring."
endparam
bool param reverse
caption = "Reverse the Merging"
default = false
hint = "When enabled the order of merging the colouring and lighting \
is reversed from the norm. \
This parameter is ignored if 'MMF DLA Inspired' is plugged \
into a gradient colouring rather than a direct colouring."
endparam
float param opacity
caption = "Merge Opacity"
default = 1.0
hint = "The merge opacity for combined colouring organisms. \
This parameter is ignored if 'MMF DLA Inspired' is plugged \
into a gradient colouring rather than a direct colouring."
endparam
heading
caption = "Advanced Options"
endheading
bool param addrandom
caption = "Added Detection Accuracy"
default = false
hint = "When enabled you will have extra parameters on your organisms \
to set a detection accuracy. Changing the detection accuracy \
will change their fractal nature."
endparam
bool param addmovement
caption = "Added Stimulus Movement"
default = false
hint = "When enabled the stimuli 'Direction of Movement' parameters \
come into play as do the organism parameters to control how \
well the organisms detect stimulus movement."
endparam
heading
caption = "The Stimuli"
text = "You can select up to 16 different types of stimuli each of \
which may be produced in multiple ways. In the organism \
parameters you can control whether each organism is affected by \
any/all of the stimuli."
endheading
int param numstimuli
caption = "Number of Stimuli"
enum = "1" "2" "3" "4" "5" "6" "7" "8" "9" "10" "11" "12" "13" "14" \
"15" "16"
default = 0
endparam
MMF_StimulusDLA param DLAStimulus1
caption = "Stimulus 1"
default = MMF_RectStimulusDLA
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus2
caption = "Stimulus 2"
default = MMF_RectStimulusDLA
visible = @numstimuli>0
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus3
caption = "Stimulus 3"
default = MMF_RectStimulusDLA
visible = @numstimuli>1
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus4
caption = "Stimulus 4"
default = MMF_RectStimulusDLA
visible = @numstimuli>2
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus5
caption = "Stimulus 5"
default = MMF_RectStimulusDLA
visible = @numstimuli>3
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus6
caption = "Stimulus 6"
default = MMF_RectStimulusDLA
visible = @numstimuli>4
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus7
caption = "Stimulus 7"
default = MMF_RectStimulusDLA
visible = @numstimuli>5
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus8
caption = "Stimulus 8"
default = MMF_RectStimulusDLA
visible = @numstimuli>6
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus9
caption = "Stimulus 9"
default = MMF_RectStimulusDLA
visible = @numstimuli>7
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus10
caption = "Stimulus 10"
default = MMF_RectStimulusDLA
visible = @numstimuli>8
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus11
caption = "Stimulus 11"
default = MMF_RectStimulusDLA
visible = @numstimuli>9
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus12
caption = "Stimulus 12"
default = MMF_RectStimulusDLA
visible = @numstimuli>10
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus13
caption = "Stimulus 13"
default = MMF_RectStimulusDLA
visible = @numstimuli>11
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus14
caption = "Stimulus 14"
default = MMF_RectStimulusDLA
visible = @numstimuli>12
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus15
caption = "Stimulus 15"
default = MMF_RectStimulusDLA
visible = @numstimuli>13
hint = "Choose your stimulus !"
endparam
MMF_StimulusDLA param DLAStimulus16
caption = "Stimulus 16"
default = MMF_RectStimulusDLA
visible = @numstimuli>14
hint = "Choose your stimulus !"
endparam
heading
caption = "Dead Points"
text = "These are points on the screen that do not normally support \
growth and also block detection of stimuli by the organisms."
endheading
MMF_DeadDLA param DLADead
caption = "Dead Point Seeding"
default = MMF_NoDeadDLA
hint = "Points selected by this object are 'dead' points, they will not \
normally turn into part of an organism and if positioned in \
between an organism and a stimulus then the organism will be \
unaffected by the stimulus."
endparam
heading
caption = "The Organisms"
endheading
heading
enabled = false
endheading
heading
text = "You can select up to 16 different organisms each of which may \
have multiple seed points resulting in as many individuals \
as you like. Each organism may be coloured differently as well \
as having different growth characteristics."
endheading
int param numplants
caption = "Number of Organisms"
enum = "1" "2" "3" "4" "5" "6" "7" "8" "9" "10" "11" "12" "13" "14" \
"15" "16"
default = 0
endparam
heading
caption = "First Organism"
endheading
float param size1
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
endparam
int param method1
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
endparam
float param palmin1
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
endparam
float param palmax1
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
endparam
color param lightcol1
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method1==2
endparam
float param nodirection1
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
endparam
MMF_SeedDLA param DLASeed1
caption = "Organism 1 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
endparam
bool param Seed1Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
endparam
bool param Seed1Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numstimuli>0
endparam
bool param Seed1Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numstimuli>1
endparam
bool param Seed1Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numstimuli>2
endparam
bool param Seed1Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numstimuli>3
endparam
bool param Seed1Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numstimuli>4
endparam
bool param Seed1Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numstimuli>5
endparam
bool param Seed1Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numstimuli>6
endparam
bool param Seed1Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numstimuli>7
endparam
bool param Seed1Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numstimuli>8
endparam
bool param Seed1Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numstimuli>9
endparam
bool param Seed1Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numstimuli>10
endparam
bool param Seed1Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numstimuli>11
endparam
bool param Seed1Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numstimuli>12
endparam
bool param Seed1Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numstimuli>13
endparam
bool param Seed1Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numstimuli>14
endparam
float param detect1
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @addrandom
endparam
float param move1
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @addmovement
endparam
heading
caption = "Second Organism"
visible = @numplants>0
endheading
float param size2
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>0
endparam
int param method2
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>0
endparam
float param palmin2
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>0
endparam
float param palmax2
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>0
endparam
color param lightcol2
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method2==2 && @numplants>0
endparam
float param nodirection2
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>0
endparam
MMF_SeedDLA param DLASeed2
caption = "Organism 2 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>0
endparam
bool param Seed2Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>0
endparam
bool param Seed2Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>0
endparam
bool param Seed2Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>1
endparam
bool param Seed2Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>2
endparam
bool param Seed2Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>3
endparam
bool param Seed2Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>4
endparam
bool param Seed2Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>5
endparam
bool param Seed2Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>6
endparam
bool param Seed2Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>7
endparam
bool param Seed2Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>8
endparam
bool param Seed2Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>9
endparam
bool param Seed2Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>10
endparam
bool param Seed2Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>11
endparam
bool param Seed2Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>12
endparam
bool param Seed2Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>13
endparam
bool param Seed2Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>0 && @numstimuli>14
endparam
float param detect2
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>0 && @addrandom
endparam
float param move2
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>0 && @addmovement
endparam
heading
caption = "Third Organism"
visible = @numplants>1
endheading
float param size3
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>1
endparam
int param method3
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>1
endparam
float param palmin3
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>1
endparam
float param palmax3
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>1
endparam
color param lightcol3
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method3==2 && @numplants>1
endparam
float param nodirection3
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>1
endparam
MMF_SeedDLA param DLASeed3
caption = "Organism 3 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>1
endparam
bool param Seed3Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>1
endparam
bool param Seed3Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>0
endparam
bool param Seed3Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>1
endparam
bool param Seed3Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>2
endparam
bool param Seed3Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>3
endparam
bool param Seed3Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>4
endparam
bool param Seed3Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>5
endparam
bool param Seed3Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>6
endparam
bool param Seed3Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>7
endparam
bool param Seed3Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>8
endparam
bool param Seed3Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>9
endparam
bool param Seed3Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>10
endparam
bool param Seed3Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>11
endparam
bool param Seed3Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>12
endparam
bool param Seed3Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>13
endparam
bool param Seed3Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>1 && @numstimuli>14
endparam
float param detect3
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>1 && @addrandom
endparam
float param move3
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>1 && @addmovement
endparam
heading
caption = "Fourth Organism"
visible = @numplants>2
endheading
float param size4
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>2
endparam
int param method4
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>2
endparam
float param palmin4
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>2
endparam
float param palmax4
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>2
endparam
color param lightcol4
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method4==2 && @numplants>2
endparam
float param nodirection4
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>2
endparam
MMF_SeedDLA param DLASeed4
caption = "Organism 4 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>2
endparam
bool param Seed4Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>2
endparam
bool param Seed4Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>0
endparam
bool param Seed4Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>1
endparam
bool param Seed4Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>2
endparam
bool param Seed4Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>3
endparam
bool param Seed4Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>4
endparam
bool param Seed4Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>5
endparam
bool param Seed4Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>6
endparam
bool param Seed4Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>7
endparam
bool param Seed4Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>8
endparam
bool param Seed4Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>9
endparam
bool param Seed4Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>10
endparam
bool param Seed4Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>11
endparam
bool param Seed4Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>12
endparam
bool param Seed4Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>13
endparam
bool param Seed4Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>2 && @numstimuli>14
endparam
float param detect4
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>2 && @addrandom
endparam
float param move4
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>2 && @addmovement
endparam
heading
caption = "Fifth Organism"
visible = @numplants>3
endheading
float param size5
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>3
endparam
int param method5
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>3
endparam
float param palmin5
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>3
endparam
float param palmax5
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>3
endparam
color param lightcol5
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method5==2 && @numplants>3
endparam
float param nodirection5
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>3
endparam
MMF_SeedDLA param DLASeed5
caption = "Organism 5 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>3
endparam
bool param Seed5Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>3
endparam
bool param Seed5Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>0
endparam
bool param Seed5Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>1
endparam
bool param Seed5Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>2
endparam
bool param Seed5Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>3
endparam
bool param Seed5Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>4
endparam
bool param Seed5Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>5
endparam
bool param Seed5Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>6
endparam
bool param Seed5Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>7
endparam
bool param Seed5Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>8
endparam
bool param Seed5Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>9
endparam
bool param Seed5Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>10
endparam
bool param Seed5Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>11
endparam
bool param Seed5Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>12
endparam
bool param Seed5Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>13
endparam
bool param Seed5Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>3 && @numstimuli>14
endparam
float param detect5
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>3 && @addrandom
endparam
float param move5
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>3 && @addmovement
endparam
heading
caption = "Sixth Organism"
visible = @numplants>4
endheading
float param size6
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>4
endparam
int param method6
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>4
endparam
float param palmin6
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>4
endparam
float param palmax6
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>4
endparam
color param lightcol6
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method6==2 && @numplants>4
endparam
float param nodirection6
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>4
endparam
MMF_SeedDLA param DLASeed6
caption = "Organism 6 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>4
endparam
bool param Seed6Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>4
endparam
bool param Seed6Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>0
endparam
bool param Seed6Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>1
endparam
bool param Seed6Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>2
endparam
bool param Seed6Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>3
endparam
bool param Seed6Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>4
endparam
bool param Seed6Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>5
endparam
bool param Seed6Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>6
endparam
bool param Seed6Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>7
endparam
bool param Seed6Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>8
endparam
bool param Seed6Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>9
endparam
bool param Seed6Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>10
endparam
bool param Seed6Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>11
endparam
bool param Seed6Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>12
endparam
bool param Seed6Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>13
endparam
bool param Seed6Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>4 && @numstimuli>14
endparam
float param detect6
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>4 && @addrandom
endparam
float param move6
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>4 && @addmovement
endparam
heading
caption = "Seventh Organism"
visible = @numplants>5
endheading
float param size7
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>5
endparam
int param method7
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>5
endparam
float param palmin7
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>5
endparam
float param palmax7
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>5
endparam
color param lightcol7
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method7==2 && @numplants>5
endparam
float param nodirection7
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>5
endparam
MMF_SeedDLA param DLASeed7
caption = "Organism 7 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>5
endparam
bool param Seed7Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>5
endparam
bool param Seed7Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>0
endparam
bool param Seed7Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>1
endparam
bool param Seed7Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>2
endparam
bool param Seed7Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>3
endparam
bool param Seed7Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>4
endparam
bool param Seed7Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>5
endparam
bool param Seed7Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>6
endparam
bool param Seed7Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>7
endparam
bool param Seed7Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>8
endparam
bool param Seed7Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>9
endparam
bool param Seed7Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>10
endparam
bool param Seed7Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>11
endparam
bool param Seed7Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>12
endparam
bool param Seed7Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>13
endparam
bool param Seed7Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>5 && @numstimuli>14
endparam
float param detect7
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>5 && @addrandom
endparam
float param move7
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>5 && @addmovement
endparam
heading
caption = "Eighth Organism"
visible = @numplants>6
endheading
float param size8
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>6
endparam
int param method8
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>6
endparam
float param palmin8
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>6
endparam
float param palmax8
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>6
endparam
color param lightcol8
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method8==2 && @numplants>6
endparam
float param nodirection8
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>6
endparam
MMF_SeedDLA param DLASeed8
caption = "Organism 8 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>6
endparam
bool param Seed8Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>6
endparam
bool param Seed8Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>0
endparam
bool param Seed8Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>1
endparam
bool param Seed8Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>2
endparam
bool param Seed8Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>3
endparam
bool param Seed8Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>4
endparam
bool param Seed8Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>5
endparam
bool param Seed8Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>6
endparam
bool param Seed8Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>7
endparam
bool param Seed8Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>8
endparam
bool param Seed8Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>9
endparam
bool param Seed8Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>10
endparam
bool param Seed8Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>11
endparam
bool param Seed8Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>12
endparam
bool param Seed8Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>13
endparam
bool param Seed8Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>6 && @numstimuli>14
endparam
float param detect8
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>6 && @addrandom
endparam
float param move8
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>6 && @addmovement
endparam
heading
caption = "Ninth Organism"
visible = @numplants>7
endheading
float param size9
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>7
endparam
int param method9
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>7
endparam
float param palmin9
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>7
endparam
float param palmax9
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>7
endparam
color param lightcol9
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method9==2 && @numplants>7
endparam
float param nodirection9
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>7
endparam
MMF_SeedDLA param DLASeed9
caption = "Organism 9 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>7
endparam
bool param Seed9Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>7
endparam
bool param Seed9Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>0
endparam
bool param Seed9Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>1
endparam
bool param Seed9Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>2
endparam
bool param Seed9Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>3
endparam
bool param Seed9Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>4
endparam
bool param Seed9Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>5
endparam
bool param Seed9Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>6
endparam
bool param Seed9Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>7
endparam
bool param Seed9Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>8
endparam
bool param Seed9Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>9
endparam
bool param Seed9Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>10
endparam
bool param Seed9Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>11
endparam
bool param Seed9Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>12
endparam
bool param Seed9Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>13
endparam
bool param Seed9Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>7 && @numstimuli>14
endparam
float param detect9
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>7 && @addrandom
endparam
float param move9
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>7 && @addmovement
endparam
heading
caption = "Tenth Organism"
visible = @numplants>8
endheading
float param size10
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>8
endparam
int param method10
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>8
endparam
float param palmin10
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>8
endparam
float param palmax10
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>8
endparam
color param lightcol10
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method10==2 && @numplants>8
endparam
float param nodirection10
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>8
endparam
MMF_SeedDLA param DLASeed10
caption = "Organism 10 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>8
endparam
bool param Seed10Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>8
endparam
bool param Seed10Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>0
endparam
bool param Seed10Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>1
endparam
bool param Seed10Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>2
endparam
bool param Seed10Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>3
endparam
bool param Seed10Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>4
endparam
bool param Seed10Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>5
endparam
bool param Seed10Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>6
endparam
bool param Seed10Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>7
endparam
bool param Seed10Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>8
endparam
bool param Seed10Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>9
endparam
bool param Seed10Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>10
endparam
bool param Seed10Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>11
endparam
bool param Seed10Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>12
endparam
bool param Seed10Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>13
endparam
bool param Seed10Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>8 && @numstimuli>14
endparam
float param detect10
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>8 && @addrandom
endparam
float param move10
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>8 && @addmovement
endparam
heading
caption = "Eleventh Organism"
visible = @numplants>9
endheading
float param size11
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>9
endparam
int param method11
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>9
endparam
float param palmin11
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>9
endparam
float param palmax11
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>9
endparam
color param lightcol11
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method11==2 && @numplants>9
endparam
float param nodirection11
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>9
endparam
MMF_SeedDLA param DLASeed11
caption = "Organism 11 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>9
endparam
bool param Seed11Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>9
endparam
bool param Seed11Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>0
endparam
bool param Seed11Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>1
endparam
bool param Seed11Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>2
endparam
bool param Seed11Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>3
endparam
bool param Seed11Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>4
endparam
bool param Seed11Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>5
endparam
bool param Seed11Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>6
endparam
bool param Seed11Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>7
endparam
bool param Seed11Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>8
endparam
bool param Seed11Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>9
endparam
bool param Seed11Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>10
endparam
bool param Seed11Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>11
endparam
bool param Seed11Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>12
endparam
bool param Seed11Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>13
endparam
bool param Seed11Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>9 && @numstimuli>14
endparam
float param detect11
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>9 && @addrandom
endparam
float param move11
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>9 && @addmovement
endparam
heading
caption = "Twelfth Organism"
visible = @numplants>10
endheading
float param size12
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>10
endparam
int param method12
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>10
endparam
float param palmin12
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>10
endparam
float param palmax12
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>10
endparam
color param lightcol12
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method12==2 && @numplants>10
endparam
float param nodirection12
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>10
endparam
MMF_SeedDLA param DLASeed12
caption = "Organism 12 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>10
endparam
bool param Seed12Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>10
endparam
bool param Seed12Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>0
endparam
bool param Seed12Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>1
endparam
bool param Seed12Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>2
endparam
bool param Seed12Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>3
endparam
bool param Seed12Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>4
endparam
bool param Seed12Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>5
endparam
bool param Seed12Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>6
endparam
bool param Seed12Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>7
endparam
bool param Seed12Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>8
endparam
bool param Seed12Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>9
endparam
bool param Seed12Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>10
endparam
bool param Seed12Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>11
endparam
bool param Seed12Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>12
endparam
bool param Seed12Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>13
endparam
bool param Seed12Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>10 && @numstimuli>14
endparam
float param detect12
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>10 && @addrandom
endparam
float param move12
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>10 && @addmovement
endparam
heading
caption = "Thirteenth Organism"
visible = @numplants>11
endheading
float param size13
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>11
endparam
int param method13
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>11
endparam
float param palmin13
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>11
endparam
float param palmax13
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>11
endparam
color param lightcol13
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method13==2 && @numplants>11
endparam
float param nodirection13
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>11
endparam
MMF_SeedDLA param DLASeed13
caption = "Organism 13 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>11
endparam
bool param Seed13Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>11
endparam
bool param Seed13Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>0
endparam
bool param Seed13Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>1
endparam
bool param Seed13Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>2
endparam
bool param Seed13Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>3
endparam
bool param Seed13Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>4
endparam
bool param Seed13Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>5
endparam
bool param Seed13Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>6
endparam
bool param Seed13Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>7
endparam
bool param Seed13Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>8
endparam
bool param Seed13Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>9
endparam
bool param Seed13Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>10
endparam
bool param Seed13Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>11
endparam
bool param Seed13Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>12
endparam
bool param Seed13Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>13
endparam
bool param Seed13Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>11 && @numstimuli>14
endparam
float param detect13
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>11 && @addrandom
endparam
float param move13
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>11 && @addmovement
endparam
heading
caption = "Fourteenth Organism"
visible = @numplants>12
endheading
float param size14
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>12
endparam
int param method14
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>12
endparam
float param palmin14
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>12
endparam
float param palmax14
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>12
endparam
color param lightcol14
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method14==2 && @numplants>12
endparam
float param nodirection14
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>12
endparam
MMF_SeedDLA param DLASeed14
caption = "Organism 14 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>12
endparam
bool param Seed14Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>12
endparam
bool param Seed14Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>0
endparam
bool param Seed14Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>1
endparam
bool param Seed14Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>2
endparam
bool param Seed14Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>3
endparam
bool param Seed14Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>4
endparam
bool param Seed14Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>5
endparam
bool param Seed14Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>6
endparam
bool param Seed14Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>7
endparam
bool param Seed14Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>8
endparam
bool param Seed14Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>9
endparam
bool param Seed14Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>10
endparam
bool param Seed14Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>11
endparam
bool param Seed14Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>12
endparam
bool param Seed14Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>13
endparam
bool param Seed14Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>12 && @numstimuli>14
endparam
float param detect14
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>12 && @addrandom
endparam
float param move14
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>12 && @addmovement
endparam
heading
caption = "Fifteenth Organism"
visible = @numplants>13
endheading
float param size15
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>13
endparam
int param method15
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>13
endparam
float param palmin15
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>13
endparam
float param palmax15
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>13
endparam
color param lightcol15
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method15==2 && @numplants>13
endparam
float param nodirection15
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>13
endparam
MMF_SeedDLA param DLASeed15
caption = "Organism 15 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>13
endparam
bool param Seed15Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>13
endparam
bool param Seed15Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>0
endparam
bool param Seed15Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>1
endparam
bool param Seed15Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>2
endparam
bool param Seed15Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>3
endparam
bool param Seed15Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>4
endparam
bool param Seed15Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>5
endparam
bool param Seed15Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>6
endparam
bool param Seed15Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>7
endparam
bool param Seed15Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>8
endparam
bool param Seed15Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>9
endparam
bool param Seed15Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>10
endparam
bool param Seed15Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>11
endparam
bool param Seed15Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>12
endparam
bool param Seed15Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>13
endparam
bool param Seed15Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>13 && @numstimuli>14
endparam
float param detect15
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>13 && @addrandom
endparam
float param move15
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>13 && @addmovement
endparam
heading
caption = "Sixteenth Organism"
visible = @numplants>14
endheading
float param size16
caption = "Maximum Size"
default = 100.0
min = 0.0
max = 100.0
hint = "The maximum size of this organism is this %age of the screen \
pixels. When the number of growth pixels based on this %age \
has occurred then growth of this organism stops."
visible = @numplants>14
endparam
int param method16
caption = "Colouring Method"
enum = "Colour" "Slope" "Combined"
default = 0
hint = "You can choose to colour the fractal with just the default \
colouring or using a 'slope' colouring or a combination of \
the two if and only if 'DLA Inspired' is plugged in a direct \
colouring. If plugged into a gradient colouring then the \
'Combined' option is ignored and 'Colour' used instead."
visible = @numplants>14
endparam
float param palmin16
caption = "Min. Palette Index"
default = 0.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the lower end of the palette \
portion for the organism."
visible = @numplants>14
endparam
float param palmax16
caption = "Max. Palette Index"
default = 399.0
min = 0.0
max = 399.0
hint = "Specifies the gradient index of the upper end of the palette \
portion for the organism."
visible = @numplants>14
endparam
color param lightcol16
caption = "Lighting Colour"
default = RGB(1.0,1.0,1.0)
hint = "The colour for the lighting in 'Combined' mode, ignored if using \
gradient colouring."
visible = @method16==2 && @numplants>14
endparam
float param nodirection16
caption = "Directionless Growth"
default = 0.0
hint = "Here you can specify the number of points of directionless \
growth of the organism per generation. Directionless growth \
occurs randomly from any edge point on the organism and is \
not affected by any stimulus. Note that you can use fractional \
values, 0.5 means a 50% chance of one pixel of directionless \
growth per generation, 1.25 means one pixel of directionless \
growth and a 25% chance of a second. Normally you should use \
zero or a positive number but if you use a negative value then \
there will be so many pixels of directionless growth \
of the organism only when there is no directed growth due to \
an active stimulus."
visible = @numplants>14
endparam
MMF_SeedDLA param DLASeed16
caption = "Organism 16 Seeding"
default = MMF_OnePointSeedDLA
hint = "Sets the seeding method for the organism."
visible = @numplants>14
endparam
bool param Seed16Stimulus1
caption = "Reacts to Stimulus 1"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 1' i.e. it treats them as food or light."
visible = @numplants>14
endparam
bool param Seed16Stimulus2
caption = "Reacts to Stimulus 2"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 2' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>0
endparam
bool param Seed16Stimulus3
caption = "Reacts to Stimulus 3"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 3' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>1
endparam
bool param Seed16Stimulus4
caption = "Reacts to Stimulus 4"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 4' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>2
endparam
bool param Seed16Stimulus5
caption = "Reacts to Stimulus 5"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 5' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>3
endparam
bool param Seed16Stimulus6
caption = "Reacts to Stimulus 6"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 6' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>4
endparam
bool param Seed16Stimulus7
caption = "Reacts to Stimulus 7"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 7' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>5
endparam
bool param Seed16Stimulus8
caption = "Reacts to Stimulus 8"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 8' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>6
endparam
bool param Seed16Stimulus9
caption = "Reacts to Stimulus 9"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 9' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>7
endparam
bool param Seed16Stimulus10
caption = "Reacts to Stimulus 10"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 10' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>8
endparam
bool param Seed16Stimulus11
caption = "Reacts to Stimulus 11"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 11' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>9
endparam
bool param Seed16Stimulus12
caption = "Reacts to Stimulus 12"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 12' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>10
endparam
bool param Seed16Stimulus13
caption = "Reacts to Stimulus 13"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 13' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>11
endparam
bool param Seed16Stimulus14
caption = "Reacts to Stimulus 14"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 14' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>12
endparam
bool param Seed16Stimulus15
caption = "Reacts to Stimulus 15"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 15' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>13
endparam
bool param Seed16Stimulus16
caption = "Reacts to Stimulus 16"
default = true
hint = "When enabled the organism is attracted to points generated by \
'Stimulus 16' i.e. it treats them as food or light."
visible = @numplants>14 && @numstimuli>14
endparam
float param detect16
caption = "Detection accuracy"
default = 1.0
min = 1.0
hint = "This is the accuracy with which the organism detects stimuli. \
An accuracy of 1 means it always detects the stimulus accurately, \
if you use 2 then it estimates the distance to the stimulus at \
somewhere between the correct value and twice the correct value. \
A setting of 10 means the organism could estimate the distance at \
being up to 10* further than it is."
visible = @numplants>14 && @addrandom
endparam
float param move16
caption = "Movement Detection"
default = 1.0
min = 0.0
hint = "Use zero for no movement detection, otherwise the larger the \
value specified the greater the effect of a moving stimulus. \
Typically use values from say 1 to 10."
visible = @numplants>14 && @addmovement
endparam
}
| Constructor Summary | |
|---|---|
MMF_DLA()
|
|
MMF_DLA(Generic pparent)
|
|
| Method Summary | |
|---|---|
float |
DeadDist()
|
boolean |
IsSolid()
Test whether the sequence produced a solid-color value rather than an index. |
void |
Iterate(complex pz)
Process the next value in the sequence |
void |
MoreGrowth(int x,
int y)
|
void |
NewGrowth(int k,
int x,
int y,
int ix,
int iy)
|
void |
NewSeed(int x,
int y)
|
void |
PointGrowth()
|
void |
RandomGrowth(int k)
|
color |
Result(complex pz)
Produce a resulting color index after a sequence is finished |
float |
ResultIndex(complex pz)
Produce a resulting color index after a sequence is finished |
void |
SetDeadPoint(int x,
int y,
color c,
float i)
|
void |
SetStartPoint(int x,
int y)
|
| Methods inherited from class common:GradientColoring |
|---|
Init, IsGradient |
| Methods inherited from class common:Coloring |
|---|
GetPixel |
| Methods inherited from class common:Generic |
|---|
GetParent |
| Methods inherited from class Object |
|---|
|
| Constructor Detail |
|---|
public MMF_DLA(Generic pparent)
pparent - the parent, generally "this" from the parent, or zeropublic MMF_DLA()
| Method Detail |
|---|
public void RandomGrowth(int k)
k - the number of the seed to growpublic void PointGrowth()
public float DeadDist()
public void NewGrowth(int k,
int x,
int y,
int ix,
int iy)
k - the index for the point numberx - pixel x coordinatey - pixel y coordinateix - 64*64 box x indexiy - 64*64 box y index
public void MoreGrowth(int x,
int y)
public void NewSeed(int x,
int y)
x - the x pixel coordinatey - the y pixel coordinate
public void SetDeadPoint(int x,
int y,
color c,
float i)
x - the x pixel coordinatey - the y pixel coordinatec - the dead point colouri - the dead point palette index
public void SetStartPoint(int x,
int y)
x - the x pixel coordinatey - the y pixel coordinatepublic void Iterate(complex pz)
GradientColoringAs long as the sequence has not bailed out, this function will be continually called to produce sequence values. Note that such processing generally will not know in advance precisely how long the sequence is, and should be prepared to deal with sequences of arbitrary length.
Your coloring may determine at some point that a solid color should be used rather than an index value.
Iterate in class GradientColoringpz - next value in the sequence; corresponds to #z in a coloring formulapublic color Result(complex pz)
GradientColoringThis corresponds to the final: section in a coloring formula. Once it is called, no further calls to Iterate() should be made without calling Init() first.
Result in class GradientColoringpublic float ResultIndex(complex pz)
GradientColoringThis corresponds to the final: section in a coloring formula. Once it is called, no further calls to Iterate() should be made without calling Init() first.
ResultIndex in class GradientColoringpublic boolean IsSolid()
GradientColoringThis test is usually fairly complex and should be done as part of Iterate() or Result(), with the result saved in m_Solid. This function can then be left as the base class implementation, which just returns the value of that flag.
IsSolid in class GradientColoring
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||