miércoles, 30 de agosto de 2017

gráficos en python


circulo:

from Tkinter import * 
root = Tk()  
root.title('Ejemplo') 

circulo = Canvas(width=210, height=210, bg='white') 
circulo.pack(expand=YES, fill=BOTH) 
circulo.create_oval(10, 10, 200, 200, width=5, fill='red') 

root.mainloop()























rectángulo:


from Tkinter import * 
root = Tk()  
root.title('Ejemplo')

rectangulo = Canvas(width=210, height=210, bg='white')
rectangulo.pack(expand=YES, fill=BOTH)
rectangulo.create_rectangle(10, 10, 200, 200, width=5, fill='blue')

root.mainloop()





























linea:


from Tkinter import * 
root = Tk()  
root.title('Ejemplo')

linea = Canvas(width=210, height=210, bg='white')
linea.pack(expand=YES, fill=BOTH)
linea.create_line(0, 200, 200, 0, width=10, fill='black')

root.mainloop()





























ventanas:

Las ventanas se configuraran de distintas formas , dependiendo de donde se puedan correr dichas ventanas.


les dejo el siguiente link que les sera muy útil para la creación de ventanas y muchos programas mas:




a continuación  veremos varios ejemplos de como se crea una ventana en python:


ejemplo 1:


from Tkinter import * 

v0 = Tk() 

v0.mainloop()














ejemplo 2:


Ahora para colocarle fondo a la ventana sería:



from Tkinter import *

v0 = Tk() # Tk() Es la ventana principal
v0.config(bg="blue") # Le da color al fondo

v0.mainloop









ejemplo 3:

Una forma de controlar el tamaño de la ventana sería el siguiente:



from Tkinter import *

v0 = Tk()
v0.config(bg="black")
v0.geometry("500x500")

v0.mainloop() 




























ejemplo 4:



Vamos a crear una ventana de tipo Toplevel. En Python ocurre algo curioso, todas las ventanas creadas se abren al mismo tiempo. Por eso cuando creamos una ventana del tipo Toplevel, debemos ocultarla. 



"""dos ventanas"""

from Tkinter import * # Importa la libreria

vprincipal = Tk() # Tk() Es la ventana principal
vprincipal.config(bg="red") # Le da color al fondo
vprincipal.geometry("500x500") # Cambia el tamano de la ventana

ventana2 =Toplevel(vprincipal) # Crea una ventana hija

vprincipal.mainloop() # Es el evento que llama al inicio de nuestro programa. Siempre lo lleva la ventana principal.




























ejemplo 5:

vamos a crear una ventana que muestre dos botones, uno mostrara una ventana y el otro botón la ocultara.




v1=Toplevel(v0)
def mostrar(ventana): ventana.deiconify()
def ocultar(ventana):ventana.withdraw()
def ejecutar(f): v0.after(200,f)

v0.config(bg="black")
v0.geometry("500x500")

b1=Button(v0,text="ABRIR VENTANA V1",command=lambda: ejecutar(mostrar(v1)))
b1.grid(row=1,column=1)

b2=Button(v0,text="OCULTAR VENTANA V1",command=lambda: ejecutar(ocultar(v1)))
b2.grid(row=1,column=2)
v1.withdraw()
v0.mainloop()

















ejemplo 6:



Ahora, no sé si lo habrán notado, pero cuando cerramos la ventana, tira error, pero cuando la ocultamos no nos da error. Yola solución que le encontré a esto, fue quitando la opción de cerrar ventana, y colocando un botón salir en cada ventana.


Para realizar eso se hace lo siguiente:



#!/usr/bin/env python
# -*- coding: utf-8 -*-

from Tkinter import * # Importa el módulo

ventanap = Tk() # Tk() Es la ventana principal
ventanap.title("ventana de la aplicacion")
ventanah = Toplevel(ventanap) # Crea una ventana hija
ventanah.title("ventana hija")
ventanah.config(bg="green") # Le da color al fondo

ventanah.geometry("500x500") # Cambia el tamaño de la ventana

ventanah.protocol("WM_DELETE_WINDOW", "onexit") # Elimina la opción de salir para evitar el error


def mostrar(ventana): ventana.deiconify() # Muestra una ventana


def ocultar(ventana): ventana.withdraw() # Oculta una ventana


def ejecutar(f): ventanap.after(200, f) # Una forma de ejecutar las funciones


def imprimir(texto): print texto # Imprime un texto


ventanap.config(bg="blue") # Le da color al fondo
ventanap.geometry("500x500") # Cambia el tamaño de la ventana

