不等式f(x,y)>0の領域がつくる模様
平面は、各関数やそのnの値を変更することで可能です。
単色ですが平面の起伏によって、おもしろい模様が描けます。
また、等高線で色分けするのも良いかと思います。
!不等式f(x,y)>0の領域がつくる模様
!関数の定義 f(x,y)=0
LET n=0.25
DEF g(x,y)=COS(PI*y)-n/COS(PI*x) !n=[-1,1]
!LET n=0.2
!DEF g(x,y)=x*y/n-(x^2+y^2)/(COS(2*PI*x)+COS(2*PI*y)) !n=[0.1,1]
!LET n=0.5
!DEF g(x,y)=COS(2*PI*y)-COS(2*PI*(COS(2*n*PI*x)+COS(2*n*PI*y))) !n=[0.1,2]
!LET n=3
!DEF g(x,y)=COS(PI*x*y/n)-(COS(2*PI*x)+COS(2*PI*y)) !n=[0.1,5]
!LET n=0.2
!DEF g(x,y)=n*COS(PI*x*y)-(SIN(2*PI*x)+SIN(2*PI*y)) !n=[-0.5,0.5]
!LET n=25
!DEF g(x,y)=COS(PI*x*y)-COS(n*x*y/(x^2+y^2)) !n=[1,100]
!LET n=25
!DEF g(x,y)=COS(PI*x*y)-x*y*COS(n*x*y/(x^2+y^2)) !n=[1,100]
LET a=-5 !x=[a,b] ※xy座標の表示領域
LET b=5
LET c=a !y=[c,d]
LET d=b
SET WINDOW a,b,c,d !表示領域を設定する
DRAW grid(1,1) !座標を描く
ASK PIXEL SIZE (a,c; b,d) w,h !画像の縦横の大きさ(ドット単位)を調べる
!条件を満たす領域を描く
SET POINT STYLE 1 !ドット形式
SET POINT COLOR 2
FOR j=1 TO h !画面全体を走査する
LET y=WORLDY(j) !ドットをxy座標に変換する
FOR i=1 TO w
LET x=WORLDX(i)
WHEN EXCEPTION IN
LET z=g(x,y) !関数値を計算する
IF z>0 THEN !正の部分を切り取る
PLOT POINTS: x,y
END IF
USE !0割りなどの例外処理
END WHEN
NEXT i
NEXT j
END