So-net無料ブログ作成
検索選択

モーラーローズを描いてみよう [PostScript]

曲線を描く


モーラーローズ.png
モーラーローズまたはマウラーローズはバラの曲線上のいくつかの点を結ぶ線で構成されています。
nとdの値をそれぞれ変えると様々な図形ができます。
k=th*d
r=sin(n*d*th)
x=r*cos(k)
y=r*sin(k)
パラメーター例:n=1,d=69 n=2,d=39 n=3,d=47 n=2,d=29
n=3,d=17 n=4,d=31 n=5,d=97 n=6,d=71 n=7,d=19
参考:〔PDF〕127 バラ曲線(正葉線)とMaurer Rose
参考:Maurer rose - Wikipedia

【サンプルコード】
%!PS-Adobe-3.0 EPSF-3.0 %%BoundingBox: 0 0 240 240 %%Title:Maurer Rose(モーラーローズ)を描く /n 6 def % 花弁数 /d 71 def % 度 /en 120 def % 図形拡大のため 0 0 240 240 rectfill % 黒背景 120 120 translate % 座標の原点を中央に移動 newpath % パスの初期化 0 1 360 { % 0から1づつ増分し360まで{ } 内を繰り返す /th exch def % 制御変数をth(角度)に入れる % モーラーローズの数式 /k th d mul def % /r n d mul th mul sin def /x r k cos mul en mul def /y r k sin mul en mul def % thが0なら始点を置き、さもなくば線を引く th 0 eq { x y moveto }{ x y lineto } ifelse } for 1 0 0 setrgbcolor % 赤色 .5 setlinewidth % 0.5ポイント線幅 stroke % 線を描画

nの値を変えると様々な図形ができます。
モーラーローズ02.png

nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

トラックバックの受付は締め切りました