b1 = Button(ventanap, text="ABRIR VENTANA V1",
command=lambda: ejecutar(mostrar(ventanah)) or imprimir("hola") or imprimir("tercera función")) # Primer botón
b1.grid(row=1, column=1) # El botón es cargado
b2 = Button(ventanah, text="OCULTAR VENTANA V1", command=lambda: ejecutar(ocultar(ventanah))) # Segundo botón
b2.grid(row=1, column=2) # El botón es cargado

b3 = Button(ventanap, text="SALIR", command=lambda: ejecutar(ocultar(ventanah)))
b3.grid(row=1, column=3) # El botón es cargado

ventanah.withdraw() # Oculta la ventana v1
ventanap.mainloop() # Es el evento que llama al inicio de nuestro programa. Siempre lo lleva la ventana principal.





























ejemplo 7:


programas que muestra figuras geométricas dentro de ventanas hija:


circulo:


from Tkinter import*
ventana = Tk() # Tk() Es la ventana principalventana.title("ventana de figura con boton")
ventana.config(bg="red") # Le da color al fondoventana.geometry("500x500") # Cambia el tamao de la ventana
ventana.geometry("500x500")

def ejecutar(f):
ventana.after(200, f) # Una forma de ejecutar las funciones


def circulo(ventana):
circulo = Canvas(width=210, height=210, bg='green') # aqui se crea el cuadro blanco donde aparece nuestra figura con su ancho y largo que estableci y su color 



circulo.pack(expand=YES, fill=BOTH) # sierve para cargar la figura 
circulo.create_oval(10, 10, 200, 200, width=3, fill='yellow') # radio,

circulo.pack(expand=YES, fill=BOTH)
circulo.create_oval(10, 10, 200, 200, width=5, fill='blue')
botoncir = Button(ventana, text="ver circulo",
command=lambda:
ejecutar(circulo(ventana))) # Primer boton
botoncir.grid(row=3, column=15) # El botn es cargado
botoncir.grid(row=1, column=1)
ventana.mainloop()














rectangulo:

from Tkinter import*
ventana = Tk() # Tk() Es la ventana principalventana.title("ventana de figura con boton")
ventana.config(bg="green") # Le da color al fondoventana.geometry("500x500") # Cambia el tamao de la ventana
ventana.geometry("500x500")

def ejecutar(f):
ventana.after(200, f) # Una forma de ejecutar las funciones


def rectangulo(ventana):
rectangulo= Canvas(width=210, height=210, bg='yellow') # aqui se crea el cuadro blanco donde aparece nuestra figura con su ancho y largo que estableci y su color

circulo.pack(expand=YES, fill=BOTH) # sierve para cargar la figura 

circulo.create_oval(10, 10, 200, 200, width=3, fill='blue') # radio,

rectangulo.pack(expand=YES, fill=BOTH)
rectangulo.create_rectangle(10, 10, 200, 200, width=5, fill='blue')
botonrect = Button(ventana, text="ver cuadro",
command=lambda:
ejecutar(rectangulo(ventana))) # Primer boton
botonrect.grid(row=4, column=5) # El boton es cargado

ventana.mainloop()
















lineas:


from Tkinter import*
ventana = Tk() # Tk() Es la ventana principalventana.title("ventana de figura con boton")
ventana.config(bg="red") # Le da color al fondoventana.geometry("500x500") # Cambia el tamao de la ventana
ventana.geometry("420x420")

def ejecutar(f):
ventana.after(200, f) # Una forma de ejecutar las funciones


def linea(ventana):
linea= Canvas(width=210, height=210, bg='blue') # aqui se crea el cuadro blanco donde aparece nuestra figura con su ancho y largo que estableci y su color

 circulo.pack(expand=YES, fill=BOTH) # sierve para cargar la figura
 circulo.create_oval(10, 10, 200, 200, width=3, fill='blue') # radio,
linea.pack(expand=YES, fill=BOTH)

linea.create_line(0, 0, 420,420, width=10, fill='green')
botonline = Button(ventana, text="ver linea",
command=lambda:
ejecutar(linea(ventana))) # Primer boton
botonline.grid(row=4, column=5) # El botn es cargado

ventana.mainloop()





ejemplo 8:



programas que muestra figuras geométricas dentro de ventanas hijas mediante botones :




codigo:


#!/usr/bin/env python#  -*- coding: utf-8 -*-
from Tkinter import *  # Importa el móduloventanap =Tk()
ventanap.config(bg="yellow")
ventanap.geometry("500x500")
ventanap.title("Hacer las tres figuras en 1")
ventanah =Toplevel(ventanap)
ventanah.protocol("WM_DELETE_WINDOW", "onexit")

