3.2 領域の塗りつぶし

目次のページ; 前のページ; 次のページ

 線図を主体とした作図の難点は、閉じた平面領域の内部を色や紋様、場合によっては任意のビットマップで埋めることです。全体を一色で塗り潰すのと、隙間を空けた模様で埋めるのとでは、作図の技法が少し違います。下絵と色の合成をするのと、下絵に無関係に上から油絵のように色をかぶせるなど、コンピュータグラフィックス上の技法が種々あるのですが、このVB_Graphicsでは単純な塗り潰しの例題だけに限定しました。

 VBの基本作図メソッドでは、矩形と円の二つの図形だけについて、塗り潰しによる作図ができます。矩形はLine文で作図しますが、座標軸に平行な辺を持つ矩形を、対角線位置の2点を指定して描かせます。どちらも、外形線と塗り潰しの色とを独立に選ぶことができます。VBのCircleメソッドを使った塗り潰しの例題は、FILEの Samplesサブメニューの中の 10.FillCircleを試して下さい。例図はここには示してありません。

 一般的な多角形を作図して、内部を塗り潰す命令は、N88-Basic, Quick BasicではPAINT文が利用できましたが、VBには同じ機能の命令がありませんので、Windows APIを利用しなければなりません。下の例図は、FILEの Samplesサブメニューの中の 15.Double Torusを示したものです。塗り潰しの色はLINE/FillColor/Yellowの順でサブサブメニューを指定し、OPTIONSでVar3を選んで、視点を変えて表示させた図です。塗り潰しの技法を応用すると、簡単に3Dグラフィックスを描くことができます。原理は、立体図形を多面体で近似的に構成しておいて、面の投影図形で得られる閉じた多角形を、指定した色で塗り潰します。視点から遠いところから描きはじめ、視点に近い側の順に上描きして行くと、隠れ線処理ができて、立体図形が作図できます。

 立体図形の投影図を描くためには、中心投影の原理を理解して応用しなければなりません。この説明は、ここでは省きますが、考え方はカメラを使って立体図形の写真を撮り、それを平面図形として作画領域に貼付けます。被写体に相当する立体図形は、三次元の世界座標の原点付近に位置する様にし、仮想のカメラは、その原点から或距離離れ、視野の中心で世界座標の原点を捉えるように式を整理すると扱い易くなります。この解説の詳細は参考文献[6]にあります。

図4. 例題(15.Double Torus)の作図画面、塗り潰しの技法で3Dグラフィックスを描いた例図


次のページ