zt日記

書いているのは Kazuhiro NISHIYAMA a.k.a. ZnZです。
2001|09|10|11|12|
2002|01|02|03|04|05|06|07|08|09|10|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|
2012|04|05|06|09|

この日記にはツッコミを入れられます。 ツッコミを入れたい日付をクリックすると、フォームが現れます。

xreaでtDiaryを使う方法はxrea.com で tDiary を使う方法インストールメモXREA + tDiary + Namazuをどうぞ。


2003年11月14日(Fri)

[ruby][Ruby/Tk] ke-tk.rb

TkCanvasを使ってみるテストとしてke.javaの移植をしてみた。
#!/usr/bin/env ruby
# http://www.meigaku.ac.jp/~watayan/prog/java/nanisource.html
# の「何もしない Java applet に毛のはえたやつ」をRuby/Tkに移植したもの
require 'tk'
 
c = TkCanvas.new
c.pack
 
maxx, maxy = c.width, c.height
num = (ARGV.shift || 100).to_i
interval = (ARGV.shift || 0.5).to_f
 
num.times do
  Thread.start do
    x, y = rand(maxx), rand(maxy)
    while true
      dx = ((rand * 4.0 - 2.0) * 2).to_i
      dy = ((rand * 4.0 - 2.0) * 2).to_i
      dx = 0 if x + dx < 0 || x + dx > maxx
      dy = 0 if y + dy < 0 || y + dy > maxy
      TkcLine.new(c, x, y, x+dx, y+dy)
      x += dx
      y += dy
      sleep interval
    end
  end
end
 
Tk.mainloop

copyright © 2001-2013 ZnZ
Key fingerprint = 6E14 2C9C DBD7 874D 8B3C CAA8 9B58 5538 ED7E 1B73