十二菊という家紋です。
PostScriptチュートリアル&クックブックに同じような花模様の図形を描くプログラムがありましたのでそれを参考にしました。
花びら1枚をプロシージャにして12回、回転させて菊模様としています。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 %!PS-Adobe-3.0 EPSF-3.0
%%BoundingBox: 0 0 240 240
%%Title:家紋を描く(十二菊)
/wh { 1 setgray fill } def % 白塗りつぶし
/bk { 0 setgray stroke } def % 黒線
/a 90 def % 図形サイズ
/kiku { % 菊の花ビラのプロシージャ
newpath % パスの初期化
gsave % グラフィックス状態の保存
0 0 moveto % (0,0)に始点を置く
a 0 translate % (a,0)に原点を移動
15 rotate % 15度回転
0 15 sin a mul translate % 半円の半径分移動
0 0 15 sin a mul -90 90 arc % 半円を引く
closepath % 線を繋ぐ
gsave wh grestore bk % 白塗り、黒線
grestore % グラフィックス状態の復帰
} def
2 setlinewidth % 線幅2ポイント
0 0 240 240 rectfill % 黒背景
120 120 translate % 座標の原点を中央に移動
15 rotate % 15度回転
12 { % 12回{ }内を繰り返す
kiku % 菊プロシージャ呼び出し
30 rotate % 30度回転
} repeat
% 花芯を描く
0 0 16 0 360 arc gsave wh grestore bk
数字を少し変えるだけで八菊なども描くことができます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 %!PS-Adobe-3.0 EPSF-3.0
%%BoundingBox: 0 0 240 240
%%Title:家紋を描く(八菊)
/wh { 1 setgray fill } def
/bk { 0 setgray stroke } def
/kiku {
gsave
0 0 moveto
80 0 translate
22.5 rotate
0 22.5 sin 80 mul translate
0 0 22.5 sin 80 mul -90 90 arc
closepath
gsave wh grestore bk
grestore
} def
2 setlinewidth
0 0 240 240 rectfill
120 120 translate
22.5 rotate
8 {
kiku
45 rotate
} repeat
0 0 16 0 360 arc gsave wh grestore bk
コメント