おもしろメディア学 第58話 CGでは三角形も円も同じです。(授業紹介:CG制作の基礎)
2014年12月10日 (水) 投稿者: メディアコンテンツコース
算数の授業などで三角形を描くには、定規を使います。円を描くにはコンパスを使います。描きたい図形によって、道具を変えています。一方、コンピュータを利用して、直線を描いたり、三角形を描いたり、円を描いたりすることは、イラストを描くようなソフトウエアには標準的な機能として用意されています。みなさんは、この機能を使えば、円も三角形も簡単に描くことができます。
ところが、実はコンピュータの中で計算する手順は、三角形、正方形などと円とは全く同じ考えで描くことができます。同じとはいったいどういうことでしょうか?計算する手順をアルゴリズムといいますが、この手順が同じということです。
このプログラムで大切なところは、3つです。1つ目はfor文です。0から360の繰り返しと、10ずつプラスしている文です。2つ目はx2,y2を計算している文です。これは円の(x,y)座標を計算している文です。円の計算は次の図を見ていただくとわかります。赤い丸の座標(x、y)はずの中にある式でそれぞれ求めることができます。cos,sin を利用して、ある角度tの座標を求めることができます。3つ目は、line(x1,y1,x2,y2)です。これは、(x1,y1)から(x2,y2)の2点を直線で結ぶ命令です。
プログラムによって作図した結果は、円のように見えますが、実は、tを10度ずつ変更しているので36角形を描いたといえます。この説明が理解できると、tの値を変えれば、いろいろな正多角形を描くことができることが分かります。学生がこの円を描くプログラムをもとに、正方形を描きました。このとき変更した部分はfor文の10を90にしただけです。これによって、正方形を描くことができました。
この例からわかるように、繰り返しのfor文において増分の値を変更するだけで、さまざまな多角形を描くことができます。つまり、描く手順はおなじでもいろいろな多角形を描くことができるということです。次の図は、別の文を一か所変更して描いた例です。同じ計算手順でも少し変えるだけで全く違った図形を描くこともできますね。
このprocessingを利用したCG教育は、2年生の前期に行っています。1年生の基礎演習でも「プログラミングの基礎」というテーマで利用しています。2年生の前期では「ビジュアルコンピューティングの数理入門(2015年度からは「CGの数理入門」)でもprocessingを利用してCGのさまざまな考え方を学びます。
キーワード: コンピュータグラフィックス、円、多角形、直線描画
参考文献
1. 近藤邦雄,伊藤彰教,三上浩司,渡辺大地, Example Based Programmingに基づくCG制作の入門教育,日本図学会図学研究,第45巻, 第3号,pp.3-10,2011.9
2. 近藤邦雄、菊池司、CG制作の基礎 講義ページ
メディア学部 近藤邦雄
「授業紹介」カテゴリの記事
- トップレベルの論文を読み込む「CG技術特論」(大学院授業紹介)(2019.03.13)
- 大学院授業:プロシージャルアニメーション特論の紹介(2019.03.08)
- 専門演習「空間インタラクティブコンテンツ」2018後期(3)(2019.02.22)
- タンジブルインタラクションデザイン最終発表(2019.02.13)
- 専門演習「空間インタラクティブコンテンツ」2018後期(2)(2019.02.12)
「おもしろメディア学」カテゴリの記事
- 【研究紹介】お城を数値で作り上げる!:日本城郭のプロシージャルモデリング(2019.01.22)
- 【研究紹介】プロジェクションマッピングはエンタメだけじゃない!プロジェクションマッピングによる動作支援(2019.01.15)
- 高大連携企画・映像制作ワークショップを開催しました(2019.01.14)
- 【再掲】世にも恐ろしい本当にあった話...(からぁ~の,エール!)(2019.01.09)
- 【研究紹介】”匂い”で季節感を感じさせることはできるか?(2019.01.06)