Tomen en cuenta las coordenadas de x,y de la siguiente forma(cuarto cuadrante del plano cartesiano):
- x:en la parte superior de una hoja cuadriculada
- y:parte inferior izquierda de la misma hoja
Codigo fuente:
from tkinter import * def dibujo(ventana2): panel= Canvas(width=200, height=200, bg="yellow") panel.pack() #Parte negra panel.create_polygon(70,10,130,10,130,20,150,20,150,30,160,30,160,50,170,50,170,60,180,60,180,130, 170,130,170,140,160,140,160,160,150,160,150,170,50,170,50,160,40,160,40,140,30,140,30,130,20,130, 20,60,30,60,30,50,40,50,40,30,50,30,50,20,70,20,70,10,width=1,fill="black",outline="black") #Primera parte blanca panel.create_polygon(80,20,120,20,120,30,140,30,140,40,150,40,150,60,160,60,160,70,170,70, 170,120,150,120,150,110,50,110,50,120,30,120,30,70,40,70,40,60,50,60,50,40,60,40,60,30,80,30,80,20,width=1,fill="white",outline="white") #segunda parte blanca panel.create_polygon(60,120,140,120,140,130,150,130,150,150,140,150,140,160,60,160,60,150, 50,150,50,130,60,130,60,120,width=1,fill="white",outline="white") #ojos panel.create_rectangle(80,120,90,140, width=1,fill="black",outline="black") panel.create_rectangle(110,120,120,140,width=1,fill="black",outline="black") #manchas panel.create_polygon(80,70,120,70,120,80,130,80,130,100,120,100,120,110,80,110,80,100,70,100, 70,80,80,80,80,70,width=1,fill="red",outline="red") panel.create_polygon(110,20,120,20,120,30,140,30,140,50,120,50,120,40,110,40,110,20,width=1,fill="red",outline="red") panel.create_polygon(80,20,90,20,90,40,80,40,80,50,60,50,60,30,80,30,80,20,width=1,fill="red",outline="red") panel.create_polygon(40,60,60,60,60,90,50,90,50,100,30,100,30,70,40,70,40,60,width=1,fill="red",outline="red") panel.create_polygon(140,60,160,60,160,70,170,70,170,100,150,100,150,90,140,90,140,60,width=1,fill="red",outline="red") ventana2 =Tk() ventana2.title("Dibujo en ventana") ventana2.config(bg="white") ventana2.geometry("300x300") boton = Button(ventana2, text="Presione para crecer c:", command=lambda: dibujo(ventana2) ) boton.pack() ventana2.mainloop()
Como mencione al inicio, es mas sencillo apoyarse de una hoja cuadriculada para realizar el boceto de nuestra imagen antes de codificar las coordenadas para evitar errores como este.
Tambien anexo la hoja que utilice para practicar, de la cual se muestra el error de coordenadas:
No hay comentarios.:
Publicar un comentario