2008/09/03
「hrkt0115311の、教えて習うRuby教室。」Vol.77 ~黒字のキャンバスに線と円を描いてみるの巻~
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 〜 Ruby始めました 〜 「hrkt0115311の、教えて習うRuby教室。」Vol.77 ━━━━━━━━━━━黒字のキャンバスに線と円を描いてみるの巻 おはようございます。hrkt0115311です。毎回メルマガを読んでいただきありがとう ございます! LDRでRSSを登録して下さっている方もありがとうございます。 バックナンバーをご覧下さっている方にも感謝します。励みになります! http://reader.livedoor.com/about/http://archive.mag2.com/0000267290/rss10.xml 先日は線をたくさん描いてみましたが、今日はその続きですー。 それでは本日のメルマガ始めます。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ○目次 ・ 黒字のキャンバスに線と円を描いてみる(出力結果) ・ 黒字のキャンバスに線と円を描いてみる(解説) ・ 黒字のキャンバスに線と円を描いてみる(スクリプト) ・ お知らせ ・ 編集後記 ━━━━━━━━━━━━━━━━━━━━━━━━━━━免責事項 ソースコードは、発行者が実際に動かし、構文チェックなどもしていますが ご利用になられて万一損害が生じた場合、保証することができません。 ご利用になられる際は、ご自身でご確認になられた上で、お試し下さい。 ━━━━━━━━━━━━━━━━━━━━Rubyの導入方法について OSは何をお使いですか? LinuxでもMacOSでもWindowsでも、Rubyの 公式ページでインストール方法が説明されています。 ○Ruby Install Guide http://preview.tinyurl.com/4ghc3o ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ○黒字のキャンバスに線と円を描いてみる(出力結果) 0回 http://f.hatena.ne.jp/hrkt0115311/20080902235551 35回 http://f.hatena.ne.jp/hrkt0115311/20080902235553 800回 http://f.hatena.ne.jp/hrkt0115311/20080902235552 回数はそれぞれ円の数です。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ○黒字のキャンバスに線と円を描いてみる(解説) フラクタルな模様に興味があるのですが、アルゴリズム難しくて>< SDLに慣れようということで、今回は三角形と円を表示してみました。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ○黒字のキャンバスに線と円を描いてみる(スクリプト) =begin 1. 背景に奇妙な三角形が幾つかあって、その上に繰り返し処理で円を ランダムに描くスクリプトです。 2. 逆引きRuby/SDL を参照させていただきました。お礼申し上げます。 http://mono.kmc.gr.jp/proj/rubysdl/?GyakubikiRubySDL#l2 3. http://www.kmc.gr.jp/~ohai/rubysdl_doc.html も参照させていただきました。 重ねてお礼申し上げます。 =end require 'sdl' SDL.init( SDL::INIT_VIDEO ) screen = SDL.setVideoMode( 455, 455, 16, SDL::SWSURFACE ) screen.drawLine( 5, 5, 450, 5, [ 255, 255, 255 ] ) screen.drawLine( 5, 5, 450/2.0, 450, [ 255, 255, 255 ] ) screen.drawLine( 450/2.0, 450, 450, 5, [ 255, 255, 255 ] ) screen.drawLine( 5, 5, 450/2.0, 450/2.0, [ 255, 255, 255 ] ) screen.drawLine( 450/2.0, 450/2.0, 450, 5, [ 255, 255, 255 ] ) screen.drawLine( 450/2.0, 450, 450/2, 450/2.0, [ 255, 255, 255 ] ) screen.drawLine( 450, 450, 5, 450, [ 255, 255, 255 ] ) screen.drawLine( 450, 450, 450/2.0, 5, [ 255, 255, 255 ] ) screen.drawLine( 450/2.0, 5, 5, 450, [ 255, 255, 255 ] ) screen.drawLine( 450, 450, 450/2.0, 450/2.0, [ 255, 255, 255 ] ) screen.drawLine( 450/2.0, 450/2.0, 5, 450, [ 255, 255, 255 ] ) screen.drawLine( 450/2.0, 5, 450/2, 450/2.0, [ 255, 255, 255 ] ) 800.times do x = rand(450)+1 y = rand(450)+1 r = rand(450/2)+1 r = rand(256) g = rand(256) b = rand(256) screen.draw_circle(x,y,r,[ r, g, b ]) end screen.updateRect( 0, 0, 0, 0 ) loop do while event = SDL::Event2.poll case event when SDL::Event2::Quit, SDL::Event2::KeyDown exit end end end ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ○お知らせ ほぼ日刊で続けてきたメルマガに、日々おつきあい下さり本当にありがとう ございます。「簡単なテキスト処理ならできそうかも」と、もし、一人でも そう感じて下さった方がいたら、あるいは、お使いのOSにあわせて Rubyの言語処理系を導入して下さった方や、あるいは他の言語の学習を スタートされた方がいらしたとしたら、とても嬉しいです。 日刊で続けてきたこのメルマガですが、階段の踊り場にさしかかったというか 成長率が悪くなったように感じています。Rubyの世界もプログラミングの世界も 豊かで広いのに、私が行えることは「似たようなことを繰り返しているだけ」 だと思い、反省しています。 これはインプットとアウトプットのアンバランスが原因だと思います。 今、学んでみたいことがあります。学びつつ、このメルマガにその成果を 反映させられたらいいなと考えています。 日刊だったメルマガをしばらくの間、週刊にしようと思います。 勝手なこと申しまして恐縮ですが、もしよろしければ、引き続きこのメルマガに おつきあいいただけたら嬉しいです。 本日までおつきあいいただきありがとうございます。 今後ともどうぞよろしくお願いいたします。 ■ 編集後記 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 「hrkt0115311の、教えて習うRuby教室。」を最後までお読みいただき ありがとうございます。いかがでしたか? Rubyをexeファイルにする仕組みを利用して、Rubyの処理系がないところでも 気軽にプログラムが動くようにしてみました。メールで知人に「こんなのできたよ」と 見せようとしたところ、「コンピュータウィルスの疑いが」みたいに、むちゃくちゃ 警告が出てしまいましたorz そうですよね、実行ファイル添付しちゃだめですよね。 失敗しました>< 説明不足・分かりにくい点・私の理解の誤りなど、お気づきになられた点があれば、 お気軽にご意見・ご感想をお寄せ下さい。 enjoy.ruby@gmail.com にて、 メルマガ読者の皆さまからのフィードバックをお待ちしています。 それではまた、次号でお会いしましょう。 ■ いただいた反響について ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 「こんな仕組み作れないかな」とか「説明不足で分からないよ」といった ご指摘をお寄せいただけると嬉しいです。みなさまの声で、メルマガを 育てていただければ嬉しいです。また、メルマガで、頂戴したメールの 一部を紹介させていただく可能性があります。差し支えがある場合は 「発行者のhtkt0115311に読んで欲しいだけで、メルマガには掲載しないで」 とお書きいただければ幸いです。 ■ 転送や再配布について ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ blogなどでご紹介いただく際は、 http://www.mag2.com/m/0000267290.html などを並記していただき、私の書いた文章であることが分かる形に していただけると幸いです。またメルマガの転送については、転送者さんと 転送したメルマガを受け取られた方が迷惑でない範囲であれば歓迎します。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ メールマガジン「hrkt0115311の、教えて習うRuby教室。」 ○発行者 htkt0115311 ○発行システム 『まぐまぐ!』 http://www.mag2.com/ ○配信中止はこちら http://www.mag2.com/m/0000267290.html ○公式サイト http://enjoy-programming.g.hatena.ne.jp/hrkt0115311/ ○日記 http://d.hatena.ne.jp/hrkt0115311/ ○Twitter https://twitter.com/hrkt0115311 ○Wassr http://wassr.jp/user/hrkt0115311 ○お問い合わせ enjoy.ruby@gmail.com ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
-
2009/08/27 「hrkt0115311の、迷えるプログラミング教室」Vol.91 ~htmlSQLで「みそ録」作ったよ! の巻~
-
2009/07/19 「hrkt0115311の、迷えるプログラミング教室」Vol.90 ~URL指定すると、はてな記法を返すスクリプトの巻~
-
2009/07/13 「hrkt0115311の、迷えるプログラミング教室」Vol.89 ~XML処理するTwitterまとめスクリプト改編の巻~
-
2009/07/13 「hrkt0115311の、迷えるプログラミング教室」Vol.89 ~XML処理するTwitterまとめスクリプト改編の巻~
-
2009/04/25 「hrkt0115311の、迷えるプログラミング教室」Vol.88 ~HTMLの部分置き換えスクリプトの巻~


