Relógio analógico

Publicado por Mauricio 08/09/2003

[ Hits: 9.662 ]

Homepage: http://www.mbmaciel.com

Download clock.tcl




Um relógio analógico que não usa gif

  



Esconder código-fonte

#!/bin/sh
# \
exec wish "$0" "$@"

#
# Fonte retirada do site mini.net/tcl
# Comentários Mauricio Maciel
     
    # Cria tela

grid [canvas .c -width 200 -height 200]
 set halfpi 1.570796
 set piover6 0.5235987
 set twopi 6.283185

    # Tamanho e formato do relógio

 .c create oval 2 2 198 198 -fill white -outline black
 for { set h 1 } { $h <= 12 } { incr h } {
    set angle [expr { $halfpi - $piover6 * $h }]
    set x [expr { 100 + 90 * cos($angle) }]
    set y [expr { 100 - 90 * sin($angle) }]
    .c create text $x $y -text $h -font {Helvetica -12}
 }

 proc hands {} {
    catch { .c delete withtag hands }

    # Calcular segundos desde meia-noite

    set s [expr { [clock seconds] - [clock scan 00:00:00] }]

    # Angulo do ponteiro dos segundos

    set angle [expr { $s * $::twopi / 60. }]
    set y [expr { 100 - 90 * cos($angle) }]
    set x [expr { 100 + 90 * sin($angle) }]
    .c create line 100 100 $x $y -width 1 -tags hands

    # Ponteiro do minuto

    set angle [expr { $s * $::twopi / 60. / 60. }]
    set y [expr { 100 - 85 * cos($angle) }]
    set x [expr { 100 + 85 * sin($angle) }]
    .c create line 100 100 $x $y -width 3 -capstyle projecting -tags  hands

    # Ponteiro da Hora

    set angle [expr { $s * $::twopi / 60. / 60. / 12. }]
    set y [expr { 100 - 60 * cos($angle) }]
    set x [expr { 100 + 60 * sin($angle) }]
    .c create line 100 100 $x $y -width 7 -capstyle projecting -tags hands

    after 1000 hands

 }
 hands

Scripts recomendados

Renomeando arquivos de forma padronizada

Crivo de Eratóstenes Simples em Tcl (sem Tk)

Script em Tcl para descompactar arquivos

O mundo do Polinômio

Calculadora em Tcl/Tk


  

Comentários
[1] Comentário enviado por jose_maria em 07/03/2004 - 21:33h

Caramba cara que legal. Foi a maneira mais simples de fazer uma aplicação gráfica para linux que eu já vi. Que linguagem você usou? Não ficou bem claro.
Valeu.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts