基礎コンピュータグラフィックス論

CGプログラミング論
平成27年6月10日
森田 彦
基礎課題7-1
void DrawGraphics(Graphics g) {
・・・
for (int i=0;i<Num;i++) {
y=y0+i*h; //描画する四角形のy座標
for(int j=0; j<Num; j++) {
x=x0+j*w; //描画する四角形のx座標
① i ;
red = Kido*
Kido*j
//描画色の赤色輝度
green=
Kido*
Kido*j
① i ;
//描画色の緑色輝度
blue = Kido*
Kido*j
//描画色の青色輝度
① i ;
g.setColor(new Color(red, green, blue));
g.fillRect(x,y,w,h);
}
}
}
基礎課題7-1
void DrawGraphics(Graphics g) {
・・・
for (int i=0;i<Num;i++) {
y=y0+i*h; //描画する四角形のy座標
//描画する四角形のy座標
y=y0+i*h;
for(int
j=0; j<Num;
j++) {
red
=Kido*i;
//描画色の赤色輝度
x=x0+j*w;
//描画する四角形のx座標
green
=Kido*i;
//描画色の緑色輝度
red=Kido*i;
=Kido*j; //描画色の青色輝度
//描画色の赤色輝度
blue
green j=0;
=Kido*j;
for(int
j<Num;//描画色の緑色輝度
j++) {
blue =Kido*j;
//描画色の青色輝度
x=x0+j*w;
//描画する四角形のx座標
g.setColor(new Color(red,
Color(red, green,
green, blue));
blue));
g.setColor(new
g.fillRect(x,y,w,h);
g.fillRect(x,y,w,h);
}}
こちら(jループの上)に移動した方が効率的。
}
}
基礎課題7-2
red=Kido*(
?
)
j≧Num/2 で
jが増える毎にKidoずつ減るようにする。
red=Kido*( a-j )
j=Num/2の時に (a-j)=Num/2
となるためには、 a=?
a=Num
基礎課題7-2
void DrawGraphics(Graphics g) {
・・・
for(int j=0; j<Num; j++) {
x=x0+j*w; //描画する四角形のx座標
if(j<Num/2) { //左端から中央までの輝度設定
red =Kido*j;
//描画色の赤色輝度
green =Kido*j; //描画色の緑色輝度
blue =Kido*j;
//描画色の青色輝度
}
else {
//中央から右端までの輝度設定
(Num-j)
①
red =Kido* (Num-j)
;
//描画色の赤色輝度
①
green =Kido* (Num-j)
(Num-j)
; //描画色の緑色輝度
(Num-j)
blue =Kido* (Num-j)
;
①
//描画色の青色輝度
}
g.setColor(new Color(red, green, blue));
・・・
基礎課題7-3
void DrawGraphics(Graphics g) {
・・・
if(i<Num/2) {
red =Kido*i;
//描画色の赤色輝度
green =Kido*i; //描画色の緑色輝度
blue =Kido*i; //描画色の青色輝度
}
else {
red =Kido*(Num-i);
//描画色の赤色輝度
green =Kido*(Num-i); //描画色の緑色輝度
blue =Kido*(Num-i); //描画色の青色輝度
}
for(int j=0; j<Num; j++) { //列方向(横方向)の繰り返し
・・・
}
・・・
応用課題7-A
void DrawGraphics(Graphics g) {
・・・
for (int i=0;i<Num;i++) {
y=y0+i*h; //描画する四角形のy座標
for(int j=0; j<Num; j++) {
・・・
y+j*2
①
yp[0]= y+j*2
;
yp[1]= yp[0]+h
;
yp[0]+h
②
yp[1]+2
yp[2]= yp[1]+2
;
③
yp[3]= yp[2]-h
;
yp[2]-h
④
・・・
}
}
}
0
y+j*2+h
y+j*2+h+2
y+j*2+h+2-h
2
h
3
1
w
2
本日の学習内容 円のグラデーション

提出課題
【基礎課題8-1】~【基礎課題8-3】および【応
用課題8-A】、【応用課題8-B 】の5題です。
演習課題の受け取りについて

原則として講義時間内に提出してもらいます。提出
が遅れた場合は以下のように減点とします。
基礎課題 応用課題
講義時間内
終了後1時間以内
100%
90%
100%
100%
1時間超~当日中
70%
100%
翌日の17:00まで
0%
100%
それ以上の遅れ
0%
0%
課題内容によっては、上の基準を緩和します。その際は講義
時にアナウンスします。