1 / 9

CG プログラミング論

CG プログラミング論. 平成 26 年 6 月 16 日 森田 彦. y. (x3,y3). (x4,y4). r2. (x2,y2). r1. θ2. (x1,y1). θ1. x. 基礎課題 8 - 1. void DrawGraphics(Graphics g) { ・・・ for ( int i=0;i<N_r;i++){ ・・・ for ( int j=0; j<N_theta;j++) { theta1=d_theta*j; theta2=theta1+d_theta;

janna
Download Presentation

CG プログラミング論

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CGプログラミング論 平成26年6月16日 森田 彦

  2. y (x3,y3) (x4,y4) r2 (x2,y2) r1 θ2 (x1,y1) θ1 x 基礎課題8-1 void DrawGraphics(Graphics g) { ・・・ for(int i=0;i<N_r;i++){ ・・・ for (int j=0; j<N_theta;j++) { theta1=d_theta*j; theta2=theta1+d_theta; x1=r1*Math.cos(theta1); x2=r2*Math.cos(theta1); x3= r2 *Math.cos(theta2); x4= r1 *Math.cos(theta2); y1=r1*Math.sin(theta1); y2=r2*Math.sin(theta1); y3= r2 *Math.sin(theta2) ; y4= r1 *Math.sin(theta2) ; ・・・ } ① r2 ② r1 ③ r2 ④ r1

  3. 基礎課題8-2 void DrawGraphics(Graphics g) { int x0,y0,r1,r2,d_r,N_theta,N_r,red,green,blue; ・・・ for(int i=0;i<N_r;i++){ r1=i*d_r; r2=r1+d_r; red= 255-Kido*i ; green= 255-Kido*i; blue= 255-Kido*i ; for (int j=0; j<N_theta;j++) { ・・・ } } } ① 255-Kido*i ② 255-Kido*i ③ 255-Kido*i

  4. 基礎課題8-3 void DrawGraphics(Graphics g) { int x0,y0,r1,r2,d_r,N_theta,N_r,red,green,blue; ・・・ for(int i=0;i<N_r;i++){ r1=i*d_r; r2=r1+d_r; for (int j=0; j<N_theta;j++) { red= Kido*j ; green= Kido*j ; blue= Kido*j ; ・・・ } } } ① Kido*j ② Kido*j ③ Kido*j

  5. でもOK! r2 応用課題8-A void DrawGraphics(Graphics g) { ・・・ r1=0; //描画開始時の半径r1 r2=r1+d_r-2; //描画開始時の半径r2 for(int i=0;i<N_r;i++){ r1=i*d_r; r2=r1+d_r; ・・・ for (int j=0; j<N_theta;j++) { ・・・ } d_r=d_r-2; r1= r1+d_r ; r2=r1+(d_r-2); } } ① r1+d_r

  6. 応用課題8-B void DrawGraphics(Graphics g) { ・・・ for(int i=0;i<N_r;i++){ ・・・ for (int j=0; j<N_theta;j++) { if(j<N_theta/2){ red=Kido*j; green=Kido*j; blue=Kido*j; } else { red=Kido*( N_theta-j ); green=Kido*( N_theta-j ); blue=Kido*( N_theta-j ); } ・・・ ① N_theta-j ① N_theta-j ① N_theta-j

  7. 楕円の座標 x=acosθ y=asinθ×(b/a) =bsinθ Y b Q(x,y) a θ a X

  8. 本日の学習内容 楕円のグラデーション • 提出課題 【基礎課題9-1】~【基礎課題9-4】および【応用課題9-A】、【応用課題9-B 】の6題です。

  9. 演習課題の受け取りについて • 原則として講義時間内に提出してもらいます。提出が遅れた場合は以下のように減点とします。 基礎課題 応用課題 課題内容によっては、上の基準を緩和します。その際は講義時にアナウンスします。

More Related