ただのホビープログラマ。Processingで思いつくままにショートコーディング。日々の出来事とか読んだ本の感想などの自分用のライフログはblueskyの方に移りました。こっちはProcessing中心で。

首都近郊
Joined January 2010
これまで #Processing で作ってきたものをまとめたサイトが1,100ページになった!約半年で100ページ増えた。 The site I've been making my short programs by #Processing has reached 1,100 pages! scrapbox.io/hisadan/
2
2
21
1,996
//#つぶやきProcessing float r,t,i,k=TAU;void setup(){size(800,800);}void draw(){background(-1);noFill();translate(400,400);for(i=0;i<6;i++){rotate(PI/3);beginShape();for(r=0;r<k;r+=.01)vertex(99*(1-2*sin(t%k)*cos(r))*cos(r),99*(1-cos(t%k)*sin(r*t%k))*sin(r));endShape();}t+=.01;}
1
5
25
689
k=TAUって酷いコードだけど、こうしないと無課金Xの文字数制限にあと1文字入らなかったので…。
57
//#つぶやきProcessing float a,r,t,i; void setup(){size(800,800);} void draw(){background(0);stroke(-1);noFill();translate(400,400);for(i=0;i<4;i++){rotate(PI/2);beginShape();for(r=0;r<TAU;r+=.01){a=50*(cos(r*t)-5*cos(r)*cos(t));vertex(a*cos(r),a*sin(r));}endShape(2);t+=.01;}}
5
13
486
//#Processing int n=20,i; float a[]=new float[n*2],r,k,t=9; void setup(){ size(800,800);rectMode(CENTER);} void draw(){ background(0);stroke(-1);noFill(); if((t+=.01)>5){ t=0;r=r>16?4:r+4; for(i=0;i<n*2;i++)a[i]=random(99); } translate(400,400); for(k=0;k<r;k++){ //cont.
2
9
39
896
//cont. rotate(TAU/r); for(i=0;i<n;i++){ rect(0,a[i],a[i+n]/2,a[i+n]/2,128*(1-cos(t*2))); a[i]+=.5-noise(a[i]/99,a[i+n]/99,t); a[i+n]+=.5-noise(t,a[i+n]/99,a[i]/99); }}}
1
1
84
久しぶりにPCとラジオとカメラを持ってお散歩コーディング。一昨日東京都美術館で見た東京展の企画「女子美とコンピュータ・アート」で70年代のCGの試みが展示されていたんだけど、斎部洋子さんの乱数で円の位置と半径を決めて手描き(!)したアートを見て、面白かったのでアレンジしてみた。面白いね。
1
1
119
#つぶやきProcessing float z,t,i,j,e=800;void setup(){size(800,800,P3D);colorMode(3);}void draw(){background(0);camera(e,e,e/4,0,0,-e,0,0,-1);for(i=0;i<e;i++)for(j=0;j<e;j++){z=9*noise(i/99,j/99,t/300);stroke(256-(z*20+t)%256,255,255);if(z>5|z%2<.05)point(i,j,z>5?z*20-99:0);}t++;}
1
7
35
955
新緑から紅葉。四季の移り変わり。
85
//#Processing int n=999,i,j,t; float a[]=new float[n*2],d,x,y,p,q,u,v,f=1,w=1; void setup(){ size(800,800);noStroke();background(0); for(i=0;i<n*2;)a[i++]=random(800);} void draw(){ w*=1.0005; if(t++>300){t=0;f*=-1;} fill(0,9);square(-1,-1,802);fill(-1); for(i=0;i<n;i++){ //cont.
1
2
5
234
//cont. x=y=0; for(j=0;j<n;j++){if(i!=j){ d=dist(a[i],a[i+n],a[j],a[j+n]); u=(a[j]-a[i])/d;v=(a[j+n]-a[i+n])/d; if(d<15){p=c(u);q=c(v);x-=f==1?q:p;y-=f==1?p:q; }else if(d<99*w){x+=c(u/d);y+=c(v/d);}}} circle(a[i]+=x,a[i+n]+=y,2);}} float c(float e){return constrain(e,-1,1);}
75
不正アクセス騒ぎで止まっていたGyazoが復活したので、scrapboxの画像がちゃんと表示されるようになった。でも、ごく古い画像のリンクが一部切れちゃってる…。
235
あれ?画像がアップロードできないと思ったら、Gyazo、止まってるのか…。
305
//#Processing int i,j,n=400,a[][]=new int[n][n],b[][]=new int[n][n],s; void setup(){ size(800,800); for(i=0;i<n;i++)for(j=0;j<n;j++)a[i][j]=(int)random(1.03); } void draw(){ noStroke(); for(i=0;i<n;i++)for(j=0;j<n;j++)b[i][j]=a[i][j]; for(i=1;i<n-1;i++)for(j=1;j<n-1;j++){ //cont.
2
5
41
1,722
//cont. s=b[i][j-1]+b[i][j+1]+b[i-1][j]+b[i+1][j] +(b[i-1][j-1]+b[i+1][j-1]+b[i-1][j+1]+b[i+1][j+1])/2; a[i][j]=s<2||s>5?0:1; } for(i=0;i<n;i++)for(j=0;j<n;j++){ fill(a[i][j]==b[i][j]?0:-1); square(i*800/n,j*800/n,800/n); } }
2
74
//#Processing float t,k=2; void setup(){ size(600,600,P3D); } void draw(){ background(-1); camera(200,200,200,0,0,0,0,0,-1); lights(); rotate(t); a(0,99); if((t+=.01)>1.5){ t=0; k++; } } void a(float x,float d){ if(d>40/t){ push(); translate(0,x); for(int i=0;i<k*2;i++){ //cont.
1
6
24
847
//cont. rotateZ(PI/k); box(99,99,d); a(d*sin(t),d/2); } pop(); } }
1
91
更に小改造。歯車っぽいものが回るからということではないけれど、明日はまどマギ「ワルプルギスの廻天」4回目見に行くんだ。
107
//#Processing float t,k=2; void setup(){ size(600,600,P3D); } void draw(){ background(-1); camera(200,200,200,0,0,0,0,0,-1); lights(); a(0,99); if((t+=.01)>1.5){ t=0; k++; } } void a(float x,float d){ if(d>40/t){ push(); translate(0,x); for(int i=0;i<k*2;i++){ //cont.
1
3
11
303
//cont. rotateZ(PI/k+t/d); box(99); a(d*sin(t),d/2); } pop(); } }
1
68
さっきのを小アレンジ。
31