Example #1
0
def export_uv(scott=GrayScott(),
              v_color=Color(0.0),
              u_color=Color(0.0),
              base_color=Color(1.0),
              power=False):
    #    ival_u = Interval(scott.min_recorded_u,scott.max_recorded_u)
    #    ival_v = Interval(scott.min_recorded_v,scott.max_recorded_v)
    ival_u = Interval(0.0, 1.0)
    ival_v = Interval(0.0, 1.0)

    #    uv_color = Color.interpolate(u_color,v_color)
    imgs = []

    img_u = Image(Interval(scott.width, scott.height), base_color)

    for px in range(len(scott.hist_u[0]._pixels)):
        ut = ival_u.deval(scott.hist_u[0]._pixels[px])
        if power:
            c = Color.interpolate(base_color, u_color, ut**power)
        else:
            c = Color.interpolate(base_color, u_color, ut)

        img_u._pixels[px] = c

    imgs.append(img_u)

    img_v = Image(Interval(scott.width, scott.height), base_color)

    for px in range(len(scott.hist_v[0]._pixels)):
        vt = ival_v.deval(scott.hist_v[0]._pixels[px])
        if power:
            c = Color.interpolate(base_color, v_color, vt**power)
        else:
            c = Color.interpolate(base_color, v_color, vt)

        img_v._pixels[px] = c

    imgs.append(img_v)

    return imgs
    r_list.sort()

    return [Interval(r_list[n], r_list[n + 1]) for n in range(divs)]


print rand_interval(ival=Interval(0.0, 10.0), divs=4)

t = Interval(0.0, 20.0)
print t.rand_interval(10)

for n in range(attempts):
    print "Iteration " + str(n)

    f_name = f_prefix + '_%02d_' % n

    scott = GrayScott(size)

    x_segments = random.choice(range(1, max_rects))
    y_segments = random.choice(range(1, max_rects))

    x_ints = rand_interval(x_interval, x_segments)
    y_ints = rand_interval(y_interval, y_segments)

    for x_i in x_ints:
        for y_j in y_ints:
            test = True

            x_list = range(int(x_i.a - .5), int(x_i.b + 1.5))
            y_list = range(int(y_j.a - .5), int(y_j.b + 1.5))
            if len(x_list) == 1: x_list.append(1 + x_list[0])
            if len(y_list) == 1: y_list.append(1 + y_list[0])
Example #3
0
import decodes as dc
from decodes.core import *
from decodes.extensions.reaction_diffusion import GrayScott
import random

import os
path = os.path.expanduser("~") + os.sep + "_decodes_export"

width = 20
height = 20
diffusion = GrayScott(Interval(width,height))

'''
for x in range(width):
    for y in range(height):
        if random.uniform(0,1) > 0.75:
            diffusion.set_u(x,y,0.5)
            diffusion.set_v(x,y,0.25)
'''
'''
for r in range(4):
    diffusion.set_rect(random.uniform(10,width-10),random.uniform(10,height-10),random.uniform(2,8),random.uniform(2,8))
'''

diffusion.set_rect(3,10,2,8)
diffusion.set_rect(width-3,height-10,2,8)
diffusion.set_rect(width/2,2,4,4)

from time import time
for n in range(20):
    print "step",n
Example #4
0
import decodes as dc
from decodes.core import *
from decodes.extensions.reaction_diffusion import GrayScott
import random

import os
path = os.path.expanduser("~") + os.sep + "_decodes_export"

width = 20
height = 20
diffusion = GrayScott(Interval(width, height))
'''
for x in range(width):
    for y in range(height):
        if random.uniform(0,1) > 0.75:
            diffusion.set_u(x,y,0.5)
            diffusion.set_v(x,y,0.25)
'''
'''
for r in range(4):
    diffusion.set_rect(random.uniform(10,width-10),random.uniform(10,height-10),random.uniform(2,8),random.uniform(2,8))
'''

diffusion.set_rect(3, 10, 2, 8)
diffusion.set_rect(width - 3, height - 10, 2, 8)
diffusion.set_rect(width / 2, 2, 4, 4)

from time import time
for n in range(20):
    print "step", n
    t0 = time()
Example #5
0
            c = Color.interpolate(base_color, v_color, vt)

        img_v._pixels[px] = c

    imgs.append(img_v)

    return imgs


# define corner colors for double interpolation
u0v0 = Color(1, 1, 1)
u0v1 = Color(0, 0, 0)
u1v0 = Color(1, 1, 1)
u1v1 = Color(1, 0, 0)

scott = GrayScott(Interval(100, 100))
'''
scott.set_rect(3,3,3,3)
scott.set_rect(13,13,3,2)
scott.set_rect(18,4,3,8)
'''
scott.set_rect(60, 60, 60, 60)
scott.set_rect(65, 65, 15, 10)
scott.set_rect(90, 20, 15, 40)
scott.record()
#scott.log_uv()

#uv_imgs = export_uv(scott)

gen = 50
stepsize = 5
    r_list.sort()

    return [Interval(r_list[n],r_list[n+1]) for n in range(divs)]


print rand_interval(ival = Interval(0.0,10.0), divs = 4)

t= Interval(0.0,20.0)
print t.rand_interval(10)

for n in range(attempts):
    print "Iteration "+str(n)

    f_name = f_prefix+'_%02d_'% n

    scott = GrayScott(size)

    x_segments = random.choice(range(1,max_rects))
    y_segments = random.choice(range(1,max_rects))

    x_ints = rand_interval(x_interval,x_segments)
    y_ints = rand_interval(y_interval,y_segments)
    
    for x_i in x_ints:
        for y_j in y_ints:
            test = True

            x_list = range(int(x_i.a-.5), int(x_i.b+1.5))
            y_list = range(int(y_j.a-.5), int(y_j.b+1.5))
            if len(x_list) == 1: x_list.append(1+x_list[0])
            if len(y_list) == 1: y_list.append(1+y_list[0])
Example #7
0
    imgs.append(img_v)


    return imgs


# define corner colors for double interpolation
u0v0 = Color(1,1,1)
u0v1= Color(0,0,0)
u1v0 = Color(1,1,1)
u1v1 = Color(1,0,0)



scott = GrayScott(Interval(100,100))
'''
scott.set_rect(3,3,3,3)
scott.set_rect(13,13,3,2)
scott.set_rect(18,4,3,8)
'''
scott.set_rect(60,60,60,60)
scott.set_rect(65,65,15,10)
scott.set_rect(90,20,15,40)
scott.record()
#scott.log_uv()

#uv_imgs = export_uv(scott)


gen = 50