TSquare - geometria analítica
Publicado por Lucas 23/08/2006
[ Hits: 5.412 ]
Homepage: http://lucasnogueira.wordpress.com
Com apenas as coordenadas cartesianas dos pontos de um quadrado ou retângulo, ele lhe da a área e o perímetro do polígono.
#!/usr/bin/python #TSquare por lucas nogueira - luksnogueira@gmail.com - http://lucasnogueira.cjb.net #Calcula a area e perimetro apenas com as coordenadas cartesianas from Tkinter import * from math import * class app: def __init__(self,toplevel): #frame 01 self.frm=Frame(toplevel) self.frm.pack() #draw's canvas self.canvas=Canvas(toplevel,width=200, height=200,bg='white') self.canvas.pack() #frame 02 self.frm2=Frame(toplevel) self.frm2.pack() #frame 03 self.frm3=Frame(toplevel) self.frm3.pack() #frame 04 self.frm4=Frame(toplevel) self.frm4.pack() #frame 05 self.frm5=Frame(toplevel) self.frm5.pack() #frame 06 (buttons) self.frm6=Frame(toplevel) self.frm6.pack() #frame 7 self.frm7=Frame(toplevel) self.frm7.pack() #borda do canvas altura=200 self.canvas.create_rectangle((0,altura-0),(200,altura-200)) #text da frame 01 Label(self.frm,text='TSQUARE 0.6').pack() Label(self.frm,text='Indique as coordenadas cartesianas dos 4 pontos do quadrilatero.').pack() Label(self.frm,text='Definicoes dos pontos: (canvas=200cm^2)').pack() Label(self.frm,text='A* D*').pack() Label(self.frm,text='B* C*').pack() #coordenadas a(entry) Label(self.frm2,text='Coord. Ponto A (x,y) cm').pack(side=LEFT) self.a1=Entry(self.frm2) self.a2=Entry(self.frm2) self.a1.pack(side=LEFT) self.a2.pack(side=LEFT) #coordenadas b Label(self.frm3,text=' Coord. Ponto B (x,y) cm').pack(side=LEFT) self.b1=Entry(self.frm3) self.b2=Entry(self.frm3) self.b1.pack(side=LEFT) self.b2.pack(side=LEFT) #coordenadas b Label(self.frm4,text=' Coord. Ponto C (x,y) cm').pack(side=LEFT) self.c1=Entry(self.frm4) self.c2=Entry(self.frm4) self.c1.pack(side=LEFT) self.c2.pack(side=LEFT) #coordenadas b Label(self.frm5,text=' Coord. Ponto D (x,y) cm').pack(side=LEFT) self.d1=Entry(self.frm5) self.d2=Entry(self.frm5) self.d1.pack(side=LEFT) self.d2.pack(side=LEFT) #button draw self.bt=Button(self.frm6,text='desenhar') self.bt.bind('<Button-1>',self.draw) self.bt.pack(side=LEFT) #button clear self.cl=Button(self.frm6,text='limpar vars') self.cl.bind('<Button-1>',self.clr) self.cl.pack(side=LEFT) #label result self.res=Label(self.frm7,text='') self.res.pack() def clr(self,lucas): self.area,self.p=0,0 self.res['text']='Area = %i cm^2 | Perimetro = %i cm' %(self.area,self.p) self.res.pack() def pixalize(self,cm): cm=28*cm return cm def draw(self,event): altura=200 ax=int(self.a1.get()) #PA ay=int(self.a2.get()) #PA bx=int(self.b1.get()) #PB by=int(self.b2.get()) #PB cx=int(self.c1.get()) #PC cy=int(self.c2.get()) #PC dx=int(self.d1.get()) #PD dy=int(self.d2.get()) #PD lx=cx - ax ly=by - ay #lado y self.area=lx*ly self.p=(2*lx)+(2*ly) int(self.area) int(self.p) self.res['text']='Area = %i cm^2 | Perimetro = %i cm' %(self.area,self.p) self.res.pack() self.pixalize(cx) self.pixalize(bx) self.pixalize(by) self.pixalize(cy) self.canvas.create_rectangle(bx,altura-by,cx,altura-cy,fill='gray') root=Tk() app(root) root.mainloop()
Script para fazer o Scroll Lock funcionar no Linux
SnakeSQL - Crie consultas SQL facilmente
Nenhum coment�rio foi encontrado.
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Aplicativo simples para gravar tela
Quebra de linha na data e hora no Linux Mint
Firefox não abre em usuário não administradores (2)
Ubuntu com problemas no áudio (1)
Sempre que vou baixar algum pacote acontece o erro dpkg (8)
tentando instalar em um notebook antigo o Linux LegacyOS_2023... [RESO... (8)