Sha256: 1a759c9e9618cabc133300b1661e319393ae8dee4f837118af8cd221565399e5
Contents?: true
Size: 916 Bytes
Versions: 4
Compression:
Stored size: 916 Bytes
Contents
# Drawing code stolen from here: # http://www.rubyquiz.com/quiz104.html $:.unshift File.expand_path(File.dirname(__FILE__) + "/../../lib") $:.unshift File.expand_path(File.dirname(__FILE__) + "/../../ext") require 'ray' class Ray::Turtle def hilbert(s, n, k) return if n < 1 left k * 90 hilbert(s, n - 1, -k) forward s right k * 90 hilbert(s, n - 1, k) forward s hilbert(s, n - 1, k) right k * 90 forward s hilbert(s, n - 1, -k) left k * 90 end end Ray::Game.new("Turtle") do register do add_hook :quit, method(:exit!) end scene :hilbert do img = Ray::Image.new window.size img.turtle do pen_up left 90 backward 185 right 90 forward 185 left 90 pen_down hilbert(10, 5, 1) end @sprite = sprite img render do |win| win.draw @sprite end end push_scene :hilbert end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
ray-0.2.1 | samples/turtle/hilbert.rb |
ray-0.2.0 | samples/turtle/hilbert.rb |
ray-0.1.1 | samples/turtle/hilbert.rb |
ray-0.1.0 | samples/turtle/hilbert.rb |