Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer
 
PerlMonks  

Japh O' Lantern

by liverpole (Monsignor)
on Oct 30, 2005 at 00:25 UTC ( #503928=obfuscated: print w/ replies, xml ) Need Help??

Make sure the Tk module is installed and this should work under Unix/Linux and Windows.
($,='O9xx67O95530114X')=~y/0-9xOX/we+only JapH!/; $b='gold';sub O{@q=(pop,-pop);map{($r,$s)=(pop,-pop);@q=($r, $s,@q,-$r,$s )}@_;(0,0,@ q)}sub l{$l= shift;$c-> createText ((map$_+20 +0, @_),-text=>$ l)} sub p{( sqrt ($_[0]**2 ++$_ [1]**2),atan2 ($_ [1], $_[0 ])+$ _[2]%60*. +105) }sub c{($_[0]* cos$_[1],$_[0] *sin$_[1])}sub P{$;=shi +ft;$c ->createPolygon ((map$_*5+200 ,@_),-fill =>$;)}su +b _{( $p,$q,$r)=splice @_,0,3;$$r &&$c-> delete($$ +r);my @U;while(@j=splice @_,0, 2){@U=(@U,c + p@j, $q)}$$r=P$p,@U}@M= (O 32,1,36,0) ;@a= (O 1,1, +34,1, 35,0);@p=(O 1,1,24, 2,28,0);@_=qw; -width 400 -he +ight 400;;use Tk;$o=new MainWindow (-t +itle =>$,);$c=$o->Canvas (@_)->pack;$c-> createOval(20,20 +,380 ,380,-fill,'orange'); $B='#000000';P brown=> 3,-30,5,-35,3,-3 +7,8, -40,9,-35,4,-28;P$b,- 10,-5,- 16,-16,-4, -16;P$b,10,-5,4, +-16 ,16,-16;P$b,-4,-18, -20,-22, -14,-24;P$ b,4,-18,20,-22,1 +4, -24;P$b,-5,5,0,-5,5 ,5;P$b,-29,12,-22,12,- 16,18,-10,12,-6, 12,0,18,6,12,10,12 ,16,18,22,12,29,12,19, 27,14,27,8,21,2, 27,-2,27,-8,21,-14 ,27,-19,27;$o-> repeat(1000,sub{($s,$m,$h)=localtime;_($B,$h%12*5+$m/ 12,\$H,@p);_($B,$m,\$M,@a);_(red=>$s,\$S,@M)}); map{l$_,c p 0,-190,$_%12*5}(1..12);MainLoop
Updated:  Slight modification made (spoiler) ...
The hour hand was only moving once each hour -- it now moves every 12 minutes, to give a more accurate representation of the hour.

Comment on Japh O' Lantern
Download Code
Re: Japh O' Lantern
by zshzn (Hermit) on Oct 30, 2005 at 01:58 UTC
    Lovely. ++

    Call me clueless, but until I saw that I didn't realize how close to Halloween it is. I need to buy some candy! Thanks for your service to a poor Perl coder!

Re: Japh O' Lantern
by zentara (Archbishop) on Oct 30, 2005 at 09:48 UTC
    Update: Disregard, I'm spaced out :-)

    It's an hour early in Eastern Daylight Savings Time timezones.


    I'm not really a human, but I play one on earth. flash japh
Re: Japh O' Lantern
by Ultra (Hermit) on Nov 01, 2005 at 07:39 UTC

    Simply brilliant! ++

    Dodge This!

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: obfuscated [id://503928]
Approved by Tanktalus
Front-paged by gmax
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (5)
As of 2014-09-20 18:30 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (160 votes), past polls