TSquare - geometria analítica
Publicado por Lucas 23/08/2006
[ Hits: 5.492 ]
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()
Programa para derivação de funções matemáticas polinomiais
ISOsync_pt-BR.py - Um Baixador Automático de ISOs de Sabayon, escrito em Python
Fazendo processos rodarem em background
Nenhum coment�rio foi encontrado.
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Realizar overclock no Miyoo Mini (plus ou normal)
Otimização de memória para máquinas modestas
Unbuntu não atualiza o firmware [RESOLVIDO] (2)
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (0)
Dúvidas sobre a originalidade de conteúdos online (10)
Erro de interface de Rede no Virt Manager dentro Debian 13 KDE (12)