Intermediate level– category –
PostScript 中級レベル
-
Intermediate level
【パターン-1】円を並べてパターンを作ってみよう
円を並べてパターンを作ります。円の大きさや間隔の値を変えると様々なパターンが生まれます。ここで工夫したのは枠内に左右対称にパターンが配置されるようにしたことです。 [cc lang="postscript" tab_size=“4” lines="40" highlight=“0”] %!PS-Adobe-3.... -
Intermediate level
【パターン-2】ランダムにボックスパターンを描いてみよう
randを使って位置、大きさ、線幅をランダムな値にしてボックスを描きます。 rand 201 modで0〜200の値が返ります。次に100 subで0-100=-100、200-100=100となり、-100から100の間のランダムな値を得ることができます。 [cc lang="postscript" tab_size=“... -
Intermediate level
【パターン-3】ランダムにサークルパターンを描いてみよう
randを使って位置、大きさ、カラーをランダムな値にして円を描きます。今回はRGBではなくHSBカラーで設定しています。 [cc lang="postscript" tab_size=“4” lines="40" highlight=“0”] %!PS-Adobe-3.0 EPSF-3.0 %%BoundingBox: 0 0 240 240 %%Title:ランダ... -
Intermediate level
【パターン-4】ランダムにラインパターンを描いてみよう
randを使って位置、長さ、線幅をランダムな値にして直線を描きます。位置を枠の範囲内になるよう-100から100の間に設定します。 [cc lang="postscript" tab_size=“4” lines="40" highlight=“0”] %!PS-Adobe-3.0 EPSF-3.0 %%BoundingBox: 0 0 240 240 %%Tit... -
Intermediate level
【パターン-6】円を並べてパターンを作ってみよう3
円を並べてパターンを作ってみよう2に3行コードを追加して、円を大きくしたり小さくしたりします。追加するのは/dt 1 def % 円の半径を増減させる値/r r dt add def % 円の半径に増減値を足す% 円の半径が10以上または3以下なら増減値の符号を反転させます... -
Intermediate level
【パターン-5】円を並べてパターンを作ってみよう2
円を並べてパターンを作ってみようと配列とrandの応用で円にランダムに4色を割り当てます。カラー配列を4個用意し、col配列に入れておきます。/col [ [ 0 0 1 ] [ 0 .8 1 ] [ .8 0 1 ] [ .5 .5 1 ] ] defそこからランダムに0から3が返るので(rand 4 mo... -
Intermediate level
【曲線-1】SINカーブを描こう
PostScriptでSINカーブを描きます。短い直線を繋げて曲線とします。th(角度)を細くするとスムースな曲線になります。SINカーブの数式をPostScriptで書くと下記になります。x=a*th → /x a th mul defy=b*sin(th) → /y b th sin mul def やってみよう a:... -
Intermediate level
【曲線-2】アルキメデスの渦巻きを描いてみよう
渦巻きにも色々な種類がありますが、巻幅が一定なアルキメデスの渦巻きを描いてみましょう。数式は以下です。x=sin(r*th)*th/2y=cos(r*th)*th/2前置記法にするために少し順番や( )を付けて整形しないとうまくいきません。x=(r*th)sin*(th/2)y=(r*th)cos*... -
Intermediate level
【曲線-3】フェルマー螺旋を描いてみよう
フェルマー螺旋の数式は下記ですが、x=a*sqr(th)*cos(th)y=a*sqr(th)*sin(th)パラメータがあまりないので、いじりようがないかもしれません。 [cc lang="postscript" tab_size=“1” lines="40" highlight="12-13"] %!PS-Adobe-3.0 EPSF-3.0 %%BoundingBox: ... -
Intermediate level
【曲線-4】等角螺旋を描いてみよう
これは等角螺旋または対数螺旋またはベルヌーイの螺旋と言って自然界の中に見られるそうです。b=1/6r=a(b*th)またはa^(b*th)x=r*cos(th)y=r*sin(th) [cc lang="postscript" tab_size=“4” lines="40" highlight=“0”] %!PS-Adobe-3.0 EPSF-3.0 %%BoundingBox...