タグ

ブックマーク / www2.starcat.ne.jp/~fussy (3)

  • 多角形の塗りつぶし (1)ソリッド・スキャン・コンバージョン

    多角形の塗りつぶし (1)ソリッド・スキャン・コンバージョン この章からはまた図形描画に関するアルゴリズムへ戻り、多角形の塗りつぶしについて紹介します。「塗りつぶし」といっても以前紹介したペイント・ルーチンではなくて、「中身の詰まった多角形を描く」アルゴリズムであるソリッド・スキャン・コンバージョンを使います。 1)ソリッド・スキャン・コンバージョンのアルゴリズム ソリッド・スキャン・コンバージョン(Solid Scan Conversion)のアルゴリズムは、図形の輪郭とスキャン・ライン(走査線 ; 画面の横1ライン)の交点を求め、求めた各点の間を水平線分で結んでいく処理を各スキャン・ラインについて繰り返すことで実現できます(図1)。あるスキャンラインに対して交点がいくつも存在する場合は、x座標の小さいものから順に2点ずつペアを作り、その2点間を結んでいきます。このため、図形の内側にでき

  • ペイントルーチン (1)シードフィルアルゴリズム

    ペイントルーチン (1)シードフィルアルゴリズム ここでは、シード・フィル(seed fill)による閉領域の塗り潰し、いわゆるペイントルーチンについて取り上げたいと思います。 シードフィルアルゴリズムは、以下のような流れになります。

    aql
    aql 2008/06/18
    スキャンラインシードフィルアルゴリズム
  • アルゴリズムの紹介

    ここでは、プログラムなどでよく使用されるアルゴリズムについて紹介したいと思います。 こんなことやって意味あるのかどうか正直言って迷いました。プログラマはたいてい知っているような内容だし見る人もいないんじゃないかと思いましたが、これからプログラミングを始めてみようという方にとっては参考になるかもしれないし、何よりも自分にとって頭の中を整理できたりするので、これから定期的にやっていこうかと考えてます。 ところで、紹介する内容はほとんど過去に出版された書物関係から抜粋しています。一応下の方に参考文献として挙げておきますので興味を持たれた方は書店などで探してみてはいかがでしょうか? ということで、まずはライン・ルーチン(画面に直線を描画する)についての紹介です。

  • 1