






|
製作(F) dotgraph

ランダムドット・ステレオグラム
R.D.S.Program list (N88BASIC)
100 INPUT "Select 1-5";I:IF I>5
oR I<1 THEN 100
110 oN I GoSUB 340,350,360,370,380
120 SCREEN 3:CoNSoLE ,,0
130 XMAX=10!:XMIN=-10!:DX=(XMAX-XMIN)/6
140 YMAX=10!:YMIN=-10!
150 WINDoW (-10!,-10!)-(10!,10!)
160 VIEW (80,0)-(560,399)
170 CLS 3
180 ZMAX=1!:ZMIN=-1!:Z0=DX/(ZMAX-ZMIN)/4
190 FoR I=1 To 3000
200 Y0=RND*(YMAX-YMIN)+YMIN
210 ZZ=FNZ(XMIN+DX/2,Y0)
220 IF ZZ>ZMAX THEN ZZ=ZMAX
230 IF ZZ<ZMIN THEN ZZ=ZMIN
240 XX=XMIN+DX+Z0*ZZ
250 X0=(XX-XMIN)*RND+XMIN
260 PSET(X0,Y0)
270 ZZ=FNZ(X0+DX/2,Y0)
280 IF ZZ>ZMAX THEN ZZ=ZMAX
290 IF ZZ<ZMIN THEN ZZ=ZMIN
300 X0=X0+DX+Z0*ZZ
310 IF X0<XMAX GoTo 260
320 NEXT I
330 END
340 DEF FNZ(X,Y)=5-SQR(X*X+Y*Y):RETURN
350 DEF FNZ(X,Y)=-((SQR(X*X+Y*Y)>5) AND
(SQR(X*X+Y*Y)<8))*Y/8:RETURN
360 DEF FNZ(X,Y)=-((ABS(Y+X)<2) oR (ABS(Y-X)<2))*X/10:RETURN
370 DEF FNZ(X,Y)=CoS(X)*CoS(Y/2):RETURN
380 DEF FNZ(X,Y)=(((Y/2+5) MoD 2)+((X/2+5)
MoD 2))/3:RETURN
<Random dot stereogram>
* 240,300 : 立体近似計算
* FNZ(X,Y) : z=f(x,y),-10<x,y<10
* zの範囲 : -1~1
* 260のPSETをCIRCLE,LINE-B等に,PAINTで色付など試して下さい。この時
To 3000の数値を減らして下さい。
* 340以降の関数を参考に新しく設定して下さい。
* 数字の[0]は[0]で英字の[O]は[o]で記入してあります。
* RDS-Program例,CGSTEREOGRAM(1992)小学館発行より。 |
No.185 steps NAKAHARA

−6−

Copyright (C) Nakahara Design office. All
Rights Reserved.
|