def ejecutar(f):
    ventanah.after(200, f)

def mostrar(ventana):
    ventana.deiconify()

def rectangulo(ven):
    ventanah.deiconify()
    rectangulo = Canvas(ventanah,width=210, height=210, bg="yellow")
    rectangulo.pack(expand=YES, fill=BOTH)
    rectangulo.create_rectangle(10, 10, 200, 200, width=3, fill='blue')

def circulo(ven):
    ventanah.deiconify()
    circulo = Canvas(ventanah,width=210, height=210, bg="brown")
    circulo.pack(expand=YES, fill=BOTH)
    circulo.create_oval(10, 10, 200, 200, width=3, fill='red')

def ocultar(ventana):
    ventanah.withdraw()


def linea(ven):
        ventanah.deiconify()
        linea = Canvas(ventanah, width=210, height=210, bg="green")
        linea.pack(expand=YES, fill=BOTH)
        linea.create_line(5, 5, 200, 200, width=3, fill='yellow')


boton2= Button(ventanah, text="Cerrar", command=lambda: ejecutar(ocultar(ventanah)))
boton2.pack()
botonrec = Button(ventanap, text=" rectangulo",command=lambda: ejecutar (rectangulo(ventanap)))
botonrec.grid(row=1, column=1)  # El botón es cargadobotoncir = Button(ventanap, text=" circulo",command=lambda: ejecutar (circulo(ventanap)))
botoncir.grid(row=1, column=2)  # El botón es cargadobotonlin = Button(ventanap, text=" linea",command=lambda: ejecutar (linea(ventanap)))
botonlin.grid(row=1, column=3)  # El botón es cargadoventanah.withdraw()ventanap.mainloop()








































ejemplo 9:



Figuras animadas con Python.

Código establecido para realizar una secuencia de figuras en python dando la forma de un mosaico de colores:


# turtle honeycomb# Lasse Kosiol# 1.9.2012# python workshop opentechschool berlin
import turtle
from random import randint

size = 20circles = 20turtle.speed(100)

turtle.colormode(255)

def move(length, angle):
                turtle.right(angle)
                turtle.forward(length)

def hex():
        turtle.pendown()
        turtle.color( randint(0,255),randint(0,255),randint(0,255) )
        turtle.begin_fill()
        for i in range(6):
                move(size,-60)
        turtle.end_fill()
        turtle.penup()

# startturtle.penup()

for circle in range (circles):
        if circle == 0:
                hex()
                move(size,-60)
                move(size,-60)
                move(size,-60)
                move(0,180)
        for i in range (6):
                move(0,60)
                for j in range (circle+1):
                        hex()
                        move(size,-60)
                        move(size,60)
                move(-size,0)
        move(-size,60)
        move(size,-120)
        move(0,60)

turtle.exitonclick()




aquí les dejo un link donde pueden encontrar algunos otros programas:

https://www.pythoniza.me/dibujos-con-python-turtle/



ejemplo 10:



juego del gato realizado por Armando Monreal.

código:


from Tkinter import *
import tkMessageBox
import tkSimpleDialog


def bloq():
    for i in range(0, 9):
        lisb[i].config(state="disable")


def inij():
    for i in range(0, 9):
        lisb[i].config(state="normal")
        lisb[i].config(bg="lightgray")
        lisb[i].config(text="")
        tab[i] = "N"    global nomj1, nomj2  # indica a que variables queremos acceder  
    nomj1 = tkSimpleDialog.askstring("Jugador", "Escribe el nombre del jugador 1: ")
    nomj2 = tkSimpleDialog.askstring("Jugador", "Escribe el nombre del jugador 2: ")
    turj.set("Turno: " + nomj1)


def cam(num):
    global turno, nomj1, nomj2
    if tab[num] == "N" and turno == 0:
        lisb[num].config(text="X")
        lisb[num].config(bg="green")
        tab[num] = "X"        turno = 1        turj.set("Turno: " + nomj2)
    elif tab[num] == "N" and turno == 1:
        lisb[num].config(text="O")
        lisb[num].config(bg="blue")
        tab[num] = "O"        turno = 0        turj.set("Turno: " + nomj1)
    lisb[num].config(state="disable")
    verif()


