Pular para o conteúdo

Relógio analógico

Um relógio analógico que não usa gif
Mauricio mbmaciel
Hits: 10.053 Categoria: Tcl/Tk Subcategoria: Miscelânea
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Um relógio analógico que não usa gif
Download clock.tcl Enviar nova versão

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

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

Script lixeira em Tcl

Renomeando arquivos de forma padronizada

tkFind

Visualizador de imagem

#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

Entre na sua conta para comentar.