So-net無料ブログ作成

ドーナツ図形を描いてみよう [PostScript]

円弧を描く

ドーナツ図形を描いてみましょう。小さい円は時計回りにします。

03-03円+弧2+色2.png 余分な線が付いています。 円と円が繋がってしまったからです。 カレントポイントを(30,0)に移動し、小さい円を引きます。
【サンプルコード】
%!PS-Adobe-3.0 EPSF-3.0 %%BoundingBox: 0 0 240 240 120 120 translate % 座標の原点を中央に移動 newpath % パスの初期化 0 0 80 0 360 arc % 中心(0、0)半径80の円(反時計回り) 0 0 30 360 0 arcn % 中心(0、0)半径30の円(時計回り) gsave % ここまでのグラッフィック状態の保存 1 .5 0 setrgbcolor % オレンジ色 fill % パスの内部を塗りつぶす grestore % グラフィック状態を復元する 0 0 0 setrgbcolor % 黒色 5 setlinewidth % 線幅10ポイント stroke % 線を描画する


03-03円+弧2+色ドーナツ.png 大きい円と小さい円の描画方向が異なっているため小さい円は外部領域と判定され、ドーナツ型となります。 描画方向が同じだと下図のようになり、穴が空きません。
【サンプルコード】
%!PS-Adobe-3.0 EPSF-3.0 %%BoundingBox: 0 0 240 240 120 120 translate % 座標の原点を中央に移動 newpath % パスの初期化 0 0 80 0 360 arc % 中心(0、0)半径80の円(反時計回り) 30 0 moveto % カレントポイントを(30、0)に移動 0 0 30 360 0 arcn % 中心(0、0)半径30の円(時計回り) gsave % ここまでのグラッフィック状態の保存 1 .5 0 setrgbcolor % オレンジ色 fill % パスの内部を塗りつぶす grestore % グラフィック状態を復元する 0 0 0 setrgbcolor % 黒色 5 setlinewidth % 線幅10ポイント stroke % 線を描画する


03-03円+弧2+色ドーナツ2.png
【サンプルコード】
%!PS-Adobe-3.0 EPSF-3.0 %%BoundingBox: 0 0 240 240 120 120 translate % 座標の原点を中央に移動 newpath % パスの初期化 0 0 80 0 360 arc % 中心(0、0)半径80の円(反時計回り) 30 0 moveto % カレントポイントを(30、0)に移動 0 0 30 0 360 0 arc % 中心(0、0)半径30の円(反時計回り) gsave % ここまでのグラッフィック状態の保存 1 .5 0 setrgbcolor % オレンジ色 fill % パスの内部を塗りつぶす grestore % グラフィック状態を復元する 0 0 0 setrgbcolor % 黒色 5 setlinewidth % 線幅10ポイント stroke % 線を描画する

タグ:PostScript
nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:趣味・カルチャー

nice! 0

コメント 0

コメントを書く

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

トラックバック 0

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