jueves, 11 de junio de 2020

Unidad 5

PROGRAMA 1
from turtle import*#IMPORTA TODA LA LIBRERIA TURTLE
t=Turtle()#CREA LA INSATANCIA t= TURTLW()
screen=t.getscreen()#MUESTRA PANTALLA DE LA TORTUGA
setup(640,480)#RESOLUCION DE 640 X 480
t.home()#POSICIONA EL CURSOR EN 0,0

t.left(90)#MUEVE 90° ALA IZQUIERDA

t.forward(200)#AVANZA 200 PIX HACIA ARRIBA
t.right(90)#ROTA 90 °
t.forward(300)#AVANZA  300 PIX
t.left(-90)#ROTA - 90° O 90 ° EN SENTIDO HORARIO
t.forward(200)#AVANZA HACIA ADELANTE
t.right(90)#ROTA 90°
t.forward(300)
t.undo()#DESHACE LA UTLTIMA ACCION
t.undo()
t.undo()
t.undo()
t.undo()
t.undo()
t.undo()
t.undo()
screen.exitonclick()#HABILITA SALIR CON UN CLICK EN LA PANTALLA




PROGRAMA 2
from turtle import*#IMPORTA TODA LA LIBRERIA TURTLE
t=Turtle()#CREA LA INSATANCIA t= TURTLW()

screen=t.getscreen()#MUESTRA PANTALLA DE LA TORTUGA
setup(640,480)#RESOLUCION DE 640 X 480

t.forward(50)#AVANZA 5 PIX
t.fd(50)#AVANZA 50 PIX

t.home()#REGRESA AL 0,0
t.undo()#DESHACE ACCION

t.penup()#LEANTA EL CURSOR
t.forward(50)#AVANZA 5 PIX
t.fd(50)#AVANZA 50 PIX

screen.exitonclick()#SALE CON UN CLICK EN PANTALLA


PROGRAMA 3
from turtle import *#TRAE LA LIBRERIA TORTUGA
t=Turtle()
screen=t.getscreen()#HABILITA LA PANTALLA DE TORTUGA

setup(250, 250)#PANTALLA TAMAÑO 250X250 PIX

screensize(120, 120)
colormode(255)#SAURACION DE COLOR NEGRO
hideturtle()

bgcolor(0,0,255)#APLICA COLOR A LA PANTALLA, AZUL , RGB
penup()#LEVANTA CURSOR

dot(200, 0, 0, 0)#HACE UN CIRCULO GRANDE NEGRO
dot(160, 255, 255, 255)#DENTRO DEL CIRCULO ANTERIOR HACE UNO MAS PEQUEÑO COLOR BLANCO
dot(120, 0, 0, 0)#DENTRO DE EL ANTERIOR OTRO CIRCULO MAS CHICO COLOR NEGRO
dot(80, 255, 255, 255)#DENTRO DE EL ANTERIOR OTRO CIRCULO MAS CHICO COLR BLANCO
dot(40, 0, 0, 0)#DENTRO DE EL ANTERIOR OTRO CIRCULO MAS CHICO COLOR NEGRO

#==============================================
'''
penup()#HALZA EL CURSOR
goto(-50,50)#SE DIRIGE A ESTA POSICION
pendown()#BAJA CURSOR
goto(50,50)
goto(50,-50)#DIBUJA UN CUADRO
goto(-50,-50)#EN EL CENTRO DEL CIRCULO
goto(-50,50)

penup()#ALZA CURSOR
goto(-100, 0)#SE DIRIGE A LA POSICION
pendown()#BAJA
goto(100, 0)#DIBUJA
penup()#ALZA CURSOR
goto(0, 100)
pendown()#BAJA CURSOR
goto(0, -100)#EL RESULTADO ES UN CUADRO Y UNA CRUZ EN LA DIANA
'''
#==============================================
'''
pencolor('red')#CURSOR SOLOR ROJO
pensize(5)#TAMAÑO 5

penup()#ALZA EL CURSOR
goto(-100, 50)#SE DIRIGE A ESA POSCICION
pendown()#BAJA CURSOR Y DIBUJA
goto(100, 50)
goto(100, -50)
goto(-100, -50)
goto(-100, 50)#RL RESULTADO ES UN RECTANGULO

penup()#ALZA CURSOR
goto(0, 50)#SE DIRIGE
pendown()#BAJA CURSOR Y DIBUJA
goto(0, -50)#EL RESULTADO ES UNA LINEA QUE PARTE AL RECTANGULO

penup()#ALZA CURSOR
goto(-50, 0)#SE DIRIGE
dot(50, 0, 0, 0)#HACE UN PUNTO
goto(50, 0)
dot(50, 0, 0, 0)
#EL RESULTADO ES 2 PUNTOS EN LOS CUADROS QUE QUEDAN
#DE PARTIR EL RECTANGULO
pensize(2)#CURSOR TAMAÑO 3
penup()#ALZA CURSOR
goto(-100, 100)#SE DIRIGE A LA POSICION
pendown()#BAAJA CURSOR Y DIBUJA
goto(100, 100)
goto(100, -100)
goto(-100, -100)
goto(-100, 100)#HACE UN CUADRO ALREDEDOR DE LA DIANA

penup()#ALZA CURSOR
goto(-66, -100)#SE DIRIGE A LA POSICION
pendown()#DIBUJA
goto(-66, 33)
goto(66, 33)#HACE UN CUADRO MAS PEQUEÑO QUE ESTA DENTRO DEL CUADRO ANTERIOR
goto(66, -100)

penup()#ALZA CURSOR
goto(0, 66)#PONE UN PUNTO COLOR ROJO
dot(60 , 'red')
pensize(5)#CURSOR TAMAÑO 5
pencolor('yellow')#COLOR AMARILLO
penup()#ALZA CURSOR
goto(0, 100)
pendown()#BAJA CURSOR
goto(100, 0)
goto(0, -100)#DIBUJA UN ROMBO AL REDEDOR DE LA DIANA
goto(-100, 0)
goto(0, 100)

penup()#ALZA CURSOR
goto(-50, 50)
pendown()#BAJA CURSOR
goto(0, 0)
goto(-50, -50)#DIBUJA OTRO ROMBO DENTRO DEL ROMBO MAS PEQUEÑO

penup()#ALZA CURSOR
goto(-50, 0)
dot(50, 0, 0, 0)#HACE UN PUNTO DENTRO DEL ROMBO PEQUEÑO
pensize(5)#CURSOR TAMAÑO 5
pencolor('green')#COLOR VERDE
penup()#ALZA CURSOR
goto(-100, 0)
pendown()#BAJA CURSOR
goto(-50, 50)
goto(50, -50)
goto(100, 0)#DIBUJA EL SIMBOLO INFINITO
goto(50, 50)#2 ROMBOS UNIDOS POR UN VERTICE
goto(-50, -50)
goto(-100, 0)

penup()#ALZA CURSOR
goto(0, 50)
dot(50, 0, 0, 0)#DIBUJA 2 PUNTOS ENMEDIO DEL SIMBOLO
goto(0, -50)#ARRIBA Y ABAJO
dot(50, 0, 0, 0)
screen.exitonclick()#SALE CON UN CLICK


PROGRAMA 4
from turtle import *#TRAE LA LIBRERIA TORTUGA
t=Turtle()
screen=t.getscreen()#HABILITA LA PANTALLA DE TORTUGA

setup(250, 250)#PANTALLA TAMAÑO 250X250 PIX

screensize(120, 120)
colormode(255)#SAURACION DE COLOR NEGRO
hideturtle()
bgcolor('blue')#APLICA COLOR A LA PANTALLA, AZUL , RGB
pensize(10)#TAMAÑO 10
pencolor('green')#COLOR VERDE
penup()#ALZA EL CURSOR
pendown()#DIBUJA
goto(0,0)
goto(0,-250)
penup()
pendown()
goto(0,-150)#DIBUJO DE LA HOJA, FORMA DE ROMBO
goto(50,-120)
goto(100,-150)
goto(50,-180)
goto(0,-150)

penup()#LEVANTA CURSOR
goto(0,50)#UN CIRCULO AQUI
dot(50,'white')
goto(50,0)#UN CIRCULO AQUI
dot(50,'white')
goto(-50,0)#UN CIRCULO AQUI
dot(50,'white')
goto(0,-50)#UN CIRCULO AQUI
dot(50,'white')
goto(35,40)#LOS CIRCULOS BLANCOS SON PARA LOS PETALOS
dot(50,'white')
goto(-35,40)
dot(50,'white')
goto(35,-40)
dot(50,'white')
goto(-35,-40)
dot(50,'white')
goto(0,0)
dot(100,'yellow')


PROGRAMA 5
from turtle import *#IMPORTA LA LIBRERIA
t=Turtle()#CREA INSTANCIA
screen=t.getscreen()#PANTALLA
colormode(255)
setup(800, 600, 0, 0)#RESOLUCION 800X600
bgcolor(252, 228, 236)#FONDO
colores=["red","yellow","blue","green"]#USAR LOS COLORES
#ROJO, AMARILLO, AZUL, VERDE
nombre=textinput("CAPTURA"," TU NOMBRE: ")#PIDE UNA CADENA

for x in range(100):#REPITE 100 VECES
    t.pencolor(colores[x%4])#EL CURSOR SERA DEL COLOR DEL RESIDUO DE DIVIDIR X/4, CAMBIA A VARIOS COLORES
    t.pendown()#BAJA CURSOR
    t.write(nombre,font=("Arial",int(x+4/4),"bold"))#TEXTO EN NEGRITAS ARIAL
    t.left(92)#GIRA 92°
screen.exitonclick()#SALE CON UN CLICK


PROGRAMA 6
from turtle import *#IMPORTA TORTUGA

t=Turtle()#CREA INSTANCIA
screen=t.getscreen()##PANTALA

title("BMR")#NOMBRE ALA PANTALLA
shape("turtle")#USA LA TORTUGA
t.fd(100)#AVANZA 100
t.clear()#BORRA PANTALLA
t.fd(100)#AVANZA
t.shape("turtle")#CAMBIA DE FORMA
#t.shape("arrow") #FLECHA
#t.shape("circle")#CIRCULO

t.shapesize(5,4,1)#CRECE EN X , Y , SE ALARGUE
#t.shapesize(1,10,5)
#t.shapesize(10,1,1)

stretch_wid – positive number
stretch_len – positive number
outline – positive number'''

