A toto nechám běžet přes noc. Uvidíme.
from Blender import Redraw,Save
import bpy
from random import randrange
me=bpy.data.meshes['Mandel']
batches=[]
vertcount=1
curbatch=0
it=100000
bail=50
def check(r,i,it,bail):
zr=r
zi=i
a=1
while a<=it:
zr,zi=zr*zr-zi*zi+r,2*zr*zi+i
if (zr**2+zi**2)>=bail:
return False
a+=1
return True
try:
a=1
while 0==0:
r=randrange(-50000000000000,50000000000000)/10000000000000.0
i=randrange(-50000000000000,50000000000000)/10000000000000.0
if (a%1000)==0:
print a,"iterovanych bodu Z,",vertcount,"bodu naneseno"
if check(r,i,it,bail)==False:
zr=r
zi=i
b=1
while b<=it:
zr,zi=zr*zr-zi*zi+r,2*zr*zi+i
if ((zr>-3)&(zr<2)&(zi>-2.5)&(zi<2.5)):
batches.append([zr,zi,0])
if(vertcount%10000==0):
me.verts.extend(batches)
batches=[]
name="C:\Users\programagor\mandel{0}.blend".format(curbatch%2)
Save(name,1)
Redraw()
curbatch+=1
print "--prubeh ulozen (",name,")--"
vertcount+=1
if (zr**2+zi**2)>=bail:
b=it
b+=1
a+=1
finally:
me.verts.extend(batches)
print "--prubeh ulozen--"
print "Celkem iterovano",a,"bodu Z,",vertcount,"bodu naneseno"
20110103
20110102
Bůh je matematik...
...a já jsem bůh
Aneb takhle nějak by to mohlo vypadat, ještě než se vrhnu na optimalizaci...
Kategorie:
buddhabrot,
programování
Přihlásit se k odběru:
Příspěvky (Atom)