21.12.2022 Views

python_para_desenvolvedores_2ed

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Blender 297

"""

Função que responde a eventos diversos,

menos os gerados por botões

"""

# Os eventos das teclas estão definidas em Draw

if evt == ESCKEY:

# Termina o programa

Exit()

def buttons(evt):

"""

Função que responde a eventos dos botões

"""

if evt == 2:

Exit()

elif evt == 1:

gen3d()

def gen3d():

# Cena 3D

cena = Scene.GetCurrent()

x = y = z = 0

while x < 2 * pi:

# Calcula os valores de z

z = eval(Buttons.formula.val)

# Cria uma esfera de 16 segmentos, 16 anéis e 0.1 BU de raio

s = Mesh.Primitives.UVsphere(16, 16, .1)

esfera = cena.objects.new(s, 'Mesh')

# Transfere a esfera para o local calculado

esfera.setLocation(x, y, z)

# Próximo x

x += Buttons.delta.val

# Atualiza a cena

cena.update()

if __name__ == '__main__':

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!