十進BASIC 第3掲示板

十進BASIC第3掲示板

十進BASICプログラミングについての質問や研究成果の公開にご利用ください。
メッセージ入力枠は右下をドラッグして拡大できます。 画像,URLは省略可能です。
編集/削除キーを入力しなくてもエラーにはなりませんが,何か適当な半角英数字4~8文字を指定してください。
特に,長文投稿の場合,プレビューで最後の行を確認しても,実際には途中で切れてしまうことがあるので,投稿後の確認が必要です。

シミュラクラ現象 - しばっち

2024/11/17 (Sun) 08:08:05

https://ja.wikipedia.org/wiki/シミュラクラ現象
https://ja.wikipedia.org/wiki/パレイドリア

下記プログラムでは大きな丸(円・楕円)の中に丸(円・楕円)を3つ描いただけのものです(サンプル画像)

もし、これが人の顔のように見えたのならシミュラクラ現象(パレイドリア現象)による錯覚が起きた
といえるのではないでしょうか。

どんな時に錯覚(シミュラクラ現象、パレイドリア現象)が起きるのか検証してみるのも
おもしろいかもしれません。



SET WINDOW -.1,1.1,-.1,1.1
LOCATE VALUE NOWAIT(1) ,RANGE -.5 TO .5,AT 0:MOVEX1
LOCATE VALUE NOWAIT(2) ,RANGE -.5 TO .5,AT 0:MOVEY1
LOCATE VALUE NOWAIT(3) ,RANGE .1 TO 1,AT .45:SCALEX1
LOCATE VALUE NOWAIT(4) ,RANGE .1 TO 1,AT .57:SCALEY1
LOCATE VALUE NOWAIT(5) ,RANGE 3 TO 120,AT 3:N1
LOCATE VALUE NOWAIT(6) ,RANGE 0 TO 360,AT 0:ANG1

LOCATE VALUE NOWAIT(7) ,RANGE 0 TO .5,AT .21:MOVEX2
LOCATE VALUE NOWAIT(8) ,RANGE -.5 TO .5,AT 0:MOVEY2
LOCATE VALUE NOWAIT(9) ,RANGE .1 TO .5,AT .11:SCALEX2
LOCATE VALUE NOWAIT(10) ,RANGE .1 TO .5,AT .1:SCALEY2
LOCATE VALUE NOWAIT(11) ,RANGE 3 TO 120,AT 3:N2
LOCATE VALUE NOWAIT(12) ,RANGE 0 TO 360,AT 0:ANG2

LOCATE VALUE NOWAIT(13) ,RANGE -.5 TO .5,AT 0:MOVEX3
LOCATE VALUE NOWAIT(14) ,RANGE -.5 TO .5,AT 0:MOVEY3
LOCATE VALUE NOWAIT(15) ,RANGE .1 TO .5,AT .18:SCALEX3
LOCATE VALUE NOWAIT(16) ,RANGE .1 TO .5,AT .1:SCALEY3
LOCATE VALUE NOWAIT(17) ,RANGE 3 TO 120,AT 3:N3
LOCATE VALUE NOWAIT(18) ,RANGE 0 TO 360,AT 0:ANG3
DO
LOCATE VALUE NOWAIT(1):MOVEX1
LOCATE VALUE NOWAIT(2):MOVEY1
LOCATE VALUE NOWAIT(3):SCALEX1
LOCATE VALUE NOWAIT(4):SCALEY1
LOCATE VALUE NOWAIT(5):N1
LOCATE VALUE NOWAIT(6):ANG1
LET R1=INT(360/INT(N1))

LOCATE VALUE NOWAIT(7):MOVEX2
LOCATE VALUE NOWAIT(8):MOVEY2
LOCATE VALUE NOWAIT(9):SCALEX2
LOCATE VALUE NOWAIT(10):SCALEY2
LOCATE VALUE NOWAIT(11):N2
LOCATE VALUE NOWAIT(12):ANG2
LET R2=INT(360/INT(N2))

LOCATE VALUE NOWAIT(13):MOVEX3
LOCATE VALUE NOWAIT(14):MOVEY3
LOCATE VALUE NOWAIT(15):SCALEX3
LOCATE VALUE NOWAIT(16):SCALEY3
LOCATE VALUE NOWAIT(17):N3
LOCATE VALUE NOWAIT(18):ANG3
LET R3=INT(360/INT(N3))

DRAW POLY(R1) WITH SCALE(SCALEX1,SCALEY1)*ROTATE(ANG1)*SHIFT(.5+MOVEX1,.5+MOVEY1)
DRAW POLY(R2) WITH SCALE(SCALEX2,SCALEY2)*ROTATE(ANG2)*SHIFT(.5-MOVEX2,.7+MOVEY2)
DRAW POLY(R2) WITH SCALE(SCALEX2,SCALEY2)*ROTATE(ANG2)*SHIFT(.5+MOVEX2,.7+MOVEY2)
DRAW POLY(R3) WITH SCALE(SCALEX3,SCALEY3)*ROTATE(ANG3)*SHIFT(.5+MOVEX3,.2+MOVEY3)
SET DRAW MODE EXPLICIT
WAIT DELAY .2
SET DRAW MODE HIDDEN
CLEAR
LOOP
END

EXTERNAL PICTURE POLY(N)
OPTION ANGLE DEGREES
FOR T=0 TO 360+N STEP 360/N
PLOT LINES: COS(T),SIN(T);
NEXT T
PLOT LINES
END PICTURE

名前
件名
メッセージ
画像
メールアドレス
URL
編集/削除キー (半角英数字のみで4~8文字)
プレビューする (投稿前に、内容をプレビューして確認できます)

Copyright © 1999- FC2, inc All Rights Reserved.