読み終えた文庫本をしまおうとしたら、以前購入した「日本の家紋」という本が出てきました。
家紋をPostScriptで組んで見ようかとふと思いつきました。まあこういったものはAdobe Illustratorが得意な分野ですが、練習になるかなと思って挑戦してみます。
家紋は比率を測ったりせずに見た目で制作していますので正確ではありません。
正方形を重ねながら回転させた図形で「石車」という家紋です。
まず白塗り黒枠の正方形プロシージャsqを定義します。
正方形を7回、回転させます。
8回、回転させると左下図のように重なりがおかしくなってしまいます。
これは物理的に不可能な組み合わせなので、最後の1枚は工夫が必要です。
クリッピングマスク(右下図黄色部分)を使って右の重なり部分をカットして、次の正方形の下に潜り込んだように見せています。
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
30
31 %!PS-Adobe-3.0 EPSF-3.0
%%BoundingBox: 0 0 240 240
%%Title::家紋を描く(石車)
/sq { % 正方形の定義
0 0 moveto 0 70 rlineto 70 0 rlineto
0 -70 rlineto closepath % 正方形
gsave % グラフィックス状態の保存
1 setgray fill % 白色で塗りつぶす
grestore % グラフィックス状態の復元
0 setgray 2 setlinewidth stroke % 線幅2ポイントで描画
} def
0 0 240 240 rectfill % 黒背景
120 120 translate % 座標の原点を中央に移動
gsave % グラフィックス状態の保存
newpath % パスの初期化
7 { % 7回{ }内を繰り返す
sq % 正方形プロシージャ呼び出し
-45 rotate % -45度座標を回転
} repeat
grestore % グラフィックス状態の復元
% 最後の1枚の処理
newpath % パスの初期化
% クリッピングマスク
70 neg 0 moveto 0 140 rlineto 140 0 rlineto
0 -69 rlineto -71 0 rlineto 0 -71 rlineto closepath clip
newpath % パスの初期化
45 rotate % 45度座標を回転
sq % 正方形プロシージャ呼び出し(クリップされる図形)
コメント