課題
Posted: 2016年1月01日(金) 15:44
大学からCGのプログラミング課題が出されたのですが、分からないので、協力お願いします。
C言語のOpenGLで、wingxa.hというヘッダファイルを使って、プログラミングとをしなさいと言われたのですが、もう時間が迫っています。
課題は、以下のようなものです。
まず、基となるプログラムを表記します。
int x1,y1,x2,y2,x3,y3,r=100; //半径100の円盤
gwinsize(600,400); //画面のサイズを指定
ginit(1);
gsetorg(300,100); //スクリーン内の原点座標を指定
X1=-0.5*r,y1=r*(1-sqrt(3)/4); 緑の円盤の中心
x2=0.5*r;y2=r*(1-sqrt(3)/4); 青の円盤の中心
x3=0;y3=r*(1+sqrt(3)/4); 赤の円盤の中心
gcolor(0,255,0); 色(ここではgreen)の指定
gcirc(X11,y1,r); 円盤の描画
gcolor(0,0,255); 色(ここではblue)の指定
gcirc(x2,y2,r);
gcolor(255,0,0); 色(ここではred)の指定
gcirc(x3,y3,r);
上記のプログラムで色の混色が示されていない、緑色の円と青色の円と赤色の円が三角形状に重なっているだけの図が描けるのですが、この図に手を加えて、緑の円と青の円の共通部分が水色、青の円と赤の円の共通部分が紫色、緑の円と赤の円の共通部分が黄色、緑と青と赤の円の共通部分が白色となるようにプログラムを書き換えるというプログラミング課題なのですが、どう書き換えればいいのか分かりません。C言語は数年前に授業でやったのですが、忘れてしまいました。
お手伝いして頂けたら嬉しいです。
よろしくお願いします。
因みに〆切は3週間後です。
C言語のOpenGLで、wingxa.hというヘッダファイルを使って、プログラミングとをしなさいと言われたのですが、もう時間が迫っています。
課題は、以下のようなものです。
まず、基となるプログラムを表記します。
int x1,y1,x2,y2,x3,y3,r=100; //半径100の円盤
gwinsize(600,400); //画面のサイズを指定
ginit(1);
gsetorg(300,100); //スクリーン内の原点座標を指定
X1=-0.5*r,y1=r*(1-sqrt(3)/4); 緑の円盤の中心
x2=0.5*r;y2=r*(1-sqrt(3)/4); 青の円盤の中心
x3=0;y3=r*(1+sqrt(3)/4); 赤の円盤の中心
gcolor(0,255,0); 色(ここではgreen)の指定
gcirc(X11,y1,r); 円盤の描画
gcolor(0,0,255); 色(ここではblue)の指定
gcirc(x2,y2,r);
gcolor(255,0,0); 色(ここではred)の指定
gcirc(x3,y3,r);
上記のプログラムで色の混色が示されていない、緑色の円と青色の円と赤色の円が三角形状に重なっているだけの図が描けるのですが、この図に手を加えて、緑の円と青の円の共通部分が水色、青の円と赤の円の共通部分が紫色、緑の円と赤の円の共通部分が黄色、緑と青と赤の円の共通部分が白色となるようにプログラムを書き換えるというプログラミング課題なのですが、どう書き換えればいいのか分かりません。C言語は数年前に授業でやったのですが、忘れてしまいました。
お手伝いして頂けたら嬉しいです。
よろしくお願いします。
因みに〆切は3週間後です。