ジュリア集合を描いてみる(Ruby)
ジュリア集合(Julia set)を Ruby で描いてみました。
描画には自作の Gem 'oekaki' を使っています。
oekaki | RubyGems.org | your community gem host
GTK+でお絵かきしてみた(Ruby) - Camera Obscura
コード。
julia_set.rb
require 'oekaki' Width, Height = 600, 400 Oekaki.app width: Width, height: Height, title: "Julia set" do draw do clear red = color(0xffff, 0, 0) green = color(0, 0xffff, 0) blue = color(0, 0, 0xffff) a, jmid = 4.0 / Width, Height / 2 Width.times do |i| jmid.times do |j| x, y = a * i - 2.0, a * j catch(:jump) do 16.times do x2, y2 = x * x, y * y d = x2 + y2 break if d < 1e-10 d = d * d x, y = (1.0 / 3) * (2 * x + (x2 - y2) / d), (2.0 / 3) * y * (1 - x / d) ya = sqrt(3) / 2 drawing = proc do |x1, y1, c1, c2| if x1 * x1 + y1 * y1 < 0.0025 point(i, jmid + j, c1) point(i, jmid - j, c2) throw(:jump) end end drawing[x - 1, y, red, red] drawing[x + 0.5, y + ya, green, blue] drawing[x + 0.5, y - ya, blue, green] end end end end end end
C言語による最新アルゴリズム事典 (ソフトウェアテクノロジー)
- 作者: 奥村晴彦
- 出版社/メーカー: 技術評論社
- 発売日: 1991/03/01
- メディア: 単行本
- 購入: 20人 クリック: 396回
- この商品を含むブログ (95件) を見る