int a = 20;
int columns = 10;
int rows = 30;
int[] h = new int[columns];
void setup(){
size(200, 600); // size should be a * (columns, rows)
smooth();
frameRate(10);
//Draw grids
stroke(0,200,0);
for (int j = 0; j < rows; j++){
for (int i = 0; i < columns; i++){
rect(i*a,j*a,a,a);
}
}
// display();
}
void draw() {
drop();
display();
generate();
display();
}
void display() {
for (int i = 0; i < columns; i++){ // i runs 0 to columns-1 (columns)
for (int j = 0; j < h[i]; j++){ // j runs 0 to h[i]-1 ( h[i] )
fill(0);
rect((i)*a,(rows-1-j)*a,a,a);
}
for (int j = h[i]; j < rows-1; j++){ // j runs h[i] to rows -1 ( rows-h[i])
fill(255);
rect(i*a,(rows-1-j)*a,a,a);
}
}
}
void generate() {
// int next[] = new int[columns];
for (int i = 0; i < columns-1; i++){
if (h[i] - h[i+1] > 2){
h[i] = h[i]-1;
h[i+1] = h[i+1] +1;
}
}
if (h[columns-1] > 2){
h[columns-1] = h[columns-1]-1;
}
}
void drop(){
h[0] +=1;
//if (mousePressed == true){
//h[int(mouseX/a)] +=1;
// }
}
void mousePressed(){
noLoop();
save("slope2.png");
}
//void mouseReleased() {
//loop();
//}
2017年11月10日金曜日
sand5
int a = 20;
int columns = 30;
int rows = 30;
int s = 3; //critical slope
int[] h = new int[columns];
void setup(){
size(600, 600); // size should be a * (columns, rows)
smooth();
frameRate(5);
//Draw grids
stroke(0,200,0);
for (int j = 0; j < rows; j++){
for (int i = 0; i < columns; i++){
rect(i*a,j*a,a,a);
}
}
// display();
}
void draw() {
drop();
display();
generate();
display();
saveFrame();
}
void display() {
for (int i = 0; i < columns; i++){ // i runs 0 to columns-1 (columns)
for (int j = 0; j < h[i]; j++){ // j runs 0 to h[i]-1 ( h[i] )
fill(0);
rect((i)*a,(rows-j-1)*a,a,a); //rows-1-j
}
for (int j = h[i]; j < rows-1; j++){ // j runs h[i] to rows -1 ( rows-h[i])
fill(255);
rect(i*a,(rows-j-1)*a,a,a);
}
}
}
void generate() {
// int next[] = new int[columns];
for (int i = 0; i < columns-1; i++){
int d = h[i] - h[i+1];
if (d > s-1){ // edit here
h[i] = h[i] - d;
for (int j=0; j < columns-1; j++){
if ( j > i && j < i+ d +1 )
h[j] +=1; // drop cells
}
}
}
if (h[columns-1] > s-1){ // edit here
h[columns-1] = 0;
}
}
void drop(){
h[0] +=1;
//if (mousePressed == true){
//h[int(mouseX/a)] +=1;
// }
}
void mousePressed(){
noLoop();
//save("img.png");
}
//void mouseReleased() {
//loop();
//}
int columns = 30;
int rows = 30;
int s = 3; //critical slope
int[] h = new int[columns];
void setup(){
size(600, 600); // size should be a * (columns, rows)
smooth();
frameRate(5);
//Draw grids
stroke(0,200,0);
for (int j = 0; j < rows; j++){
for (int i = 0; i < columns; i++){
rect(i*a,j*a,a,a);
}
}
// display();
}
void draw() {
drop();
display();
generate();
display();
saveFrame();
}
void display() {
for (int i = 0; i < columns; i++){ // i runs 0 to columns-1 (columns)
for (int j = 0; j < h[i]; j++){ // j runs 0 to h[i]-1 ( h[i] )
fill(0);
rect((i)*a,(rows-j-1)*a,a,a); //rows-1-j
}
for (int j = h[i]; j < rows-1; j++){ // j runs h[i] to rows -1 ( rows-h[i])
fill(255);
rect(i*a,(rows-j-1)*a,a,a);
}
}
}
void generate() {
// int next[] = new int[columns];
for (int i = 0; i < columns-1; i++){
int d = h[i] - h[i+1];
if (d > s-1){ // edit here
h[i] = h[i] - d;
for (int j=0; j < columns-1; j++){
if ( j > i && j < i+ d +1 )
h[j] +=1; // drop cells
}
}
}
if (h[columns-1] > s-1){ // edit here
h[columns-1] = 0;
}
}
void drop(){
h[0] +=1;
//if (mousePressed == true){
//h[int(mouseX/a)] +=1;
// }
}
void mousePressed(){
noLoop();
//save("img.png");
}
//void mouseReleased() {
//loop();
//}
2017年11月4日土曜日
Processing for mac 復旧
No menu items appear with 3.3.6 on ...
このバグが治って,ちゃんと使えるようになっていた。
High Sierra 10.13.1 2017/10/31 のアップデートにて。
このバグが治って,ちゃんと使えるようになっていた。
High Sierra 10.13.1 2017/10/31 のアップデートにて。
登録:
投稿 (Atom)
理科課題研究(平成21年3月=2009年3月)
学習指導要領から抜粋。 https://www.mext.go.jp/component/a_menu/education/micro_detail/__icsFiles/afieldfile/2011/03/30/1304427_002.pdf https://www.mext...
-
PIV = 平面を格子に区切って(窓)、異なる時刻における粒子像の相関から速度ベクトルを決定する。相関を用いているので個々の粒子を正確にトラッキングするのとは異なる。相関手法がいろいろある模様。 PTV は個々の粒子をトラックする。 専用のシステムは高価だが、とりあえず画像がとれ...
-
0. Processing をインストールする。 Windows と mac では、普通にクリックしていけばインストールできる。 Linux では、一旦ファイルを解凍してからスクリプトを走らせるとインストールできる。 1. The Nature of Code のサイ...