def verif():
    if (tab[0] == "X" and tab[1] == "X" and tab[2] == "X") or (tab[3] == "X" and tab[4] == "X" and tab[5] == "X") or (
                tab[6] == "X" and tab[7] == "X" and tab[8] == "X"):
        bloq()
        tkMessageBox.showinfo("Ganaste", "Ganaste jugador: " + nomj1)
    elif (tab[0] == "X" and tab[3] == "X" and tab[6] == "X") or (tab[1] == "X" and tab[4] == "X" and tab[7] == "X") or (
                tab[2] == "X" and tab[5] == "X" and tab[8] == "X"):
        bloq()
        tkMessageBox.showinfo("Ganaste", "Ganaste jugador: " + nomj1)
    elif (tab[0] == "X" and tab[4] == "X" and tab[8] == "X") or (tab[2] == "X" and tab[4] == "X" and tab[6] == "X"):
        bloq()
        tkMessageBox.showinfo("Ganaste", "Ganaste jugador: " + nomj1)
    elif (tab[0] == "O" and tab[1] == "O" and tab[2] == "O") or (tab[3] == "O" and tab[4] == "O" and tab[5] == "O") or (
                tab[6] == "O" and tab[7] == "O" and tab[8] == "O"):
        bloq()
        tkMessageBox.showinfo("Ganaste", "Ganaste jugador: " + nomj2)
    elif (tab[0] == "O" and tab[3] == "O" and tab[6] == "O") or (tab[1] == "O" and tab[4] == "O" and tab[7] == "O") or (
                tab[2] == "O" and tab[5] == "O" and tab[8] == "O"):
        bloq()
        tkMessageBox.showinfo("Ganaste", "Ganaste jugador: " + nomj2)
    elif (tab[0] == "O" and tab[4] == "O" and tab[8] == "O") or (tab[2] == "O" and tab[4] == "O" and tab[6] == "O"):
        bloq()
        tkMessageBox.showinfo("Ganaste", "Ganaste jugador: " + nomj2)


ven = Tk()
ven.geometry("370x460")
ven.title("Juego del gato")
turno = 0
nomj1 = ""nomj2 = ""
lisb = []
tab = []
turj = StringVar()

for i in range(0, 9):
    tab.append("N")

b0 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(0))
lisb.append(b0)
b0.place(x=50, y=50)
b1 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(1))
lisb.append(b1)
b1.place(x=150, y=50)
b2 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(2))
lisb.append(b2)
b2.place(x=250, y=50)
b3 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(3))
lisb.append(b3)
b3.place(x=50, y=150)
b4 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(4))
lisb.append(b4)
b4.place(x=150, y=150)
b5 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(5))
lisb.append(b5)
b5.place(x=250, y=150)
b6 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(6))
lisb.append(b6)
b6.place(x=50, y=250)
b7 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(7))
lisb.append(b7)
b7.place(x=150, y=250)
b8 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(8))
lisb.append(b8)
b8.place(x=250, y=250)
tue = Label(ven, textvariable=turj).place(x=140, y=10)
bini = Button(ven, bg='blue', fg='white', text='Iniciar juego', cursor="sizing", width=15, height=3,
              command=inij).place(x=130, y=360)
bloq()

linea = Canvas(ven, width=310, height=10)
linea.place(x=30, y=120)
linea.create_line(310, 0, 0, 0, width=25, fill='black')
l2 = Canvas(ven, width=310, height=10)
l2.place(x=30, y=220)
l2.create_line(310, 0, 0, 0, width=25, fill='black')
l3 = Canvas(ven, width=10, height=310)
l3.place(x=130, y=25)
l3.create_line(0, 310, 0, 0, width=25, fill='black')
l4 = Canvas(ven, width=10, height=310)
l4.place(x=230, y=25)
l4.create_line(0, 310, 0, 0, width=25, fill='black')

ven.mainloop()



















ejemplo 11:

ejemplo de como realizar un corazon.

codigo:


from turtle import *

def curvemove():
    for i in range(200):
        right(1)
        forward(1)


color('blue', 'green')
begin_fill()
left(140)
forward(111.65)
curvemove()
left(120)
curvemove()
forward(111.65)
end_fill()
done()
















ejemplo 12:


programa que muestra todas las figuras realizadas en clase.



código:

# -*- coding: utf-8 -*-
from Tkinter import *
v0 = Tk()
v0.title("Bienvenido al Menu de gilberto")
v0.config(bg="green")
v0.geometry("700x500")


