新しく発言する  EXIT  インデックスへ
万華鏡

  万華鏡 ひでき 2007/12/22 19:15:43 
  !ご参考に。 SECOND 2007/12/23 02:54:41 
  │└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 

Re: ポイントは、再帰呼び出しにあるのですね。  返事を書く  ノートメニュー
山中和義 <drdlxujciw> 2007/12/25 11:18:13
厳密の計算ではありませんが、また、対称変換(鏡像変換)をもじって

飾りの厚み(半径)は無視。 従って、はみ出ますが、、、



!簡易万華鏡(ランダム)

OPTION ARITHMETIC NATIVE

SET WINDOW 0,1, -0.1,0.9

LET N=3 !飾りの数
DIM px(N),py(N) !(親集合での)飾りの位置

PRINT "右クリックで、停止。"

DO

!親の三角形△を二分した三角形凵i元の三角形の左半分)を考えて、ひとつを逆さに重ねて長方形をつくる。
!この長方形内の点をランダムに選ぶ。
!その点が、三角形剴烽ネら、そのまま採用する。
!そうでなければ(外部なら)、元の三角形△の右半分になるように座標変換する。
FOR i=1 TO N
LET x=RND*0.5 !長方形内の点 x=[0,0.5)、y=[0,SQR(3)/2)
LET y=RND*SQR(3)/2
IF -x*SQR(3)+y>0 THEN !外部なら ※左側の斜辺 直線y=SQR(3)*x
LET y=-y !x軸対称
LET x=x+1/2 !平行移動
LET y=y+SQR(3)/2
END IF !ヒット率(三角形△の内部になる確率)が100%になる
LET px(i)=x !採用
LET py(i)=y
NEXT i


SET DRAW mode hidden
CLEAR
DRAW D3(3)
SET DRAW mode explicit

MOUSE POLL x,y,left,right
WAIT DELAY 0.1
LOOP UNTIL 0<right


!------ ミラー縮小4分岐、再帰描画。
PICTURE D3(k)
IF 0<k THEN
DRAW D3(k-1) WITH SCALE(1/2,1/2)*SHIFT(1/4,SQR(3)/4) ! 上
DRAW D3(k-1) WITH SCALE(1/2,-1/2)*SHIFT(1/4,SQR(3)/4) ! 中
DRAW D3(k-1) WITH SCALE(1/2,1/2)*ROTATE(-PI*2/3)*SHIFT(1/4,SQR(3)/4) ! 左
DRAW D3(k-1) WITH SCALE(1/2,1/2)*ROTATE(PI*2/3)*SHIFT(1,0) ! 右
ELSE
DRAW Set01
END IF
END PICTURE

!------ 親集合の三角図1枚
PICTURE Set01
PLOT LINES: 0,0; 1,0; 1/2,SQR(3)/2; 0,0 !鏡の縁

FOR i=1 TO N
SET AREA COLOR i+1
DRAW disk WITH SCALE(0.1)*SHIFT(px(i),py(i)) !飾り
NEXT i
END PICTURE


END

  !フラクタル描画で、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 

 インデックスへ  EXIT
新規発言を反映させるにはブラウザの更新ボタンを押してください。