top of page

紫陽花

“がくあじさい ”を描くプログラム を描くプログラム
<ソースリト >
10 SET WINDOW -250,250,-250,250
20 SET AREA COLOR 25
30 PLOT AREA:-250,250;-250,-250;250,-250;250,250
40 DRAW ajisai
50 DRAW ajisai WITH ROTATE(130)*SHIFT(150,-150)
60 DRAW ajisai WITH ROTATE(45)*SHIFT(-150,160)
70 DRAW ajisai WITH ROTATE(120)*SHIFT(150,160)
80 DRAW ajisai WITH ROTATE(60)*SHIFT(-150,-160)
90 END
100 EXTERNAL PICTURE ajisai
110 OPTION ANGLE DEGREES
120 OPTION BASE 0
130 !葉っぱ上部分
140 PICTURE happa0
150 SET AREA COLOR 10
160 DIM x(32),y(32),s(32)
170 LET qx=170
180 LET qy=60*4
190 FOR i=0 TO 32
200 LET s(i)=i/32
210 LET x(i)=qx*s(i)
220 LET y(i)=qy*s(i)*(1-s(i))^1.15
230 IF MOD(i,2)=1 THEN LET y(i)=y(i)+3
240 MAT PLOT AREA:x,y
250 NEXT i
260 !葉脈
270 SET LINE COLOR 23
280 PLOT LINES:0,0;170,0
290 PLOT LINES:20,0;40,40
300 PLOT LINES:40,0;70,50
310 PLOT LINES:60,0;90,50
320 PLOT LINES:80,0;104,44
330 PLOT LINES:100,0;120,38
340 PLOT LINES:120,0;135,27
350 PLOT LINES:140,0;150,12
360 END PICTURE
370 !葉っぱ下部分
380 PICTURE happa1
390 DRAW happa0 WITH SCALE(1,-1)
400 END PICTURE
410 !葉っぱ上部分と下部分をくっつける
420 PICTURE happa
430 DRAW happa0
440 DRAW happa1
450 END PICTURE
460 DRAW happa WITH SCALE(0.65)
470 DRAW happa WITH SCALE(0.65)*ROTATE(150)
480 !白の装飾花(1つ)
490 PICTURE sousyokuka
500 DIM fa(360),fb(360)
510 FOR t=0 TO 360
520 LET fa(t)=COS(t)*ABS(7.7*SIN(2*t)+SIN(6*t)+.5*SIN(10*t))
530 LET fb(t)=SIN(t)*ABS(7.7*SIN(2*t)+SIN(6*t)+.5*SIN(10*t))
540 NEXT t
550 SET AREA COLOR 0
560 MAT PLOT AREA:fa,fb
570 SET AREA COLOR 14
580 DRAW disk
590 END PICTURE
600 !白の装飾花を円形に並べる
610 DRAW sousyokuka WITH SCALE(3.2)*ROTATE(-30)*SHIFT(0,58)
620 DRAW sousyokuka WITH SCALE(3.2)*ROTATE(35)*SHIFT(42,42)
630 DRAW sousyokuka WITH SCALE(3.2)*ROTATE(-10)*SHIFT(58,0)
640 DRAW sousyokuka WITH SCALE(3.2)*ROTATE(15)*SHIFT(42,-42)
650 DRAW sousyokuka WITH SCALE(3.2)*ROTATE(-20)*SHIFT(0,-58)
660 DRAW sousyokuka WITH SCALE(3.2)*SHIFT(-42,-42)
670 DRAW sousyokuka WITH SCALE(3.2)*ROTATE(-15)*SHIFT(-58,0)
680 DRAW sousyokuka WITH SCALE(3.2)*ROTATE(25)*SHIFT(-42,42)
690 SET AREA COLOR 18
700 !両性花(1つ)
710 PICTURE ryouseika1
720 DRAW disk WITH SCALE(1.5)*SHIFT(5,0)
730 DRAW disk WITH SCALE(1.5)*SHIFT(-5,0)
740 DRAW disk WITH SCALE(1.5)*SHIFT(0,5)
750 DRAW disk WITH SCALE(1.5)*SHIFT(-2.5,-5)
760 DRAW disk WITH SCALE(1.5)*SHIFT(2.5,-5)
770 END PICTURE
780 !両性花を円形に並べる
790 PICTURE ajisai1
800 DRAW ryouseika1
810 FOR j=-20 TO 20 STEP 40
820 DRAW ryouseika1 WITH SHIFT(0,j)
830 NEXT j
840 FOR i=-10 TO 10 STEP 20
850 FOR j=-30 TO 30 STEP 20
860 DRAW ryouseika1 WITH SHIFT(i,j)
870 NEXT j
880 NEXT i
890 FOR i=-20 TO 20 STEP 40
900 FOR j=-20 TO 20 STEP 20
910 DRAW ryouseika1 WITH SHIFT(i,j)
920 NEXT j
930 NEXT i
940 DRAW ryouseika1 WITH SHIFT(30,0)
950 DRAW ryouseika1 WITH SHIFT(-30,0)
960 END PICTURE
970 !紫の両性花(1つ)
980 PICTURE ryouseika2
990 DIM fc(360),fd(360)
1000 FOR t=0 TO 360
1010 LET fc(t)=COS(t)*ABS(7*SIN(2*t)+SIN(6*t)+.5*SIN(10*t))
1020 LET fd(t)=SIN(t)*ABS(7*SIN(2*t)+SIN(6*t)+.5*SIN(10*t))
1030 NEXT t
1040 SET AREA COLOR 14
1050 MAT PLOT AREA :fc,fd
1060 !めしべ
1070 SET AREA COLOR 26
1080 DRAW disk
1090 END PICTURE
1100 !紫の両性花を円形に並べる
1110 PICTURE ajisai2
1120 FOR j=-30 TO 30 STEP 10
1130 DRAW ryouseika2 WITH SCALE(0.8)*SHIFT(0,j)
1140 NEXT j
1150 FOR i=-30 TO -10 STEP 10
1160 FOR j=0 TO i+40 STEP 10
1170 DRAW ryouseika2 WITH SCALE(0.8)*SHIFT(i,j)
1180 NEXT j
1190 NEXT i
1200 FOR i=10 TO 30 STEP 10
1210 FOR j=0 TO 40-i STEP 10
1220 DRAW ryouseika2 WITH SCALE(0.8)*SHIFT(i,j)
1230 NEXT j
1240 NEXT i
1250 FOR i=-30 TO -10 STEP 10
1260 FOR j=0 TO -(i+40) STEP -10
1270 DRAW ryouseika2 WITH SCALE(0.8)*SHIFT(i,j)
1280 NEXT j
1290 NEXT i
1300 FOR i=10 TO 30 STEP 10
1310 FOR j=0 TO -(40-i) STEP -10
1320 DRAW ryouseika2 WITH SCALE(0.8)*SHIFT(i,j)
1330 NEXT j
1340 NEXT i
1350 END PICTURE
1360 !あじさい
1370 PICTURE ajisai0
1380 DRAW ajisai1
1390 DRAW ajisai2
1400 END PICTURE
1410 DRAW ajisai0 WITH SCALE(1.2)
1420 END PICTURE

ソースリスト

担当 2年 ちはるちゃん

© 2023 by Name of Site. Proudly created with Wix.com

bottom of page