week04
先畫出9條直線
void setup()
{
size(500,500);
}
void draw(){
background(253,236,180);
line(50,50,50,450);
line(100,50,100,450);
line(150,50,150,450);
line(200,50,200,450);
line(250,50,250,450);
line(300,50,300,450);
line(350,50,350,450);
line(400,50,400,450);
}
用迴圈畫出線,可以畫出9條直線後,試著寫出橫的
void setup()
{
size(500,500);
}
void draw(){
background(253,236,180);
for(int i=0;i<9;i++){
line(50+50*i,50, 50+50*i,450);
}
for(int i=0;i<9;i++){
line(50,50+50*i,450,50+50*i);
}
}
老師的迴圈寫法
void setup()
{
size(500,500);
}
void draw(){
background(253,236,180);
for(int i=0;i<9;i++){
line(50+50*i,50, 50+50*i,450);
line(50,50+50*i,450,50+50*i);
}
}
//陣列、for迴圈:五子棋(棋盤)
//int go[][]:C語言
//int [][]go =new int [][];Java/Processing
int [][]go={
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0}
};
void setup()
{
size(500,500);
}
void draw(){
background(253,236,180);
for(int i=0;i<9;i++){
line(50+50*i,50, 50+50*i,450);
line(50,50+50*i,450,50+50*i);
}
}
int [][]c={
{1,0,0},
{1,0,0},
{1,0,0}
};
void setup(){
size(300,300);
}
void draw(){
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
if(c[i][j]==0) fill(128);
else fill(255,0,0);
rect(j*100,i*100,100,100);
}
}
}
J是x方向,I是y方向
//陣列、for迴圈:五子棋(棋盤)
//int go[][]:C語言
//int [][]go =new int [][];Java/Processing
int [][]go={
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{1,1,0,0,0,0,0,0,0}
};
void setup()
{
size(500,500);
}
void draw(){
background(253,236,180);
for(int i=0;i<9;i++){
line(50+50*i,50, 50+50*i,450);
line(50,50+50*i,450,50+50*i);
}
for(int i=0;i<9;i++){
for(int j=0;j<9;j++){
if(go[i][j]==1){
int x=50+50*j,y=50+50*i;
fill(255);ellipse(x,y,40,40);
}
}
}
}
點十字會出現白棋,會有點不精準是因為他的判斷會無條件捨去,可以把-50改-25會比較精準
//陣列、for迴圈:五子棋(棋盤)
//int go[][]:C語言
//int [][]go =new int [][];Java/Processing
int [][]go={
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{1,1,0,0,0,0,0,0,0}
};
void setup()
{
size(500,500);
}
void draw(){
background(253,236,180);
for(int i=0;i<9;i++){
line(50+50*i,50, 50+50*i,450);
line(50,50+50*i,450,50+50*i);
}
for(int i=0;i<9;i++){
for(int j=0;j<9;j++){
if(go[i][j]==1){
int x=50+50*j,y=50+50*i;
fill(255);ellipse(x,y,40,40);
}
}
}
}
void mousePressed()
{
int j=(mouseX-50)/50;
int i=(mouseY-50)/50;
go[i][j]=1;
}
這是精準的版本
//陣列、for迴圈:五子棋(棋盤)
//int go[][]:C語言
//int [][]go =new int [][];Java/Processing
int [][]go={
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{1,1,0,0,0,0,0,0,0}
};
void setup()
{
size(500,500);
}
void draw(){
background(253,236,180);
for(int i=0;i<9;i++){
line(50+50*i,50, 50+50*i,450);
line(50,50+50*i,450,50+50*i);
}
for(int i=0;i<9;i++){
for(int j=0;j<9;j++){
if(go[i][j]==1){
int x=50+50*j,y=50+50*i;
fill(255);ellipse(x,y,40,40);
}
}
}
}
void mousePressed()
{
int j=(mouseX-25)/50;
int i=(mouseY-25)/50;
go[i][j]=1;
}
最後做出可以點出白棋跟黑棋的棋盤遊戲
//陣列、for迴圈:五子棋(棋盤)
//int go[][]:C語言
//int [][]go =new int [][];Java/Processing
int [][]go={
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0}
};
void setup()
{
size(500,500);
}
void draw(){
background(253,236,180);
for(int i=0;i<9;i++){
line(50+50*i,50, 50+50*i,450);
line(50,50+50*i,450,50+50*i);
}
for(int i=0;i<9;i++){
for(int j=0;j<9;j++){
if(go[i][j]==1){
int x=50+50*j,y=50+50*i;
fill(255);ellipse(x,y,40,40);
}else if(go[i][j]==2){
int x=50+50*j,y=50+50*i;
fill(0);ellipse(x,y,40,40);
}
}
}
}
void mousePressed()
{
int j=(mouseX-25)/50;
int i=(mouseY-25)/50;
if(mouseButton==LEFT) go[i][j]=1;
if(mouseButton==RIGHT) go[i][j]=2;
if(mouseButton==CENTER) go[i][j]=0;
}
void setup(){
size(500,500);
}
void draw(){
for(float a=0;a<360;a++){
float x=250+250*cos(radians(a));
float y=250+250*sin(radians(a));
ellipse(x,y,4,4);
}
}
void setup(){
size(500,500);
}
void draw(){
background(128);
for(float a=0;a<360;a++){
float x=250+250*cos(radians(a));
float y=250+250*sin(radians(a));
ellipse(x,y,mouseY,mouseX);
}
}
畫出不同顏色的圓
void setup(){
size(500,500);
}
void draw(){
background(255);
noFill();
stroke(mouseX,mouseY,255);
for(float a=0;a<360;a+=1){
float x=250+mouseX*cos(radians(a));
float y=250+mouseY*sin(radians(a));
ellipse(x,y,mouseY,mouseX);
}
}
沒有留言:
張貼留言