#t.fillcolor("red")#RELLENA DE UN COLOR LA TORTUGA
#t.pencolor("green")#CONTORNO VERDE
#t.color("green", "red")#HACE LAS 2 INSTRUCCIONES PREVIAS EN UNA LINEA
#t.pensize(3)
#t.pencolor("purple")#CONTORNO MORADO
#t.fillcolor("orange")#RELLENO NARAJA
#t.pensize(10)##TAMAÑO 10
#t.speed(9)
#t.begin_fill()#LLENA
#t.circle(90)#UN CIRCULO DE RAIO 90
#t.end_fill()#TERMINA DE LLENAR

'''
circle(radius, extent=None, steps=None)¶
Parameters:
radius – a number
extent – a number (or None)
steps – an integer (or None)
#t.pen(pencolor="purple", fillcolor="orange", pensize=10, speed=9)#ARFUMENTOS
#t.begin_fill()#EMPIEZA EL RELLENO
#t.circle(90)
#t.end_fill()

t.reset()#LIMPIA LA PANTALLA Y EL APUNTADOR VUELVE ALA POSC DE INICIO
t.stamp()#ESTAMPA, AVANZA, ESTAMPA Y AVANZA
t.fd(100)
t.stamp()
t.fd(100)
t.clearstamp(1)#LIMPIA ESTAMPA
c = t.clone()#CLONA INSTANCIA, HACE 2 TORTUGAS
t.color("magenta")#UNA COLOR MAGENTA
c.color("red")#Y ROJO
t.circle(100)#HACE UN CIRCULO DE RADIO 100
c.circle(60)# Y RADIO 60
for i in range(4):#REPITE 4 VECES
    n=10
    while n <= 40:
        t.circle(n)#HACE UN CIRCULO
        n = n+10#DE RADIOS VARIABLES
    t.left(90)#PARA UNA FLOR

screen.exitonclick()

shapes: “arrow”, “turtle”,
“circle”, “square”, “triangle”, “classic”

fastest: 0 normal:6 slowest:1
fast: 10 slow:3


PROGRAMA 7
from turtle import *#IMPORTA LA LIBRERIA
t=Turtle()#CREA INSTANCIA
screen=t.getscreen()#PANTALLA
colormode(255)
setup(800, 600, 0, 0)#RESOLUCION 800X600
bgcolor(252, 228, 236)#FONDO
colores=["red","yellow","blue","green"]#USAR LOS COLORES
nombre=textinput("CAPTURA"," TU NOMBRE: ")

speed(3)#VELOCIDAD 3
for x in range(100):#REPITE 100 VECES
    t.pencolor(colores[x%4])
    t.penup()#ALZA CURSOR
    t.write(nombre,font=("Arial",int(x+4/4),"bold"))#TEXTO EN NEGRITAS ARIAL
    t.fd(x*4)#REPIDE 4 VECES
    t.pendown()
    t.left(92)#GIRA 92°
screen.exitonclick()

import random
import turtle
t = turtle.Pen()
t.speed(9)
turtle.bgcolor("black")
colors = ["red", "yellow", "blue", "green", "orange", "purple",
"white", "gray"]
for n in range(10):
    t.pencolor(random.choice(colors))
    size = random.randint(10,40)
    x = random.randrange(-turtle.window_width()//2,
    turtle.window_width()//2)
    y = random.randrange(-turtle.window_height()//2,
    turtle.window_height()//2)
    t.penup()
    t.setpos(x,y)
    t.pendown()
    for m in range(size):
        t.forward(m*2)
        t.left(91)
screen.exitonclick()


PROGRAMA 8
import turtle
from random import*

player_one = turtle.Turtle()#HACE UNA TORTUGA
turtle.setup(800, 600, 0, 0)
player_one.color("green")#VERDE
player_one.shape("turtle")#DE FORMA TORTUGA
player_one.penup()
player_one.goto(-200,100)#EN LA POSICION -200,100

player_two = player_one.clone()#CLONA O HACE OTRA TORTUGA
player_two.color("blue")#AZUL
player_two.penup()
player_two.goto(-200,-100)#BAJO LA ORIGINAÑ
pr=0
ipr=0
for i in range(0,3):#HACE 3 VECES
    n=randint(1,11)#GENERA NUMEROS ENTRE 1 Y 10
    print(i,n)
    if (n)%2==0:#SI EL NUMERO FUE PAR
        player_two.goto(300,-140)#AVANZA LA TORTUGA 2 O CLONADA
        player_two.pendown()
        player_two.circle(40)#Y DIBUJA UN CIRCULO
        player_two.penup()
        player_two.goto(-200,-100)#Y REGRESA
        pr=pr+1#VAR AUMENTADA
    
    else :
        player_one.goto(300,60)#SI FUE IMPAR LA TORTUGA 1
        player_one.pendown()
        player_one.circle(40)#DIBUJA UN CIRCULO
        player_one.penup()
        player_one.goto(-200,100)#Y REGRESA
        ipr=ipr+1#VAR AUMENTADA

if pr >ipr:#LA VAR MAS GRANDE ES LA DEL GANADOR
    player_two.write('GANADOR: TORTUGA AZUL',font=("Arial",20,"bold"))
else:
    player_one.write('GANADOR: TORTUGA VERDE',font=("Arial",20,"bold"))
screen.exitonclick()



PROGRAMA 9
from tkinter import *#TRAE TODA LA LIBRERIA TKINTER
window = Tk()
window.title("PROGRAMACION VISUAL")
window.mainloop()


PROGRAMA 10
from tkinter import *

ventana = Tk()
ventana.title("Bienvenidos")

lbl = Label(ventana, text='Luis')#PONE DENTRO DE LA VENTANA TEXTO
lbl.grid(column=0, row=0)
        
ventana.mainloop()


PROGRAMA 11
from tkinter import *
ventana = Tk()
ventana.title("PROGRAMACION VISUAL")
ventana.geometry('350x200')

lbl = Label(ventana, text='Luis')
lbl.grid(column=0, row=0)

btn=Button(ventana, text='CLICK ON ME')#CREA UN BOTON CON NOMBRE
btn.grid(column=1, row=0)
        
ventana.mainloop()


PROGRAMA 12
from tkinter import *
ventana = Tk()
ventana.title("PROGRAMACION VISUAL")
ventana.geometry('350x200')

lbl = Label(ventana, text='Luis')
lbl.grid(column=0, row=0)

def clicked():#FUNCIOM DE CLICK EN EL BOTON
    lbl.configure(text='BOTON FUE PRESIONADO')#EN CASO DE PRESIONARSE MUESTRA TEXTO
btn=Button(ventana, text='CLICK ', command=clicked )
btn.grid(column=1, row=0)
        
ventana.mainloop()



PROGRAMA 13
from tkinter import *#IMPORTA LIBRERIA

ventana = Tk()#INSTANCIA TK
ventana.title("PROGRAMACION VISUAL")
ventana.geometry('350x200')

lbl = Label(ventana, text='Luis')
lbl.grid(column=0, row=0)

txt=Entry(ventana, width=10)
txt.grid(column=1, row=0)


def clicked():
    lbl.configure(text='BOTON FUE PRESIONADO')
btn=Button(ventana, text='CLICK ', command=clicked )
btn.grid(column=2, row=0)
        
ventana.mainloop()



PROGRAMA 14
from tkinter import *

nombre=input('NOMBRE DE LA ETIQUETA: ')

ventana = Tk()
ventana.title("PROGRAMACION VISUAL")
ventana.geometry('350x200')

lbl = Label(ventana, text=nombre)#PONE DENTRO DE LA VENTANA LA CADENA SOLICITADA
lbl.grid(column=0, row=0)
        
ventana.mainloop()


PROGRAMA 15
from tkinter import*
from tkinter.ttk import*

ventana = Tk()
ventana.title("PROGRAMACION VISUAL")
ventana.geometry('350x200')#

lbl = Label(ventana, text='Luis')
lbl.grid(column=0, row=0)

txt=Entry(ventana, width=10)#PIDE UNA ENTRADA DE 10 CARACTERES
txt.grid(column=1, row=0)


def clicked():
    res='BIENVENIDO '+ txt.get()
    lbl.configure(text=res)

btn=Button(ventana, text='CLICK ', command=clicked )#
btn.grid(column=2, row=0)
ventana.mainloop()


PROGRAMA 16
from tkinter import*
from tkinter.ttk import*

ventana=Tk()#INTANCIA DE LA VENTANA
ventana.geometry('350x200')#HACE LA PANTALLA DE ESTA RESOLUCIO
ventana.title('PROGRAMACION VISUAL')#TITULO DE LA VENTANA

combo = Combobox(ventana)#CREA UNA CAJA EN LA VENTANA
combo ['values'] =(1,2,3,4,5,'TEXTO')#CON LOS ELEMENTOS DE LA TUPLA
combo.current(1)#MUESTRA EL ELEMENTO 1 DE LA TUPLA
combo.grid(column=0, row=0)#POSICION DE LA CJA

ventana.mainloop()


PROGRAMA 17
from tkinter import*
from tkinter.ttk import*

ventana=Tk()
ventana.geometry('350x200')
ventana.title('PROGRAMACION VISUAL')

chk_state=BooleanVar()#VARIABLE TIPO BOOLENA
chk_state.set(True)#DEFINIDA EN TRUE
ch=Checkbutton(ventana, text='CHOOSE', var=chk_state)
ch.grid(column=0,row=0)

ventana.mainloop()



PROGRAMA 18
from tkinter import*
from tkinter.ttk import*

ventana=Tk()
ventana.geometry('350x200')
ventana.title('PROGRAMACION VISUAL')
chk_state=BooleanVar(True)
chk1_state=BooleanVar(False)
chk2_state=BooleanVar(True)
chk3_state=BooleanVar(False)
ch=Checkbutton(ventana, text='CHOOSE 1', var=chk_state)#TEXTO Y REVISA LA BOOLEAN CHK
ch1=Checkbutton(ventana, text='CHOOSE 2', var=chk1_state)#TEXTO Y REVISA LA BOOLEAN CHK1
ch2=Checkbutton(ventana, text='CHOOSE 3', var=chk2_state)#TEXTO Y REVISA LA BOOLEAN CHK2
ch3=Checkbutton(ventana, text='CHOOSE 4', var=chk3_state)#TEXTO Y REVISA LA BOOLEAN CHK3

ch.grid(column=0,row=0)#UBICACION DEL BOTON 1
ch1.grid(column=0,row=1)#BOTON 2
ch2.grid(column=0,row=2)#BOTON 3
ch3.grid(column=0,row=3)# BOTON 4
      
ventana.mainloop()


PROGRAMA 19
from tkinter import*
from tkinter.ttk import*

ventana=Tk()
ventana.geometry('350x200')
ventana.title('PROGRAMACION VISUAL')
rad1 = Radiobutton(ventana, text='UNO', value=1)#B1, VALOR 1
rad2 = Radiobutton(ventana, text='DOS', value=2)#B2 VALOR 2
rad3 = Radiobutton(ventana, text='TRES', value=3)#B3 VALOR 3

rad1.grid(column=0, row=0)#UBICACION DEL BOTON 1
rad2.grid(column=1, row=0)#BOTON 2
rad3.grid(column=2, row=0)#BOTON 3

ventana.mainloop()


PROGRAMA 20
from tkinter import*
from tkinter.ttk import*

ventana=Tk()
ventana.geometry('350x200')
ventana.title('PROGRAMACION VISUAL')
lbl=Label(ventana, text='')
lbl.grid(column=0, row=6)

def clicked():

    lbl.configure(text='SELECCION DEL 1' )

rad1 = Radiobutton(ventana, text='UNO', value=1, command=clicked )
rad2 = Radiobutton(ventana, text='DOS', value=2)#B2 VALOR 2
rad3 = Radiobutton(ventana, text='TRES', value=3)#B3 VALOR 3
rad4 = Radiobutton(ventana, text='CUATRO', value=4)#BOTON 4
rad5 = Radiobutton(ventana, text='CINCO', value=5)#BOTON 5

rad1.grid(column=0, row=0)#UBICACION DEL BOTON 1
rad2.grid(column=0, row=1)#BOTON 2
rad3.grid(column=0, row=2)#BOTON 3
rad4.grid(column=0, row=3)#BOTON 4
rad5.grid(column=0, row=4)$BOTON 5

ventana.mainloop()


PROGRAMA 21
from tkinter import*
from tkinter.ttk import*

ventana=Tk()
ventana.geometry('350x200')
ventana.title('PROGRAMACION VISUAL')
selected=IntVar()

rad1 = Radiobutton(ventana, text='UNO', value=1, variable=selected)
#BOTON RADIAL 1
rad2 = Radiobutton(ventana, text='DOS', value=2 , variable=selected)
#BOTON RADIAL 2
rad3 = Radiobutton(ventana, text='TRES', value=3, variable=selected)
#BOTON RADIAL 3
def clicked():#FUNCION QUE RECIBE EL VALOR DEL BOTON SELECCIONADO
    print(selected.get())
btn= Button(ventana, text='CLICK AQUI', command=clicked)
rad1.grid(column=0, row=0)#UBICACION DE LOS BOTONES
rad2.grid(column=1, row=0)#BOTON 2
rad3.grid(column=2, row=0)#BOTON 3
btn.grid(column=3, row=0)#BOTON NO RADIAL

ventana.mainloop()


PROGRAMA 22
from tkinter import*
from tkinter import scrolledtext

ventana=Tk()
ventana.geometry('350x200')
ventana.title('PROGRAMACION VISUAL')

txt= scrolledtext.ScrolledText(ventana, width=40, height=10)
txt.grid(column=0, row=0)

ventana.mainloop()




PROGRAMA 23
from tkinter import *
from tkinter import messagebox

ventana=Tk()
ventana.geometry('350x200')
ventana.title('PROGRAMACION VISUAL')

def clicked():#FUNCION
    messagebox.showinfo('MESSAGE TITLE', 'CONTENIDO DEL MENSAJE')
btn = Button(ventana,text='CICK AQUI', command=clicked)
btn.grid(column=0,row=0)

ventana.mainloop()


PROGRAMA 24
from tkinter import *
from tkinter import messagebox#IMPORTA LIBRERIAS
from tkinter.ttk import*

ventana = Tk()#INSTANCIA TK
ventana.title("PROGRAMACION VISUAL")#TITULO A LA VENTANA
ventana.geometry('350x200')#HACE LA PANTALLA DE ESTA RESOLUCIO


txt=Entry(ventana, width=20)#PIDE UNA ENTRADA DE 20 CARACTERES
txt.grid(column=1, row=0)#EN LA COLUMNA 1 FILA 0


def clicked():#FUNCION
    messagebox.showinfo('MESSAGE TITLE', txt.get()
btn=Button(ventana, text='CLICK ', command=clicked )#SI SE PRESIONA LLAMA A LA FUNCION
btn.grid(column=2, row=0)#EN FILA 0 COLUNMA 1

ventana.mainloop()



PROGRAMA 25
from tkinter import *

ventana = Tk()
ventana.title("PROGRAMACION VISUAL")#TITULO A LA VENTANA
ventana.geometry('350x200')#HACE LA PANTALLA DE ESTA RESOLUCIO
spin =Spinbox(ventana, from_=0, to =100, width=5)
spin.grid(column=0, row=0)

ventana.mainloop()


PROGRAMA 26
from tkinter import *
from tkinter.ttk import Progressbar
from tkinter import ttk

ventana = Tk()#INSTANCIA TK
ventana.title("PROGRAMACION VISUAL")
ventana.geometry('350x200')

style=ttk.Style()
style.theme_use('default')
style.configure('black.Horizontal.TProgressbar', background='black')

bar=Progressbar(ventana, length=200, style='black.Horizontal.TProgressbar')
bar['value']=70#LLENADO DE LA BARRA
bar.grid(column=0, row=0)#UBICACION DE LA BARRA

ventana.mainloop()


PROGRAMA 27
import RPi.GPIO as GPIO#LIBRERIA PARA ACTIVACION DE PINES
import time

GPIO.setmode(GPIO.BCM)
GPIO.setup(18,GPIO.OUT)

for i in range(0,5):
    GPIO.output(18,GPIO.HIGH)
    time.sleep(1)
    GPIO.output(18,GPIO.LOW)
    time.sleep(1)#PAUSA DE 1 SEGUNDO

GPIO.cleanup()


PROGRAMA 28
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BOARD)#MODO DE LOS PINES BOARD
GPIO.setup(12,GPIO.OUT)

for i in range(0,5):
    print(i+1)
    GPIO.output(12,GPIO.HIGH)
    time.sleep(0.5)
    GPIO.output(12,GPIO.LOW)
    time.sleep(0.5)#
GPIO.cleanup()


PROGRAMA 29
import RPi.GPIO as GPIO
import time
from turtle import*
t=Turtle()
screen=t.getscreen()
setup(640,480)
GPIO.setmode(GPIO.BOARD)#MODO DE LOS PINES BOARD
GPIO.setup(12,GPIO.OUT)

for i in range(0,5):
    print(i+1)
    dot(160,'red')
    GPIO.output(12,GPIO.HIGH)
    time.sleep(0.5)#PAUSA DE 1/2 SEGUNDO
    dot(160,'white')
    GPIO.output(12,GPIO.LOW)#APAGA LED
    time.sleep(0.5)

GPIO.cleanup()




PROGRAMA 30
import RPi.GPIO as gpio
import time


gpio.setmode(gpio.BCM)
gpio.setwarnings(False)
gpio.setup(18,gpio.OUT)#CONFIGURA COMO SALIDA--ROJO
gpio.setup(23,gpio.OUT)#CONFIGURA COMO SALIDA--AMARILLO
gpio.setup(24,gpio.OUT)#CONFIGURA COMO SALIDA-- VERDE

try:
    while True:
        gpio.output(18, gpio.LOW)
        gpio.output(23, gpio.LOW)
        gpio.output(24, gpio.HIGH)
        time.sleep(3)#POR 3 SEGUNDOS

        for i in range(0,4):
            gpio.output(24, gpio.HIGH)
            time.sleep(0.5)
            gpio.output(24, gpio.LOW)
            time.sleep(0.5)#PAUSA

        gpio.output(23, gpio.HIGH)
        time.sleep(3)
        gpio.output(23, gpio.LOW)
        gpio.output(18, gpio.HIGH)#
        time.sleep(5)
        gpio.output(18, gpio.LOW)
    

except KeyboardInterrupt:
    print('INTERRUPCION')
    gpio.cleanup()


gpio.cleanup()


PROGRAMA 31

from tkinter import *
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)#DESACTIVA LOS WARNINGS
GPIO.setup(18, GPIO.OUT)#ROJO AL GPIO 18
GPIO.setup(23, GPIO.OUT)#AZUL AL 23
GPIO.setup(24, GPIO.OUT)#VERDE AL 24

pwmRed = GPIO.PWM(18, 500) #MANDA UN PWM DE 500 AL ROJO
pwmRed.start(100)#INICIA EN 100

pwmGreen = GPIO.PWM(23, 500)#MANDA UN PWM DE 500 AL VERDE
pwmGreen.start(100)#INICIA EN 100

pwmBlue = GPIO.PWM(24, 500)#MANDA UN PWM DE 500 AL AZUL
pwmBlue.start(100)#INICIA EN 100
class App:

    def __init__(self, master):#FUNCION PARA EL CONTROL DEL RBG, SE LLAMA A SI MISMA Y ES LA PPAL
        frame = Frame(master)
        frame.pack()#PAQUETE MASTER DE LA VENTANA

        Label(frame, text='ROJO').grid(row=0, column=0)#POSICION DE LAS
        Label(frame, text='VERDE').grid(row=1, column=0)#ETIQUETAS DEL RGB
        Label(frame, text='AZUL').grid(row=2, column=0)#PARA SU CONTROL

        scaleRed = Scale(frame, from_=0, to=100, orient=HORIZONTAL, command=self.updateRed)
        scaleRed.grid(row=0, column=1)#BARRA HORIZONTAL DEL ROJO DE 0 A 100, LLAMA LA FUNCION
        scaleGreen = Scale(frame, from_=0, to=100, orient=HORIZONTAL, command=self.updateGreen)
        scaleGreen.grid(row=1, column=1)#BARRA HORIZONTAL DEL VERDE DE 0 A 100, LLAMA A FUNCION
        scaleBlue = Scale(frame, from_=0, to=100, orient=HORIZONTAL, command=self.updateBlue)
        scaleBlue.grid(row=2, column=1)#BARRA HORIZONTAL DEL AZUL DE 0 A 100, LLAMA A FUNCION

    def updateRed(self, duty):#ACTUALIZA EL COLOR ROJO
        pwmRed.ChangeDutyCycle(float(duty))#Y EL PWM SE ACTUALIZA DEPENDIENDO DEL VALOR DE LA BARRA

    def updateGreen(self, duty):#ACTUALIZA EL VERDE
        pwmGreen.ChangeDutyCycle(float(duty))#PWM DEL VALOR DE LA BARRA

    def updateBlue(self, duty):#ACTUALUZA EL AZUL
        pwmBlue.ChangeDutyCycle(float(duty))#PWM VALOR DE LA BARRA

root=Tk()
root.wm_title('CONTROL RGB')#TITULO DE LA VENTANA
app = App(root)#LLAMA A LA CALSE
root.geometry("200x150+0+0")#DIMENSION DE LA VENTANA
try:
    root.mainloop()#EJECUCION CONTINUA
finally:
    print("LIMPIAR")
    GPIO.cleanup()#LIMPIA PUERTOS




PROYECTO 1: SEMAFORO

import RPi.GPIO as gpio
import time
gpio.setmode(gpio.BOARD)
#salidas
gpio.setup(12,gpio.OUT)#rojo
gpio.setup(16,gpio.OUT)#amarillo
gpio.setup(18,gpio.OUT)#verde

#ejecucion

try:
    while True:
        gpio.output(12,gpio.LOW)
        gpio.output(16,gpio.LOW)
        gpio.output(18,gpio.HIGH)
        time.sleep(5)
        for i in range(3):
            gpio.output(12,gpio.LOW)
            gpio.output(16,gpio.LOW)
            gpio.output(18,gpio.HIGH)
            time.sleep(1)
            gpio.output(12,gpio.LOW)
            gpio.output(16,gpio.LOW)
            gpio.output(18,gpio.LOW)
            time.sleep(1)
        gpio.output(12,gpio.LOW)
        gpio.output(16,gpio.HIGH)
        gpio.output(18,gpio.LOW)
        time.sleep(5)
        for i in range(3):
            gpio.output(12,gpio.LOW)
            gpio.output(16,gpio.HIGH)
            gpio.output(18,gpio.LOW)
            time.sleep(.5)
            gpio.output(12,gpio.LOW)
            gpio.output(16,gpio.LOW)
            gpio.output(18,gpio.LOW)
            time.sleep(1)
        gpio.output(12,gpio.HIGH)
        gpio.output(16,gpio.LOW)
        gpio.output(18,gpio.LOW)
        time.sleep(5)
except KeyboardInterrupt:
    gpio.cleanup()#limpia puertos
gpio.cleanup()
import RPi.GPIO as gpio
import time
gpio.setmode(gpio.BOARD)
#salidas
gpio.setup(12,gpio.OUT)#rojo
gpio.setup(16,gpio.OUT)#amarillo
gpio.setup(18,gpio.OUT)#verde

#ejecucion
try:
    while True:
        gpio.output(12,gpio.LOW)
        gpio.output(16,gpio.LOW)
        gpio.output(18,gpio.HIGH)
        time.sleep(5)
        for i in range(3):
            gpio.output(12,gpio.LOW)
            gpio.output(16,gpio.LOW)
            gpio.output(18,gpio.HIGH)
            time.sleep(1)
            gpio.output(12,gpio.LOW)
            gpio.output(16,gpio.LOW)
            gpio.output(18,gpio.LOW)
            time.sleep(1)
        gpio.output(12,gpio.LOW)
        gpio.output(16,gpio.HIGH)
        gpio.output(18,gpio.LOW)
        time.sleep(5)
        for i in range(3):
            gpio.output(12,gpio.LOW)
            gpio.output(16,gpio.HIGH)
            gpio.output(18,gpio.LOW)
            time.sleep(.5)
            gpio.output(12,gpio.LOW)
            gpio.output(16,gpio.LOW)
            gpio.output(18,gpio.LOW)
            time.sleep(1)
        gpio.output(12,gpio.HIGH)
        gpio.output(16,gpio.LOW)
        gpio.output(18,gpio.LOW)
        time.sleep(5)
except KeyboardInterrupt:
    gpio.cleanup()#limpia puertos
gpio.cleanup()



PROYECTO 2: FRENTE DE POLICIA

import RPi.GPIO as gpio#IMPORTA LIBRERIAS
import time
from turtle import*

gpio.setmode(gpio.BCM)
gpio.setwarnings(False)
gpio.setup(18,gpio.OUT)#CONFIGURA COMO SALIDA--ROJO
gpio.setup(23,gpio.OUT)#CONFIGURA COMO SALIDA--BLANCO
gpio.setup(24,gpio.OUT)#CONFIGURA COMO SALIDA--AZUL

gpio.output(23, gpio.LOW)
gpio.output(24, gpio.LOW)
gpio.output(18, gpio.LOW)

t=Turtle()
screen=t.getscreen()
setup(640,480)
screensize(500,500)
colormode(255)
bgcolor('blue')
pencolor('black')
pensize('5')
t.hideturtle()

penup()
goto(-250,150)
pendown()
goto(350,150)
goto(350,-150)
goto(-250,-150)
goto(-250,150)

penup()
goto(-100,0)
dot(300, 'red')

goto(200,0)
dot(300, 'blue')

time.sleep(2)

goto(200,0)
dot(300, 'white')

while (True):

    for i in range(0,3):
        print(i+1)
        gpio.output(18,gpio.HIGH)
        speed(0)
        goto(-100,0)
        dot(300, 'red')
        time.sleep(0.001)
        gpio.output(18, gpio.LOW)
        speed(0)
        goto(-100,0)
        dot(300, 'white')
        time.sleep(0.001)
    gpio.output(18, gpio.LOW)
    goto(-100,0)
    dot(300, 'white')

    for j in range(0,3):
        print(j+1)
        gpio.output(24,gpio.HIGH)
        speed(0)
        goto(200,0)
        dot(300, 'blue')
        time.sleep(0.001)
        gpio.output(24, gpio.LOW)
        speed(0)
        goto(200,0)
        dot(300, 'white')
        time.sleep(0.001)
    gpio.output(24, gpio.LOW)
    goto(-100,0)
    dot(300, 'white')

gpio.cleanup()

screen.exitonclick()






PROGRAMA 34

import Adafruit_DHT#LIBRERIA DEL SENSOR
sensor=Adafruit_DHT.DHT11#ESPECIFICA MODELO
gpio=17#PIN NUMERO 11: GPIO 17
while(True):

    humidity, temperature=Adafruit_DHT.read_retry(sensor,gpio)
    #HUMEDAD Y TEMPERATURA OBTENIDOS POR LECTURA

    if humidity is not None and temperature is not None:
        print('TEMP ={0:0.1f}*C Humidity={1:0.1f} %'. format(temperature,humidity))
    #SI LAS MEDICIONES NO SON CERO LAS MUESTRA CON FORMATO
    else:
    #DE LO CONTRARIO MUESTRA UN FALLO
        print('FALLO LECTURA')



PROGRAMA 35
from tkinter import *
master = Tk()
canvas_width = 200
canvas_height = 100

w = Canvas(master, width=200, height=100)

w.pack()
w.create_rectangle(50, 20, 150, 80, fill="#476042")
#CREA UN RECTANGULO EMPEZANDO EN LAS PRIMERAS 2 COORDENADAS Y TERMINANDO EN LAS SEGUNDAS

w.create_rectangle(65, 35, 135, 65, fill="yellow")#CREA RECTANGULO
w.create_line(0, 0, 50, 20, fill="#476042", width=3)
w.create_line(0, 100, 50, 80, fill="#476042", width=3)
w.create_line(150,20, 200, 0, fill="#476042", width=3)
w.create_line(150, 80, 200, 100, fill="#476042", width=3)

w.create_text(canvas_width/2 ,canvas_height/2,text="PYTHON")

mainloop()

import tkinter
from tkinter import *#IMPORTA LAS LIBRERIAS TKINTER
from tkinter import ttk
canvas_width = 300#ANCHO

canvas_height =300#ALTO
master = Tk()#CREA INSTANCIA

canvas = Canvas(master, width=canvas_width, height=canvas_height)
#HACE UNA VENTANA DE ANCHO Y ALTO DEFINIDOS PREVIAMENTE

canvas.pack()#HACE UN WIDGET CON LA VENTANA
img = PhotoImage(file="WG.png")#SELECCIONA UNA IMAGEN

canvas.create_image(20,20, anchor=NW, image=img)
#PONE EN LA UBICACION 20 20 LA IMAGEN SELECCIONADA
mainloop()





PROGRAMA 36
import tkinter
from tkinter import *
from tkinter import ttk


top = tkinter.Tk()#INSTANCIA
C = tkinter.Canvas(top, bg="green", height=250, width=300)

coord = 10, 50, 240, 210

arc = C.create_arc(coord, start=0, extent=150, fill="pink")
#DIBUJA UN ARCO DE 150° RELLENANDO LO DE ROSA

C.pack() 

top.mainloop()





PROYECTO 3: SENSOR DE HUMEDAD
import tkinter
from tkinter import *
from tkinter import ttk

while(True):

    ventana = Tk()
    ventana.title('Monitoreo de humedad.')
    img = PhotoImage(file="/home/pi/Pictures/Humedal.JPEG")
    w1= Label(ventana,image=img).pack()
    canvas= Canvas(ventana, width=320, height=340)
    canvas.pack()
    canvas.place(x=50,y=50)

    t=float(input('[Temperatura]'))
    h=float(input('[Humedad]'))

    if (t>30 or t<18) and (h>60 or h <45):
        msj=' Temperatura ELEVADA \n Temperatura: ' + str(t)+'°C' + '\n Humedad: ' + str(h) + '%'
        imgn=PhotoImage(file="/home/pi/Pictures/Pasto_s.JPEG")
        canvas.create_image(0,0,anchor=NW, image=imgn)
        canvas.create_text(0,0, anchor=NW ,text= msj,font=("Arial",14,"bold"), fill='red')
        print('Temperatura: ={0:0.1f}°C Humedad:= {1:0.1f} %'. format(temp,hume))

    elif (t>30 or t<18) and (h<=60 and h>=45):
        msj='  \n Temperatura Elevandose: ' + str(t) +'°C' + '\n Humedad: ' + str(h) + '%'
        imgn=PhotoImage(file="/home/pi/Pictures/Pasto_MV.JPEG")
        canvas.create_image(0,0,anchor=NW, image=imgn)
        canvas.create_text(0,0, anchor=NW ,text= msj,font=("Arial",14,"bold") , fill='white')
        print('Temperatura: ={0:0.1f}°C Humedad:= {1:0.1f} %'. format(t,h))

    elif (t>=18 and t<=30) and (h<=60 and h>=45):
        msj=' Temperatura Perfecta\n EXCELENTE ESTADO \n Temperatura: ' + str(t)+'°C' + '\n Humedad: ' + str(h) + '%'
        imgn=PhotoImage(file="/home/pi/Pictures/Pasto_V.JPEG")
        canvas.create_image(0,0,anchor=NW, image=imgn)
        canvas.create_text(0,0, anchor=NW ,text= msj,font=("Arial",14,"bold"), fill='white')
        print('Temperatura: ={0:0.1f}°C Humedad:= {1:0.1f} %'. format(t,h))

    elif (t>=18 and t<=30) and (h>60 or h<45):
        msj=' PELIGRO Temperatura muy elevada \n \n Temperatura: ' + str(t)+'°C' + '\n Humedad: ' + str(h) + '%'
        imgn=PhotoImage(file="/home/pi/Pictures/Pasto_MS.JPEG")
        canvas.create_image(0,0,anchor=NW, image=imgn)
        canvas.create_text(0,0, anchor=NW ,text= msj,font=("Arial",14,"bold") , fill='red')
        print('Temperatura: ={0:0.1f}°C Humedad:= {1:0.1f} %'. format(t,h))
    else:
        msj=' Esperando.'
        canvas.create_text(0,0, anchor=NW ,text= msj,font=("Arial",14,"bold"))
        print(msj)

    ventana.mainloop()



PROYECTO 4: SENSOR DE DISTANCIA

import RPi.GPIO as GPIO

import time
import tkinter
from tkinter import *
from tkinter import ttk

GPIO.setwarnings(False)

TRIG=27
ECHO=22

while (True):

    GPIO.setmode(GPIO.BCM)
    GPIO.setup(TRIG,GPIO.OUT)
    GPIO.setup(ECHO,GPIO.IN)

    GPIO.output(TRIG, False) 
    print ('Calculando...')
    time.sleep(2)
    GPIO.output(TRIG, 1)
    time.sleep(0.00001)
    GPIO.output(TRIG, 0)

    while GPIO.input(ECHO)==0:
        pulse_start = time.time()

    while GPIO.input(ECHO)==1:

        pulse_end = time.time()

    pulse_duration = pulse_end - pulse_start

    dist = pulse_duration * 17165

    print ('Distancia: ',dist,'cm')

    ventana = Tk()
    ventana.title('Alarma de Aproximacion')
   
    if dist<70:
        img = PhotoImage(file="/home/pi/Pictures/1.gif")
        msj=' Peligro'
     
    elif dist>=70 and dist<=120:
        img = PhotoImage(file="/home/pi/Pictures/2.gif")
        msj=' Sospechoso'
    elif dist>120:
        img = PhotoImage(file="/home/pi/Pictures/3.gif")
        msj=' Bajo Control'
     
    w1= Label(ventana,image=img) .pack()
    canvas= Canvas(ventana, width=320, height=90)
    canvas.pack()
    canvas.place(x=50,y=350)
    canvas.create_text(0,0, anchor=NW ,text= msj,font=("Arial",14,"bold"))
    time.sleep(0.5)
    ventana.mainloop()


    GPIO.cleanup()


CARTA A MAMI: 
from turtle import *

t=Turtle()

t.shape("turtle")

t.color('black')

screen=t.getscreen()

setup(250, 250)

screensize(400,400)

colormode(255)

hideturtle()

bgcolor(12,183,242)#APLICA COLOR A LA PANTALLA, RGB



pencolor('black')

pensize('5')

penup()#LEVANTA CURSOR

speed(10)

goto(-300,300)#SE DIRIGE A ESTA POSICION

pendown()

goto(300,300)
goto(300,-300)#DIBUJA UN CUADRO
goto(-300,-300)
goto(-300,300)

for i in range(0,2):
    for j in range(0,2):
        if i==0:
            i1=1
        else:
            i1=-1
        if j==0:
            j1=1
        else:
            j1=-1
        speed(10)   
        penup()
        goto(220*i1,250*j1)
        dot(50,255,0,128)
        goto(170*i1,200*j1)
        dot(50,255,0,128)
        goto(270*i1,200*j1)
        dot(50,255,0,128)
        goto(220*i1,150*j1)
        dot(50,255,0,128)
        speed(10)
        goto(185*i1,230*j1)
        dot(50,255,0,128)
        goto(255*i1,230*j1)
        dot(50,255,0,128)
        goto(255*i1,170*j1)
        dot(50,255,0,128)
        goto(185*i1,170*j1)
        dot(50,255,0,128)
        goto(222*i1,200*j1)
        dot(75,'purple')#CENTRO MORADO

     
for k in range(0,2):#PONE UNA FLOR EN LA PARTE SUPERIOR CENTRAL
    if k==0:
        k1=1
    else:
        k1=-1
    speed(10)#EL FOR Y LOS IF ES PARA CAMBIAR SOLO LAS UBICACIONES POR SIGNO 
    penup()
    goto(0,250*k1)
    dot(50,255,0,128)#PETALOS ROSAS
    goto(0,150*k1)
    dot(50,255,0,128)
    goto(50,200*k1)
    dot(50,255,0,128)
    goto(-50,200*k1)
    dot(50,255,0,128)
    speed(10)
    goto(35,230*k1)
    dot(50,255,0,128)
    goto(-35,230*k1)
    dot(50,255,0,128)
    goto(35,165*k1)
    dot(50,255,0,128)
    goto(-35,165*k1)
    dot(50,255,0,128)
    goto(0,200*k1)
    dot(75,'yellow')

c=t.clone()
c.penup()
c.shape('triangle')
c.color('red')
c.right(90)
c.shapesize(3.5,3,3.5)#DE DIMENSIONES 3.5,3,3.5


for k in range(0,5):#FOR PARA PLICAR 5 CORAZONES
    if k==0:
        k1=-1
    else:
        k1=1
    penup()
    c.goto(-108*k1,100)#LOS IF SON PARA CAMBIAR LA UBICACION SEGUN EL SIGNO
    c.stamp()
    goto(-130*k1,130)
    dot(50,'red')
    goto(-85*k1,130)
    dot(50,'red')
    pencolor('red')
    goto(-110*k1,60)
    pendown()
    goto(-150*k1,120)
    goto(-65*k1,120)
    goto(-110*k1,60)
mensaje='''MENSAJE DE PRUEBA'''
colores=['pink',"orange","purple","green"]


for x in range(100):
    t.pencolor(colores[x%4])
    t.penup()
    t.goto(-280,-100)
    t.pendown()
    t.write(mensaje, font=("Baskerville Old Face",30,"bold"))
    t.left(180)

screen.exitonclick()


PROYECTO 5: MENU

import RPi.GPIO as gpio
import Adafruit_DHT
import time 
from turtle import*
import Tkinter
from Tkinter import *

     
def Semaforo():
import RPi.GPIO as gpio
import time
gpio.setmode(gpio.BOARD)
#salidas
gpio.setup(12,gpio.OUT)#rojo
gpio.setup(16,gpio.OUT)#amarillo
gpio.setup(18,gpio.OUT)#verde

try:
while True:
gpio.output(12,gpio.LOW)
gpio.output(16,gpio.LOW)
gpio.output(18,gpio.HIGH)
time.sleep(5)
for i in range(3):
gpio.output(12,gpio.LOW)
gpio.output(16,gpio.LOW)
gpio.output(18,gpio.HIGH)
time.sleep(1)
gpio.output(12,gpio.LOW)
gpio.output(16,gpio.LOW)
gpio.output(18,gpio.LOW)
time.sleep(1)
gpio.output(12,gpio.LOW)
gpio.output(16,gpio.HIGH)
gpio.output(18,gpio.LOW)
time.sleep(5)
for i in range(3):
gpio.output(12,gpio.LOW)
gpio.output(16,gpio.HIGH)
gpio.output(18,gpio.LOW)
time.sleep(.5)
gpio.output(12,gpio.LOW)
gpio.output(16,gpio.LOW)
gpio.output(18,gpio.LOW)
time.sleep(1)
gpio.output(12,gpio.HIGH)
gpio.output(16,gpio.LOW)
gpio.output(18,gpio.LOW)
time.sleep(5)
except KeyboardInterrupt:
gpio.cleanup()#limpia puertos
gpio.cleanup()



def Policia():
import RPi.GPIO as gpio#IMPORTA LIBRERIAS
import time
from turtle import*
gpio.setmode(gpio.BCM)
gpio.setwarnings(False)
gpio.setup(18,gpio.OUT)#CONFIGURA COMO SALIDA--ROJO
gpio.setup(23,gpio.OUT)#CONFIGURA COMO SALIDA--BLANCO
gpio.setup(24,gpio.OUT)#CONFIGURA COMO SALIDA--AZUL

gpio.output(23, gpio.LOW)
gpio.output(24, gpio.LOW)
gpio.output(18, gpio.LOW)

t=Turtle()
screen=t.getscreen()
setup(640,480)
screensize(500,500)
colormode(255)
bgcolor('blue')
pencolor('black')
pensize('5')
t.hideturtle()

penup()
goto(-250,150)
pendown()
goto(350,150)
goto(350,-150)
goto(-250,-150)
goto(-250,150)

penup()
goto(-100,0)
dot(300, 'red')

goto(200,0)
dot(300, 'blue')

time.sleep(2)

goto(200,0)
dot(300, 'white')

while (True):
for i in range(0,3):
print(i+1)
gpio.output(18,gpio.HIGH)
speed(0)
goto(-100,0)
dot(300, 'red')
time.sleep(0.001)
gpio.output(18, gpio.LOW)
speed(0)
goto(-100,0)
dot(300, 'white')
time.sleep(0.001)
gpio.output(18, gpio.LOW)
goto(-100,0)
dot(300, 'white')

for j in range(0,3):
print(j+1)
gpio.output(24,gpio.HIGH)
speed(0)
goto(200,0)
dot(300, 'blue')
time.sleep(0.001)
gpio.output(24, gpio.LOW)
speed(0)
goto(200,0)
dot(300, 'white')
time.sleep(0.001)
gpio.output(24, gpio.LOW)
goto(-100,0)
dot(300, 'white')

gpio.cleanup()
screen.exitonclick()


def Temp():#FUNCION DE EL SENSOR DE TEMPERATURA DHT11
import RPi.GPIO as GPIO
import time
import tkinter
from tkinter import *
from tkinter import ttk

GPIO.setwarnings(False)
TRIG = 27
ECHO = 22

while (True):
GPIO.setmode(GPIO.BCM)
GPIO.setup(TRIG,GPIO.OUT)
GPIO.setup(ECHO,GPIO.IN)
GPIO.output(TRIG, False) 
print ('Calculando...')
time.sleep(2)
GPIO.output(TRIG, 1)
time.sleep(0.00001)
GPIO.output(TRIG, 0)
while GPIO.input(ECHO)==0:
pulse_start = time.time()

while GPIO.input(ECHO)==1:
pulse_end = time.time()

pulse_duration = pulse_end - pulse_start
dist = pulse_duration * 17165

print ('Distancia: ',dist,'cm')
ventana = Tk()
ventana.title('Alarma de Aproximacion')
   
if dist<70:
img = PhotoImage(file="/home/pi/Pictures/1.gif")
msj=' Peligro'
     
elif dist>=70 and dist<=120:
img = PhotoImage(file="/home/pi/Pictures/2.gif")
msj=' Sospechoso'
elif dist>120:
img = PhotoImage(file="/home/pi/Pictures/3.gif")
msj=' Bajo Control'
     
w1= Label(ventana,image=img).pack()
canvas= Canvas(ventana, width=320, height=90)
canvas.pack()
canvas.place(x=50,y=350)
canvas.create_text(0,0, anchor=NW ,text= msj,font=("Arial",14,"bold"))
time.sleep(0.5)
ventana.mainloop()
GPIO.cleanup()


def Sens():
import tkinter
from tkinter import *
from tkinter import ttk

while(True):
ventana = Tk()
ventana.title('Monitoreo de humedad.')
img = PhotoImage(file="/home/pi/Pictures/Humedal.JPEG")
w1= Label(ventana,image=img).pack()
canvas= Canvas(ventana, width=320, height=340)
canvas.pack()
canvas.place(x=50,y=50)
t=float(input('[Temperatura]'))
h=float(input('[Humedad]'))

if (t>30 or t<18) and (h>60 or h <45):
msj=' Temperatura ELEVADA \n Temperatura: ' + str(t)+'°C' + '\n Humedad: ' + str(h) + '%'
imgn=PhotoImage(file="/home/pi/Pictures/Pasto_s.JPEG")
canvas.create_image(0,0,anchor=NW, image=imgn)
canvas.create_text(0,0, anchor=NW ,text= msj,font=("Arial",14,"bold"), fill='red')
print('Temperatura: ={0:0.1f}°C Humedad:= {1:0.1f} %'. format(temp,hume))
elif (t>30 or t<18) and (h<=60 and h>=45):
msj='  \n Temperatura Elevandose: ' + str(t) +'°C' + '\n Humedad: ' + str(h) + '%'
imgn=PhotoImage(file="/home/pi/Pictures/Pasto_MV.JPEG")
canvas.create_image(0,0,anchor=NW, image=imgn)
canvas.create_text(0,0, anchor=NW ,text= msj,font=("Arial",14,"bold") , fill='white')
print('Temperatura: ={0:0.1f}°C Humedad:= {1:0.1f} %'. format(t,h))
elif (t>=18 and t<=30) and (h<=60 and h>=45):
msj=' Temperatura Perfecta\n EXCELENTE ESTADO \n Temperatura: ' + str(t)+'°C' + '\n Humedad: ' + str(h) + '%'
imgn=PhotoImage(file="/home/pi/Pictures/Pasto_V.JPEG")
canvas.create_image(0,0,anchor=NW, image=imgn)
canvas.create_text(0,0, anchor=NW ,text= msj,font=("Arial",14,"bold"), fill='white')
print('Temperatura: ={0:0.1f}°C Humedad:= {1:0.1f} %'. format(t,h))
elif (t>=18 and t<=30) and (h>60 or h<45):
msj=' PELIGRO Temperatura muy elevada \n \n Temperatura: ' + str(t)+'°C' + '\n Humedad: ' + str(h) + '%'
imgn=PhotoImage(file="/home/pi/Pictures/Pasto_MS.JPEG")
canvas.create_image(0,0,anchor=NW, image=imgn)
canvas.create_text(0,0, anchor=NW ,text= msj,font=("Arial",14,"bold") , fill='red')
print('Temperatura: ={0:0.1f}°C Humedad:= {1:0.1f} %'. format(t,h))
else:
msj=' Esperando.'
canvas.create_text(0,0, anchor=NW ,text= msj,font=("Arial",14,"bold"))
print(msj)

ventana.mainloop()

def menu(v,w,x,y,z):
    def clicked():
     
        print(selected.get())
        opc=selected.get()
        if opc==1:
         
            f1()
        elif opc==2:
         
            f2()
        elif opc==3:
            ventana.destroy()
            f3()
        elif opc==4:
            ventana.destroy()
            f4()
        elif opc==5:
            exit()


    ventana=Tk()
    ventana.geometry('350x200')
    ventana.title('Proyectos Unidad 5')
    ventana.title(‘Programacion visual’)
    lbl=Label(ventana, text='''\n
    Escoge un programa: ''')
    lbl.grid(column=0, row=0)
    selected=IntVar()

    print(v,w,x,y,z)
    op1 = Radiobutton(ventana, text='Semaforo.py', value=v, variable=selected)
    op2 = Radiobutton(ventana, text='Policia.py', value=w , variable=selected)
    op3 = Radiobutton(ventana, text='Humedal.py', value=x, variable=selected)
    op4 = Radiobutton(ventana, text='Sensor.py', value=y, variable=selected)
    salir = Radiobutton(ventana, text='Salir.', value=z, variable=selected)
     
    btn= Button(ventana, text='Correr.', command=clicked)
    op1.grid(column=0, row=2)
    op2.grid(column=0, row=3)
    op3.grid(column=0, row=4)
    op4.grid(column=0, row=5)
    salir.grid(column=0, row=6)
    btn.grid(column=0, row=7)
    ventana.mainloop()
boton(1,2,3,4,5)    








SEMAFORO.


LUCES DE PATRULLA


SENSOR DE HUMEDAD

SENSOR DISTANCIA