万華鏡 ひでき 2007/12/22 19:15:43 ├!ご参考に。 SECOND 2007/12/23 02:54:41
Re: 万華鏡 |
返事を書く ノートメニュー |
SECOND <jjqdmekgpt> 2007/12/23 02:54:41 | |
!ご参考に。
!簡易万華鏡 !----- OPTION ARITHMETIC NATIVE DIM mlx(4,4),mly(4,4),px(8),py(8) MAT READ mlx DATA -1, 0,0,0 DATA 0, 1,0,0 DATA 0, 0,1,0 DATA 0, 0,0,1 MAT READ mly DATA 1, 0,0,0 DATA 0,-1,0,0 DATA 0, 0,1,0 DATA 0, 0,0,1 MAT READ px DATA 0.20, 0.50, 0.80, 0.65, 0.50, 0.35, 0.20, 0.50 MAT READ py DATA 0.11, 0.11, 0.11, 0.38, 0.65, 0.38, 0.11, 0.11 SET WINDOW -2, 3, -2, 3 PRINT "右クリックで、停止。" LET s=1 DO SET DRAW mode hidden CLEAR LET s=MOD(s,6)+1 DRAW D3(4) SET DRAW mode explicit MOUSE POLL x,y,left,right WAIT DELAY 0.1 LOOP UNTIL 0<right !------ ミラー3分岐、再帰描画。 PICTURE D3(k) IF 0<k THEN DRAW D3(k-1) WITH mly ! 下 DRAW D3(k-1) WITH mlx*ROTATE(-PI/3) ! 左上 DRAW D3(k-1) WITH SHIFT(-1,0)*mlx*ROTATE(PI/3)*SHIFT(1,0) ! 右上 DRAW Set01 ELSE DRAW Set01 END IF END PICTURE !------ 中心の三角図1枚 PICTURE Set01 PLOT LINES: 0,0; 1,0 ;0.5,SQR(3)/2 ;0,0 SET AREA COLOR 2 DRAW disk WITH SCALE(0.1)*SHIFT(px(s),py(s)) ! 飾りを置く。 SET AREA COLOR 3 DRAW disk WITH SCALE(0.1)*SHIFT(px(s+1),py(s+1)) ! 飾りを置く。 SET AREA COLOR 4 DRAW disk WITH SCALE(0.1)*SHIFT(px(s+2),py(s+2)) ! 飾りを置く。 END PICTURE END |
│└x軸,y軸に関する対称移動は,それぞれ,SC... 白石 和夫 2007/12/23 10:36:54 │ └気が付きませんでした、直します。 SECOND 2007/12/23 17:13:48 ├!ご参考に。こちらが簡単になります。 SECOND 2007/12/23 17:16:58 │└ポイントは、再帰呼び出しにあるのですね。 ひでき 2007/12/24 19:56:12 │ ├飾る前に、3重書きの不具合がありました。 SECOND 2007/12/24 21:10:09 │ ├!少し飾ったものです。(修2) SECOND 2007/12/24 23:45:32 (修正2回) │ └厳密の計算ではありませんが、また、対称変... 山中和義 2007/12/25 11:18:13 └!フラクタル描画で、3重書きの弊害を解消し... SECOND 2007/12/24 21:02:15 ├!こちらが見やすい。動きを細かくした。 SECOND 2007/12/25 04:00:25 │└シェルピンスキーの三角形ですね。 山中和義 2007/12/25 11:08:08 │ ├日増しに訪問者が、減っていくようで寂しい... SECOND 2007/12/25 19:09:12 │ └腰を折ってすみません。六角形の方を紹介し... SECOND 2007/12/26 03:06:45 │ └!簡易万華鏡(ランダム)※FOR文による6角... 山中和義 2007/12/26 11:26:29 └!シルピンスキーのガスケットと並べて動かし... SECOND 2007/12/26 05:27:23 (修正2回) └「中を抜いたもの」を、シルピンスキーのガ... SECOND 2007/12/26 09:35:33