Processing/2.ちょっと発展/3.配列
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
#navi(Processing/2.ちょっと発展)
* 2-3 配列 [#f81b8a2e]
[[アクティブなスケッチ>Processing/2.ちょっと発展/1.アクテ...
float x1, y1, dx1, x2, y2, dx2;
void setup(){
size(400,400);
x1 = 0;
y1 = height / 3;
dx1 = 2;
x2 = width;
y2 = height * 2 / 3;
dx2 = -2;
}
void draw(){
background(64);
circle(x1, y1, 20);
circle(x2, y2, 20);
if( x1 < 0 || x1 > width ) dx1 = - dx1;
if( x2 < 0 || x2 > width ) dx2 = - dx2;
x1 = x1 + dx1;
x2 = x2 + dx2;
}
2個ならばまだよいが、これが10個になったら、やる気が失せて...
int n=3;
float x[] = new float[n];
float y[] = new float[n];
float dx[] = new float[n];
void setup(){
size(400,400);
for( int i=0; i<n; i++ ){
x[i] = width / n * i;
y[i] = width / (n+1) * (i+1);
dx[i] = 2;
}
}
void draw(){
background(64);
for( int i=0; i<n; i++ ){
circle(x[i], y[i], 20);
if( x[i] < 0 || x[i] > width ) dx[i] = - dx[i];
x[i] = x[i] + dx[i];
}
}
float x[] = new float[n];
でx[0], x[1], ..., x[n-1]の、n個の要素からなる配列が用意...
setup()のfor(){ }の{ }内では、x[0], x[1], ..., x[i], ....
【課題】
最後のプログラムでnの値を変えてみよう。setup()の中で、i番...
終了行:
#navi(Processing/2.ちょっと発展)
* 2-3 配列 [#f81b8a2e]
[[アクティブなスケッチ>Processing/2.ちょっと発展/1.アクテ...
float x1, y1, dx1, x2, y2, dx2;
void setup(){
size(400,400);
x1 = 0;
y1 = height / 3;
dx1 = 2;
x2 = width;
y2 = height * 2 / 3;
dx2 = -2;
}
void draw(){
background(64);
circle(x1, y1, 20);
circle(x2, y2, 20);
if( x1 < 0 || x1 > width ) dx1 = - dx1;
if( x2 < 0 || x2 > width ) dx2 = - dx2;
x1 = x1 + dx1;
x2 = x2 + dx2;
}
2個ならばまだよいが、これが10個になったら、やる気が失せて...
int n=3;
float x[] = new float[n];
float y[] = new float[n];
float dx[] = new float[n];
void setup(){
size(400,400);
for( int i=0; i<n; i++ ){
x[i] = width / n * i;
y[i] = width / (n+1) * (i+1);
dx[i] = 2;
}
}
void draw(){
background(64);
for( int i=0; i<n; i++ ){
circle(x[i], y[i], 20);
if( x[i] < 0 || x[i] > width ) dx[i] = - dx[i];
x[i] = x[i] + dx[i];
}
}
float x[] = new float[n];
でx[0], x[1], ..., x[n-1]の、n個の要素からなる配列が用意...
setup()のfor(){ }の{ }内では、x[0], x[1], ..., x[i], ....
【課題】
最後のプログラムでnの値を変えてみよう。setup()の中で、i番...
ページ名: