2011/01/17

fillPolygon はスキャンライン法だったのか

 
以前 Graphics.fillPolygon を自力で実装しようとして5角形を越える時点で
諦めたのですが…スキャンライン法で対応できた。
 
回答が導き出されると、力技で対応したコードと比べると天と地の差がある。
 
力技は、しょせん決められた最小のパターンにしか対応できないが…
スキャンライン法なら、そのアルゴリズム単体で対応できる。
 
10年以上の前の話になりますが、三角形を塗りつぶすアルゴリズムでも
利用してたのを思い出した。
 
思い出してみたらビデオメモリ(VRAM)に直接
 
   *p = RGB( 255,0,0);
 
みたいなピクセル単位での描画しか行えなかったので、全ての描画APIを実装する
必要があったんだ。
 
今はそんなの知らなくても、どんな環境でも描画API は充実しているし、
こーいう所で労力をかけるのは生産性に繋がらないか。

0 件のコメント:

コメントを投稿