【円弧-12】円の移動3

円を回転させながら小さくしていきます。
34-35行:三角関数で円の位置を計算しています。
37行:円の半径を少しづつ小さくしています。

参考:X1ターボ/X1シリーズ・プログラム200選  特選グラフィックスデザイン/畠中兼司・北尾和信共著

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
32
33
34
35
36
37
38
39
40
41
%!PS-Adobe-3.0 EPSF-3.0
%%BoundingBox: 0 0 720 720
%%HiResBoundingBox: 0 0 720 720
%%CropBox: 0 0 720 720
%%Title:円の移動
%%Creator:Studio Fruit Jam / Toyokazu Nishi
%%Copyright:Studio Fruit Jam / Toyokazu Nishi
%%CreationDate:2018年7月25日 水曜日午後3:47:06
% 参考:X1ターボ/X1シリーズ・プログラム200選
% 特選グラフィックスデザイン 畠中兼司・北尾和信共著

% ================ 座標変換 ================
360 360 translate % 座標の原点を中央に移動
% ================ 背景 =================
/DeviceRGB setcolorspace % カラースペース設定
.917 .917 .863 setrgbcolor % 背景カラー設定
-360 360 720 -720 rectfill % 背景描画

% ====================== 初期値
/x 0 def /y 0 def % 円の初期位置
/r 320 def % 円の半径(変更可)
/r2 20 def % 移動半径(変更可)
/e { 0 360 } def % 円の開始角度と終了角度
/sw 1 def % 色変更スイッチ
/c0 { .458 .522 .976 sethsbcolor } def % カラー1(変更可)
/c1 { .617 .415 .831 sethsbcolor } def % カラー2(変更可)

% ================================================
% メイン
% ================================================
newpath % パスの初期化
0 6 r 3 mul { % 0から始めて6づつ増分し〜r*3まで{ }内を繰り返す
/th exch def % 角度を取得
/x r2 th cos mul def % 円を移動する
/y r2 th sin mul def
x y r e arc % 円を引く
/r r 2 sub def % 円の半径を次第に小さくする
% swが1の時カラー1で塗る。それ以外はカラー2で塗る
sw 1 eq { c0 } { c1 } ifelse fill
/sw sw neg def % swを反転する
} for
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

目次