import Blender
from Blender import Scene, Object, Mesh, Mathutils, Material, Camera, Lamp, World
import random
import math
from random import *

escena = Scene.getCurrent() 
camara = []
lampara = []

for objeto in escena.objects:
    print objeto
    if (objeto.getType() == "Camera"):
        camara = objeto
    if (objeto.getType() == "Lamp"):
        lampara = objeto

# tenemos la cámara
# la ponemos en un sitio útil
camara.setLocation(18,-6,24)
lampara.setLocation(18,-6,26)



def nuevo_color (r,g,b):

    c = Material.New()
    c.rgbCol= [(r*1.0)/255,(g*1.0)/255,(b*1.0)/255]
    c.setAlpha(1.0)
    c.setRef(0.8)
    c.setSpec(0.8)

    return c


colores  = []
colores.append(nuevo_color(24,103,122))
colores.append(nuevo_color(185,228,240))
colores.append(nuevo_color(116,173,17))
colores.append(nuevo_color(180,48,47))
colores.append(nuevo_color(253,226,45))


contador = 0

def cubo (x,y):
    global contador
        
    cajaMesh = Mesh.Primitives.Cube(.5)
    cajaMesh.materials = [colores[randint(0,len(colores)-1)]]
    
    caja = escena.objects.new(cajaMesh, "Cube"+str(contador))
    contador += 1
    caja.setLocation(x, y, randint(0,20))
    caja.setSize(2, 2, randint(2,5))
    


coords = [(x,y) for x in range (0,10) for y in range(0,10)]

for coord in coords:
    cubo(coord[0],coord[1])

#Mostramos los nuevos elementos por pantalla
Blender.Redraw()