Parabola Mandala (幾何学アート)

 投稿者:yossyメール  投稿日:2009年 3月 7日(土)11時59分10秒
  !Parabola Mandala(幾何学アート)
OPTION ANGLE DEGREES
SUB circle(a,b,r)
   FOR t=0 TO 360
      PLOT LINES: a+r*COS(t),b+r*SIN(t);
   NEXT t
   PLOT LINES
END SUB
DEF f(x)=x^2-x
LET c=(2*SQR(2))
LET d=(12*SQR(2))/5
LET e=(4-c)
LET g=24/5
LET h=(SQR(2)-1)
DIM M(4,4)!図形の裏返し
MAT READ M
DATA 0, 1, 0, 0
DATA 1, 0, 0, 0
DATA 0, 0, 1, 0
DATA 0, 0, 0, 1
!Lotus Mandala(右側の曼荼羅)
SET BITMAP SIZE 800,400
SET WINDOW -6.8,6.8,-6.8,6.8
SET VIEWPORT 0.5,1.0,0,0.5
CALL circle(0,0,c)
CALL circle(d,-d,e)
CALL circle(-d,d,e)
CALL circle(d,d,e)
CALL circle(-d,-d,e)
CALL circle(0,g,e)
CALL circle(0,-g,e)
CALL circle(g,0,e)
CALL circle(-g,0,e)
DRAW nike
DRAW nike WITH ROTATE(90)
DRAW nike WITH ROTATE(180)
DRAW nike WITH ROTATE(270)
DRAW nike WITH M
DRAW nike WITH M*ROTATE(90)
DRAW nike WITH M*ROTATE(180)
DRAW nike WITH M*ROTATE(270)
DRAW pothos WITH SCALE(h)*SHIFT(d,-d)
DRAW pothos WITH SCALE(h)*ROTATE(180)*SHIFT(-d,d)
DRAW pothos WITH SCALE(h)*ROTATE(90)*SHIFT(d,d)
DRAW pothos WITH SCALE(h)*ROTATE(270)*SHIFT(-d,-d)
DRAW pothos WITH M*SCALE(h)*ROTATE(180)*SHIFT(0,g)
DRAW pothos WITH M*SCALE(h)*SHIFT(0,-g)
DRAW pothos WITH M*SCALE(h)*ROTATE(90)*SHIFT(g,0)
DRAW pothos WITH M*SCALE(h)*ROTATE(270)*SHIFT(-g,0)
!Pothos Mandala(左側の曼荼羅)
SET BITMAP SIZE 800,400
SET WINDOW -6.8,6.8,-6.8,6.8
SET VIEWPORT 0,0.5,0,0.5
CALL circle(0,0,c)
CALL circle(d,-d,e)
CALL circle(-d,d,e)
CALL circle(d,d,e)
CALL circle(-d,-d,e)
CALL circle(0,g,e)
CALL circle(0,-g,e)
CALL circle(g,0,e)
CALL circle(-g,0,e)
DRAW pothos
DRAW pothos WITH SCALE(h)*SHIFT(d,-d)
DRAW pothos WITH SCALE(h)*ROTATE(180)*SHIFT(-d,d)
DRAW pothos WITH SCALE(h)*ROTATE(90)*SHIFT(d,d)
DRAW pothos WITH SCALE(h)*ROTATE(270)*SHIFT(-d,-d)
DRAW pothos WITH M*SCALE(h)*ROTATE(180)*SHIFT(0,g)
DRAW pothos WITH M*SCALE(h)*SHIFT(0,-g)
DRAW pothos WITH M*SCALE(h)*ROTATE(90)*SHIFT(g,0)
DRAW pothos WITH M*SCALE(h)*ROTATE(270)*SHIFT(-g,0)
PICTURE nike
   FOR x=0 TO 2 STEP 0.01
      PLOT LINES: x,f(x);
   NEXT x
   FOR x=9/4 TO 1/4 STEP -0.01
      PLOT LINES: x-1/4,f(x)-13/16;
   NEXT x
END PICTURE
PICTURE pothos
   FOR y=-2 TO 1 STEP 0.01
      PLOT LINES: -f(ABS(y)),y;
   NEXT y
   FOR x=-1/4 TO -9/4 STEP -0.01
      PLOT LINES: x+1/4,SGN(x)*f(ABS(x))+13/16;
   NEXT x
   FOR x=-2 TO 2 STEP 0.01
      PLOT LINES: x,SGN(x)*f(ABS(x));
   NEXT x
END PICTURE
END

http://www15.plala.or.jp/pothos/

 

戻る