En esta ocasión les traigo un programa en el cual abarcamos
muchos de los temas vistos en clases y un poco más de investigación que fue realizada por mi
parte.
Lo que realiza el programa son una serie de preguntas que se
irán repitiendo conforme lo estés utilizando, creando las figuras que están por
defecto o creando una figura tú mismo y si te aburres puedes escuchar música mientras
lo haces con una nueva librería que he importado que les explicare más adelante de
donde descargarla y como instalarla en su python (en el sistema operativo Windows).
Sin más les dejo unas cuantas capturas de lo que realiza el programa:
Si ponemos si en el cuadro de texto anterior nos borrara la figura y mostrara de nuevo la lista de figuras o si lo prefieres puedes hacer una figura tu mismo
En este caso quiero hacer una figura
Nos saldran varias preguntas que seran si quieres poner le un color al lapiz, si es si le das el color (en ingles) y te lo cambiara, en este caso use el red (rojo) y despues te preguntara si quieres cambiarle el grosor al lapiz, si es si le das el numero de grosor que deseas, ya por ultimo te pedira las coordenadas de X y Y
Ya habiendole dando toda esa información hace la linea y te preguntara que si quieres hacer otra linea, si pones que si hara lo mismo hasta que pongas no y parara
Y este es un ejemplo que hice con diferentes colores y grosores de lapiz
Y por ultimo si ya no quieres ver y/o hacer figuras te saldra ese mensaje con mi nombre y
agradeciendote por a ver utilizado mi programa.
Código:
import turtle
import tkSimpleDialog
import tkMessageBox
import pygame
from pygame.locals import *
t=turtle.Turtle()
turtle.title("Figuras")
fondo=turtle.Screen()
fondo.bgcolor('#B400FF')
#t.speed(100)
def colores():
c1=tkSimpleDialog.askstring("Lapiz","Escribe el color del lapiz:")
c2=tkSimpleDialog.askstring("Relleno","Escribe el color del relleno:")
return t.color(c1, c2)
def vt():
p=tkSimpleDialog.askstring("Pregunta","Deseas ver la pluma? (si/no)")
if p=="si":
t.showturtle()
elif p=="no":
t.hideturtle()
def song(r):
pygame.init()
if r=="si":
pr=tkSimpleDialog.askstring("Cancion","Elige entre: \n1.- Valle Gerudo.\n2.- Lost Woods.\n(1 o 2)")
if pr=="1":
pygame.mixer.music.load("cancion que quieras (.mp3, .wav, etc)")
pygame.mixer.music.play(4)
elif pr=="2":
pygame.mixer.music.load("cancion que quieras (.mp3, .wav, etc)")
pygame.mixer.music.play(6)
def action():
t.penup()
t.goto(0,0)
t.pendown()
t.clear()
tkMessageBox.showinfo("Tipos de figuras","Figuras para escojer: \ncuadrado.\nrectangulo.\ntriangulo.\ncirculo."
"\nrombo.\noctangulo.\nestrella.\nmolino de viento.\ncrear.")
p=tkSimpleDialog.askstring("Figura","Escribe la figura que deseas hacer:")
if p!="crear":
fig(p)
elif p=="crear":
create("si")
def fig(op):
colores()
vt()
g=tkSimpleDialog.askinteger("Pluma", "Grosor de la pluma:")
if op=="cuadrado":
t.pensize(g)
t.begin_fill()
t.goto(75, 0)
t.goto(75, 75)
t.goto(0,75)
t.goto(0,0)
t.end_fill()
elif op=="rectangulo":
t.pensize(g)
t.begin_fill()
t.goto(145, 0)
t.goto(145, 75)
t.goto(0,75)
t.goto(0,0)
t.end_fill()
elif op=="triangulo":
t.begin_fill()
t.pensize(g)
for _ in xrange(3):
t.fd(100)
t.left(120)
t.end_fill()
elif op=="circulo":
t.begin_fill()
t.pensize(g)
for i in range(24):
t.forward(10)
t.right(10)
for j in range(1):
t.forward(10)
t.right(5)
t.end_fill()
elif op=="rombo":
t.pensize(g)
t.begin_fill()
t.goto(40, -40)
t.goto(80, 0)
t.goto(40,40)
t.goto(0,0)
t.end_fill()
elif op=="octangulo":
t.pensize(g)
t.begin_fill()
for i in range(4):
t.forward(100)
t.right(45)
for j in range(1):
t.forward(100)
t.right(45)
t.end_fill()
elif op=="estrella":
t.pensize(g)
for i in range(28):
t.forward(100)
t.right(150)
for j in range(1):
t.forward(100)
t.right(145)
elif op=="molino de viento":
t.pensize(g)
t.goto(0,80)
t.begin_fill()
for i in range(30):
t.goto(0,140)
t.forward(100)
t.right(150)
for j in range(1):
t.forward(100)
t.right(145)
t.end_fill()
def create(re):
while re=="si":
if re=="si":
p=tkSimpleDialog.askstring("Color", "Quieres poner un color al lapiz?")
if p=="si":
c=tkSimpleDialog.askstring("Color", "Dame el color del lapiz:")
pre2=tkSimpleDialog.askstring("Lapiz", "Quieres darle otro grosor al lapiz?")
if pre2=="si":
g=tkSimpleDialog.askinteger("Lapiz", "Grosor del lapiz:")
t.begin_fill()
t.pencolor(c)
t.pensize(g)
x=tkSimpleDialog.askinteger("Coordenadas","Dame los grados en x:")
y=tkSimpleDialog.askinteger("Coordenadas","Dame los grados en y:")
t.goto(x,y)
t.end_fill()
re=tkSimpleDialog.askstring("Crear figura","Quieres hacer otra linea?")
tkMessageBox.showinfo("Creacion de figura","Figura creada!!")
p=tkSimpleDialog.askstring("Cancion","Quieres escuchar algo de musica? (si/no)")
song(p)
pre=tkSimpleDialog.askstring("Pregunta","Quieres escoger una figura? (si/no)")
while pre=="si":
action()
c=tkSimpleDialog.askstring("Pregunta","Quieres cambiar de cancion? (si/no)")
if c=="si":
song(c)
pre=tkSimpleDialog.askstring("Pregunta","Quieres escoger otra figura? (si/no)")
if pre=="no":
tkMessageBox.showinfo("Armando Monreal","Gracias por usar mi programa!!")
turtle.done()
Explicación de instalación (pygame):
Para descargar pygame vamos a esta dirección web: https://www.pygame.org/download.shtml o http://www.lfd.uci.edu/~gohlke/pythonlibs/#pygame y escogen la version que tengan de python, ya sea de 32 o 64.
Ahora abrimos el cmd y ponemos cd más la ruta donde este guardada la libreria y damos enter, despues ponemos pip install pygame-1.9.3-cp27-cp27m-win32.whl, yo descargué esa versión si ustedes descargaron una versión diferen solo copien el nombre del archivo que descargaron, damos a enter y listo.
NOTA: a mi me sale asi porque ya lo tengo a ustedes debe de salirle unas lestras amarillas o algo diferente de eso. Para verificar que se instalo correctamente en python o en cualquier otro editor de texto que usemos, ponemos import pygame y sino sale ningun error concluimos que la instalacion fue un exito.
Comentarios
Publicar un comentario