def mostrar(num):

    v1 = Toplevel(v0)
    v1.title("Ventana hija")
    v1.protocol("WM_DELETE_WINDOW", "onexit")
    v1.config(bg="gray")



    if  num == 1:

     v1.geometry("210x240")
     canvas = Canvas(v1, width=210, height=210, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     canvas.create_oval(10, 10, 200, 200, width=5, fill='green')

     Boton1 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton1.pack()

    elif num == 2:

     v1.geometry("210x240")
     canvas = Canvas(v1,width=300, height=210, bg='yellow')
     canvas.pack(expand=YES, fill=BOTH)
     canvas.create_rectangle(10, 10, 200, 200, width=5, fill='blue')

     Boton2 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton2.pack()

    elif num == 3:

     v1.geometry("210x240")
     canvas2 = Canvas(v1,width=300, height=210, bg='white')
     canvas2.pack(expand=YES, fill=BOTH)
     canvas2.create_line(0, 200, 200, 0, width=10, fill='green')
     canvas2.create_line(0, 0, 200, 200, width=10, fill='red')

     Boton3 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton3.pack()

    elif num == 4:

     v1.geometry("210x240")
     canvas = Canvas(v1, width=300, height=200, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     xy = 10, 10, 190, 190     canvas.create_arc(xy, start=0, extent=270, fill='gray60')

     Boton4 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton4.pack()


    elif num == 5:

     v1.geometry("210x240")
     canvas123 = Canvas(v1,width=300, height=200, bg='white')
     canvas123.pack(expand=YES, fill=BOTH)
     canvas123.create_arc(10, 10, 190, 190, start=270, extent=90, fill='gray90')

     Boton5 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton5.pack()


    elif num == 6:

     v1.geometry("210x240")
     canvas = Canvas(v1, width=300, height=200, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     xy = 10, 10, 190, 190     canvas.create_arc(xy, start=0, extent=270, fill='gray60')
     canvas.create_arc(10, 10, 190, 190, start=270, extent=90, fill='gray90')

     Boton6 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton6.pack()


    elif num == 7:

     v1.geometry("250x230")
     canvas = Canvas(v1, width=300, height=200, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     canvas.create_text(150,70,fill="blue",font="Times",text="Hola \nmundo \nsoy gilberto")

     Boton7 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton7.pack()

    elif num == 8:

     v1.geometry("250x250")
     canvas = Canvas(v1, width=300, height=200, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     canvas.create_polygon(40, 40, 40, 140, 140, 140, 140, 100,fill="lightblue", outline="brown", width=6)

     Boton8 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton8.pack()

    elif num == 9:

     v1.geometry("500x330")
     canvas = Canvas(v1, width=300, height=200, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     canvas.create_polygon(420,180,420,60,380,100,300,100,260,60,260,140,220,100,180,100,
                           140,140,140,80,150,80,200,40,200,20,160,20,90,80,100,160,120,270,
                           200,270,200,230,160,230,160,210,180,190,220,190,220,270,280,270,
                           280,230,260,230,260,180,400,200,360,220,320,220,280, 180,
                           fill="lightblue", outline="brown", width=6)

     Boton9 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton9.pack()

    elif num == 10:

       v1.geometry("250x250")
       canvas = Canvas(v1, width=300, height=200, bg='white')
       canvas.pack(expand=YES, fill=BOTH)
       canvas.create_polygon(130,20,150,90,210,90,160,130,
                             180,200,130,160,80,200,100,130,50,90,110,90,
                             fill="yellow", outline="black", width=3)

       Boton10 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
       Boton10.pack()

    elif num == 11:

        v1.geometry("230x230")
        canvas = Canvas(v1, width=300, height=200, bg='white')
        canvas.pack(expand=YES, fill=BOTH)
        canvas.create_polygon(37.29,21.55,
                              53.89,47.62,31,80,46.38,98.19,76.8,83.97,78.38,131.78,97.34,132.17,
                              98.92,98.19,135.67,97.4,136.85,134.15,155.03,133.75,153.84,80.81,
                              175.57,24.32,137.25,58.69,78.78,61.45,66.53,42.88,
                              fill="lightblue", outline="brown", width=6)

        Boton11 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
        Boton11.pack()

    elif num == 12:

         v1.geometry("250x400")
         canvas = Canvas(v1, width=300, height=200, bg='black')
         canvas.pack(expand=YES, fill=BOTH)
         puntos = [00, 20, 60, 20, 80, 80, 120, 80, 160, 20, 220, 40, 180, 40, 140, 80, 160, 100, 160, 120, 160, 140,
                  140, 160, 180, 180, 200, 200, 200, 240, 180, 280, 140, 300, 180, 320, 180, 340, 120, 340, 100, 320,
                  80, 340, 20, 340, 20, 320, 60, 300, 20, 280, 00, 240, 00, 200, 20, 180, 60, 160, 40, 140, 40, 120, 40,
                  100, 60, 80, 40, 40]
         canvas.create_polygon(puntos, fill="white", outline="white", width=9)

         Boton12 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
         Boton12.pack()

    elif num == 13:

        v1.geometry("400x570")
        canvas = Canvas(v1, width=300, height=300, bg='white')
        canvas.pack(expand=YES, fill=BOTH)

        canvas.create_polygon(52.5, 14.5, 37, 59.1, 51, 59.1, fill="#5C554E", outline="#5C554E", width=1)
        canvas.create_polygon(19.3, 56.8, 58, 59.1, 67, 91, 37.5, 83, fill="#C3BAB5", outline="#C3BAB5", width=1)
        canvas.create_polygon(58, 57.8, 78, 77, 71, 103, fill="#D4CCC1", outline="#D4CCC1", width=1)
        canvas.create_polygon(37.5, 83, 67.4, 91, 71, 103, fill="#998C8A", outline="#998C8A", width=1)
        canvas.create_polygon(71, 103, 71, 104.8, 59.1, 104.8, 53.2, 91, fill="#665B57", outline="#665B57", width=1)

        canvas.create_polygon(86, 105.6, 98.2, 148.6, 47, 133.6, 24.2, 103.6, fill="#C3BAB5", outline="#C3BAB5",
                              width=1)
        canvas.create_polygon(98.2, 148.6, 102, 165.2, 47, 133.6, fill="#9B8D8A", outline="#9B8D8A", width=1)
        canvas.create_polygon(86, 105.6, 124, 169, 120, 196, 110.8, 196, fill="#D5CDC2", outline="#D5CDC2", width=1)
        canvas.create_polygon(102, 165.2, 110.8, 196, 99, 196, 80.6, 153, fill="#605550", outline="#605550", width=1)

        canvas.create_polygon(139.5, 197, 147, 241, 71, 220.4, 46, 193, fill="#C3BAB5", outline="#C3BAB5", width=1)
        canvas.create_polygon(147, 241, 150, 261.4, 71, 220.4, fill="#968B87", outline="#968B87", width=1)
        canvas.create_polygon(139.5, 197, 193, 274.2, 189, 307.8, 176, 321, 161.6, 321, fill="#D4CCC1",
                              outline="#D4CCC1", width=1)
        canvas.create_polygon(150, 261.4, 161.6, 321, 126.8, 249, fill="#605551", outline="#605551", width=1)

        canvas.create_polygon(199.4, 307.8, 189, 307.8, 176, 321, 186.6, 461, 184, 448.8, 171, 479.5, 199.4, 503,
                              fill="#C2AD9C", outline="#C2AD9C", width=1)
        canvas.create_polygon(176, 321, 161.6, 321, 186.6, 461, fill="#615652", outline="#615652", width=1)
        canvas.create_polygon(161.6, 321, 136, 359.4, 177.2, 409, fill="#D9C6B7", outline="#D9C6B7", width=1)
        canvas.create_polygon(144.4, 369.8, 139.6, 384.6, 160, 389.4, fill="#443232", outline="#443232", width=1)
        canvas.create_polygon(139.6, 384.6, 160, 389.4, 177.2, 409, 169.2, 450, fill="#826E65", outline="#826E65",
                              width=1)
        canvas.create_polygon(171, 479.5, 180.6, 497.8, 191.2, 496.8, fill="#463334", outline="#463334", width=1)
        canvas.create_polygon(177.2, 409, 164.8, 475, 176.5, 511, 199.4, 522, 199.4, 502.8, 191.2, 496.8, 180.6, 497.8,
                              171, 479.5, 184, 448.8, fill="#9B7F79", outline="#9B7F79", width=1)

        canvas.create_polygon(151.8, 335.4, 109.6, 280, 142.2, 349.2, fill="#5F5150", outline="#5F5150", width=1)
        canvas.create_polygon(109.6, 280, 70.3, 266, 94.3, 329, 131.3, 326, fill="#483636", outline="#483636", width=1)
        canvas.create_polygon(94.3, 329, 137, 336, 132, 326.8, fill="#C2AF9D", outline="#C2AF9D", width=1)
        canvas.create_polygon(115, 333, 136, 359.4, 142.2, 349.2, 137, 336, fill="#826E65", outline="#826E65", width=1)

        canvas.create_polygon(346.5, 14.5, 347.5, 59.1, 361, 59.1, fill="#2E2621", outline="#2E2621", width=1)
        canvas.create_polygon(379.4, 56.8, 341.8, 59.1, 332, 91, 361, 83, fill="#908782", outline="#908782", width=1)
        canvas.create_polygon(341.5, 57.8, 324, 75, 327.6, 103, fill="#A29B8F", outline="#A29B8F", width=1)
        canvas.create_polygon(361, 83, 332.4, 91, 329, 103, fill="#685D59", outline="#685D59", width=1)
        canvas.create_polygon(329, 103, 326.8, 104.8, 340, 104.8, 345.6, 91, fill="#2D2220", outline="#2D2220", width=1)

        canvas.create_polygon(313, 105.6, 301, 148.6, 352, 133.6, 374.5, 103.6, fill="#908782", outline="#908782",
                              width=1)
        canvas.create_polygon(301, 148.6, 297, 165.2, 352, 133.6, fill="#625755", outline="#625755", width=1)
        canvas.create_polygon(313, 105.6, 274, 169, 279, 196, 288, 196, fill="#A1998E", outline="#A1998E", width=1)
        canvas.create_polygon(297, 165.2, 288, 196, 300, 196, 318, 153, fill="#2D221E", outline="#2D221E", width=1)

        canvas.create_polygon(260, 197, 252, 241, 331, 220.4, 352.4, 193, fill="#908782", outline="#908782", width=1)
        canvas.create_polygon(252, 241, 249, 261.4, 331, 220.4, fill="#645955", outline="#645955", width=1)
        canvas.create_polygon(260, 197, 205, 274.2, 209.8, 307.8, 223, 321, 238, 321, fill="#A1998E", outline="#A1998E",
                              width=1)
        canvas.create_polygon(249, 261.4, 238.6, 321, 271.8, 249, fill="#2D221E", outline="#2D221E", width=1)

        canvas.create_polygon(199.4, 307.8, 209.8, 307.8, 223, 321, 212.6, 461, 215, 448.8, 228, 479.5, 199.4, 503,
                              fill="#8E7968", outline="#8E7968", width=1)
        canvas.create_polygon(223, 321, 238.6, 321, 212.6, 461, fill="#302722", outline="#302722", width=1)
        canvas.create_polygon(238, 321, 262.8, 359.4, 222.5, 409, fill="#A69384", outline="#A69384", width=1)
        canvas.create_polygon(254.4, 369.8, 259.6, 384.6, 238, 389.4, fill="#120001", outline="#120001", width=1)
        canvas.create_polygon(259.6, 384.6, 238, 389.4, 222.5, 409, 229.5, 450, fill="#4F3B32", outline="#4F3B32",
                              width=1)
        canvas.create_polygon(228, 479.5, 218.3, 497.8, 207.5, 496.8, fill="#180A04", outline="#180A04", width=1)
        canvas.create_polygon(222.5, 409, 234, 475, 223, 511, 199.4, 522, 199.4, 502.8, 207.5, 496.8, 218.3, 497.8, 228,
                              479.5, 215, 448.8, fill="#674C45", outline="#674C45", width=1)

        canvas.create_polygon(247, 335.4, 290.6, 280, 256.8, 349.2, fill="#281F1D", outline="#281F1D", width=1)
        canvas.create_polygon(290.6, 280, 328, 266, 304.8, 329, 267.5, 326, fill="#140202", outline="#140202", width=1)
        canvas.create_polygon(304.8, 329, 262.5, 336, 267.5, 326.8, fill="#8D7B66", outline="#8D7B66", width=1)
        canvas.create_polygon(283, 333, 262.8, 359.4, 256.8, 349.2, 262.5, 336, fill="#4D3930", outline="#4D3930",
                              width=1)
        Boton13 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
        Boton13.pack()

    elif num == 14:

        v1.geometry("650x650")
        poligono = Canvas(v1, width=300, height=300, bg='white')
        poligono.pack(expand=YES, fill=BOTH)
        poligono.create_polygon((200, 400), (100, 500), (100, 600), (200, 500), (300, 600), (300, 500), (200, 400),
                                (300, 300), fill="green", outline="brown", width=2)
        poligono.create_polygon((200, 200), (300, 100), (500, 100), (500, 300), (400, 400), (300, 300), fill="red",
                                outline="brown", width=2)

        Boton14 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
        Boton14.pack()


    elif num == 15:

        v1.geometry("500x550")
        figura = Canvas(v1, width=500, height=500, bg='white')
        figura.pack(expand=YES, fill=BOTH)
        puntos = [226, 42, 198, 42, 170, 50, 141, 71, 127, 60, 108, 52, 94, 57, 85, 71, 85, 85, 95, 99, 108, 106, 120,
                  109, 127, 113, 127, 123, 142, 119, 161, 119, 178, 122, 189, 134, 192, 148, 189, 161, 176, 166, 160,
                  165, 142, 162, 156, 178, 170, 192, 192, 198, 207, 198, 198, 212, 170, 209, 151, 205, 132, 202, 113,
                  195, 108, 180, 99, 164, 80, 153, 57, 156, 38, 170, 34, 183, 35, 198, 42, 212, 56, 221, 71, 226, 85,
                  221, 104, 212, 127, 223, 152, 226, 175, 232, 189, 234, 184, 250, 184, 270, 184, 283, 190, 297, 196,
                  306, 184, 321, 180, 334, 178, 346, 180, 353, 188, 372, 212, 390, 194, 402, 181, 411, 170, 425, 170,
                  443, 176, 456, 190, 467, 208, 468, 227, 456, 275, 419, 276, 404, 269, 393, 252, 383, 236, 382, 221,
                  371, 206, 361, 201, 350, 203, 340, 209, 333, 221, 326, 237, 326, 255, 322, 270, 314, 280, 305, 297,
                  291, 311, 288, 335, 288, 354, 293, 368, 301, 378, 311, 386, 326, 403, 330, 411, 330, 462, 265, 461,
                  240, 450, 230, 435, 226, 421, 226, 406, 230, 396, 240, 380, 270, 354, 265, 332, 260, 311, 263, 297,
                  263, 283, 263, 278, 250, 264, 226, 283, 226, 297, 221, 312, 212, 330, 198, 346, 198, 363, 198, 375,
                  188, 382, 175, 386, 160, 382, 141, 362, 127, 334, 127, 326, 133, 312, 148, 312, 163, 315, 180, 304,
                  192, 290, 204, 273, 206, 255, 205, 241, 204, 234, 198, 255, 189, 269, 180, 278, 166, 286, 151, 291,
                  132, 292, 113, 289, 99, 283, 85, 280, 74, 269, 63, 255, 51, 234, 42]
        figura.create_polygon(puntos, fill="black", outline="white", width=6)

        Boton15 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
        Boton15.pack()



def ocultar(ventana):ventana.destroy()
def ejecutar(f): v0.after(200, f)


b1 = Button(v0, text="figura Circulo", command=lambda: ejecutar(mostrar(1)) )
b1.grid(row=1, column=1)

b3 = Button(v0, text="figura Cuadrado", command=lambda: ejecutar(mostrar(2)))
b3.grid(row=1, column=2)

b3 = Button(v0, text="figura Lineas", command=lambda: ejecutar(mostrar(3)))
b3.grid(row=1, column=3)

b4 = Button(v0, text="figura Arco", command=lambda: ejecutar(mostrar(4)))
b4.grid(row=2, column=1)

b5 = Button(v0, text="figura Quesito", command=lambda: ejecutar(mostrar(5)))
b5.grid(row=2, column=2)

b6 = Button(v0, text="figura completa arc", command=lambda: ejecutar(mostrar(6)))
b6.grid(row=2, column=3)

b7 = Button(v0, text="mostrar texto Texto", command=lambda: ejecutar(mostrar(7)))
b7.grid(row=3, column=1)

b8 = Button(v0, text="figura normal", command=lambda: ejecutar(mostrar(8)))
b8.grid(row=3, column=2)

b9 = Button(v0, text="figura Gato", command=lambda: ejecutar(mostrar(9)))
b9.grid(row=3, column=3)

b10 = Button(v0, text="figura Estrella", command=lambda: ejecutar(mostrar(10)))
b10.grid(row=4, column=1)

b11 = Button(v0, text="figura Perro", command=lambda: ejecutar(mostrar(11)))
b11.grid(row=4, column=2)

b12 = Button(v0, text="figura Conejo", command=lambda: ejecutar(mostrar(12)))
b12.grid(row=4, column=3)

b13 = Button(v0, text="figura Antilope", command=lambda: ejecutar(mostrar(13)))
b13.grid(row=5, column=1)

b15 = Button(v0, text="figura Monito", command=lambda: ejecutar(mostrar(15)))
b15.grid(row=5, column=2)

b14 = Button(v0, text="figura Manzana", command=lambda: ejecutar(mostrar(14)))
b14.grid(row=5, column=3)



v0.mainloop()




No hay comentarios:

Publicar un comentario

link del algoritmo de la burbuja