【基本-4】シェーディングパターン(放射)について

放射シェーディングについて紹介します。円から円へのグラデーションです。
開始円・終了円の半径と座標を設定します。半径は0以上で、どちらか1つを0にすると点になります。
その他のパラメータは線形シェーディングと同じです。
★が付いたパラメータは変更可能です。色々と変えてみてください。

/ColorSpace色空間により開始・終了色の/C0 /C1 の値の個数が変わります。
/DeviceRGB 3個 /DeviceGray 1個 /DeviceCMYK 4個
/Domain を大きい数値にするとFinderのプレビューではバンド幅が粗く見えますが、Illustratorやプレビュー.appで開くと粗くならず効果がありません。

コード内の<< >>は本来英語記号ですが、ここでは入力できないため日本語記号<< >>を使用しています


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
%!PS-Adobe-3.0 EPSF-3.0
%%BoundingBox: 0 0 240 240
%%Title:カラーグラデーション放射状
0 0 240 240 rectstroke
120 120 translate % 座標の原点を中央に移動

newpath
<< % シェーディング辞書の定義
    /ShadingType 3 % 放射状シェーディング
    /ColorSpace  /DeviceRGB
    % ★開始円/終了円の座標と半径 [ x0 y0 r0 x1 y1 r1 ]
    /Coords[ 0 0 0 0 0 100 ]
    /Extend [ false false ] % ★開始・終了点から色を延長する falseがデフォルト
    /Function   << % 関数辞書の定義
        /FunctionType 2 % 指数補間法
        % 値は C0 + t ** N * (C1 - C0)
        /Domain [ 0 1 ] % [ 0 1 ] :デフォルト tは色関数への引数 バンド幅
        /C0 [ 1 0 1 ] % ★開始色 マゼンタ
        /C1 [ 0 1 1 ] % ★終了色 シアン
        /N 1 % ★増加度合 1:デフォルト グラデーションのバランスを変える
    >>
>>
shfill % グラデーションで塗りつぶす

開始円を左上に置き、球のようなイメージにします。
/Coords[ -60 60 10 0 0 100 ]
/C0 [ 1 0 1 ] % 開始色 イエロー
/C1 [ 0 1 1 ] % 終了色 マゼンタ

上記の設定でNを3にして、開始色のバランスを広くとっています。
/N 3

同じく上記の設定でNを0.5にして、終了色のバランスを広くとっています。
/N .5

開始円を終了円の外側に置いています。
/Coords[ -100 100 0 10 -10 100 ]
/C0 [0 1 .5 ] % 開始色 グリーン
/C1 [ 0 .5 1 ] % 終了色 ブルー

終了色を拡張しています。
/ColorSpace /DeviceGray
/Coords[ 0 0 0 0 0 100 ]
/Extend [ false true ]
/C0 [ 1 ] % 開始色 白
/C1 [ 0] % 終了色 黒
/N 4

線形シェーディングと放射シェーディングを組み合わせています。
バックのグラデーションが放射シェーディングの開始円の穴から見えています。


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
%!PS-Adobe-3.0 EPSF-3.0
%%BoundingBox: 0 0 240 240
%%Title:カラーグラデーション放射状
0 0 240 240 rectstroke
120 120 translate % 座標の原点を中央に移動

%  バックのグラデーション
<<  %  シェーディングの辞書定義
    /ShadingType  2 %  線形シェーディング
    /ColorSpace  /DeviceRGB %  色空間定義
    /Coords [ 0   -100   0   100   ]
    /Extend [ false false ]  % 開始・終了点から色を延長する falseがデフォルト
    /Function << % 関数辞書の定義
        /FunctionType 2 % 指数補間法
        /Domain [ 0 1 ] % バンド幅/1:デフォルト
        /C0 [ 1 1 0 ] % 開始色 イエロー
        /C1 [ 1 0.6 0] % 終了色 オレンジ
        /N 1 % グラデーションのバランス
    >>
>> shfill  % グラデーションで塗りつぶす

 % フレアと青空
 % 開始円が空いているためバックのグラデーションが見えている

<<
    /ShadingType 3 % 放射状シェーディング
    /ColorSpace  /DeviceRGB
    % 開始円/終了円の座標と半径 [ x0 y0 r0 x1 y1 r1 ]
    /Coords[ 0 0 85 0 0 120 ]
    /Extend [ false true ]
    /Function   <<
        /FunctionType 2
        /Domain [ 0 1 ]
        /C0 [ 1 1 0 ] % 開始色 イエロー
        /C1 [ 0 .5 1 ] % 終了色 ブルー /N .5
    >>
>> shfill

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


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

目次