GIMPでパスから矢印を描画する「arrow-set-size.scm」と初期値の設定

スポンサーリンク

arrow-set-size.scmの導入

ダウンロード

以下の「Attached Files」のリンクからダウンロードできます。

Arrow Script
Looking at the available script-fu and plug-ins available for drawing arrows, I found it difficult to find a compromise ...

上記がダウンロードリンクです。

導入

ダウンロードしたzipを解凍すると「arrow-set-size.scm」が出てきますので、これをscriptsフォルダにコピーします。

GIMPの編集 > 設定 > フォルダーをクリックして展開 > スクリプト

「C:Users~」で始まっているフォルダにコピーしますのでクリックして選択し、以下のアイコンをクリックすると開きます。

開いたフォルダへ「arrow-set-size.scm」をコピーすれば完了です。

GIMPを終了し、再び起動すると以下のように「Arrow-set-size」が追加されました。

矢印を書いてみる

arrow-set-sizeはパスで線や曲線を描き、オプション指定して適用すると矢印になります。

パスツールをクリックして有効にし、

以下のように2箇所クリックして直線を引きます

ツール > Arrow-set-sizeを選びます

色々設定がありますが、「Length of wings」だけ少し大きくして描画してみます。

矢印ができました。

設定項目と意味

Length of wings(Low):矢先の長さ

矢先の大きさを設定できます。
数値を大きくするほど矢先が大きくなります。(初期設定:20)

Length of wings type:矢先の長さタイプ

パスの長さと矢先の関係を指定します。
「Path length divided~」だとパスが長いほど矢先も大きくなります(初期値:LoW Pixels)

Angle between arrow and wing in degrees:矢先の角度

矢先の角度を設定します。
数値を大きくするほど矢先が広がります(初期設定:25)

大きくすると矢先の幅が広がって「▲」が「T」に近づくみたいな感じです。

Fill head of arrow?:矢先を塗りつぶす

チェックを入れると矢先を塗りつぶします。(初期設定:on)

Percentage size of notch of arrow head (only valid if head of arrow is filled):矢先の三角形化

「矢先を塗りつぶす」がオンのときだけ有効で、数値を大きくするほど矢先が三角形になっていき、100にすると完全な三角形になります。

Brush thickness(BT):ブラシの太さ

矢印全体の太さを設定します。
数値を大きくするほど矢印全体が太くなります。(初期設定:10)

Brush thickness type:ブラシの太さタイプ

「BT Pixels」は固定、「Path length divided by BT value」パスの長さに対応して変化します。

Use first path point as arrow head? (if not the last path point of is used as arrow head):パスの始点を矢先にする

チェックONだとパスの始点が矢先に、OFFだとパスの終点が矢先になります(初期設定:on)

Delete path after arrow is drawn?:矢印の描画後パスを削除

チェックを入れることで矢印を描画した後パスが削除されます。(初期設定:off)
削除されても「Ctrl + Z」で戻るとパスは復元されて再利用できます。

Use new layer for arrow?:新規レイヤーに矢印を作成

チェックを入れると矢印作成時に新しいレイヤーを作成し、そこへ描画します(初期設定:on)

Draw double headed arrow?:双方向矢印

チェックを入れるとパスの両端に矢先ができます(初期設定:off)

Curved arrow wings?(only for curved paths):矢先に曲線に沿ったカーブをつける

チェックを入れると曲線に沿って矢先もカーブします。
曲線のパスを描画した時だけ有効です。

Points for curved arrow wing(2 to 99):矢先のカーブの精度

「矢先に曲線に沿ったカーブをつける」ときだけ有効で、矢先のカーブ具合を指定します。
矢先が小さいと違いが分からないかもしれません。

設定の初期値を指定する

初期値はスクリプトを修正

設定は毎回クリアされてしまいますが、スクリプト内で値が定義されていますので、修正することで初期値を指定することができます。

GIMPのスクリプトフォルダに放り込んだ「arrow-set-size.scm」をテキストエディタで開きます。

最下部までスクロールすると以下のような部分がありますが、これが初期値などを定義している箇所です。

真偽値のTRUE/FALSEはチェックボックスのON/OFFを示し、数値の場合は直接修正します。

「SF-TOGGLE」がチェックボックス、「SF-ADJUSTMENT」が数値、「SF-OPTION」がプルダウンメニューです。

(script-fu-register "script-fu-draw-arrow-set-size"
_"<Image>/Tools/Arrow-set-size"
_"Draw a nearly arbitrary arrow in your image"
"Berengar W. Lehr <B-Ranger@web.de>"
"2009, Berengar W. Lehr / MPG@IDIR, UH Jena, Germany."
"19th November 2009"
"*"
SF-IMAGE "The image" 0
SF-DRAWABLE "The drawable" 0
SF-ADJUSTMENT "Length of wings (LoW)" '(20.0 1 500 1 10 1 1)
SF-OPTION "Length of wings type" (list "LoW Pixels" "Path length divided by LoW value" )
SF-ADJUSTMENT "Angle between arrow and wing in degrees" '(25 5 85 5 15 0 0)
SF-TOGGLE "Fill head of arrow?" TRUE
SF-ADJUSTMENT "Percentage size of notch of arrow headn(only valid if head of arrow is filled)" '(75 0 100 1 10 0 1)
SF-ADJUSTMENT "Brush thickness (BT)" '(10 1 500 1 10 0 1)
SF-OPTION "Brush thickness type" (list "BT Pixels" "Path length divided by BT value" )
SF-TOGGLE "Use first path point as arrow head?n(if not the last path point of is used as arrow head)" TRUE
SF-TOGGLE "Delete path after arrow is drawn?" TRUE
SF-TOGGLE "Use new layer for arrow?" TRUE
SF-TOGGLE "Draw double headed arrow?" FALSE
SF-TOGGLE "Curved arrow wings? (only for curved paths)" FALSE
SF-ADJUSTMENT "Points for curved arrow wing (2 to 99)" '(20 2 99 1 10 0 1)
)

矢先の初期値を変更してみる

矢先のサイズはデフォルトでは「20.0」になっていますので、これを「40.0」に修正してみます。

以下の行がありますので

 SF-ADJUSTMENT "Length of wings (LoW)" '(20.0 1 500 1 10 1 1)

以下のように修正して保存、GIMPを再起動します。

 SF-ADJUSTMENT "Length of wings (LoW)" '(40.0 1 500 1 10 1 1)

arrow-set-sizeを再び開いてみると、初期値が指定した「40.0」に変更されました。

設定項目の紹介

スクリプトの設定箇所は、ダブルコーテーション(””)で囲われた部分がGIMP内で表示される設定名で、その後に続くのが設定値です。

以下は初期値と簡単な説明を記載します。

“Length of wings (LoW)”

‘(40.0 1 500 1 10 1 1)

矢先の大きさを指定。
先頭の数字を修正すると初期値が変更される。

“Length of wings type”

(list “LoW Pixels” “Path length divided by LoW value” )

パスの長さと矢先の関係。
リストの先頭にあるものがデフォルトで選択される。
逆にする場合は(list “Path length divided by LoW value” “LoW Pixels” )

“Angle between arrow and wing in degrees”

‘(25 5 85 5 15 0 0)

矢先の角度を指定。
大きくすると矢先の幅が広がって「▲」が「T」に近づきます。

“Fill head of arrow?”

TRUE

矢先を塗りつぶす場合はTRUE、塗りつぶさない場合はFALSEを指定。

“Percentage size of notch of arrow headn(only valid if head of arrow is filled)”

‘(75 0 100 1 10 0 1)

矢先の形状で、75が初期値、100にすると完全な三角形になります。

“Brush thickness (BT)”

‘(10 1 500 1 10 0 1)

矢印全体の大きさで、10が初期値です。

“Brush thickness type”

(list “BT Pixels” “Path length divided by BT value” )

矢印の太さをパスの長さに応じて変更するかどうか。
逆にする場合は(list “Path length divided by BT value” “BT Pixels” )

“Use first path point as arrow head?n(if not the last path point of is used as arrow head)”

TRUE

TRUEでパスの始点が矢先に、FALSEにするとパスの終点が矢先になります。

“Delete path after arrow is drawn?”

TRUE

TRUEで描画後にパスを削除し、FALSEは削除しません。

“Use new layer for arrow?”

TRUE

TRUEで矢印を新しいレイヤーに描画、FALSEは現在のレイヤーに描画します。

“Draw double headed arrow?”

FALSE

両端を矢先にする場合はTRUE、片側だけ矢先の場合はFALSE

“Curved arrow wings? (only for curved paths)”

FALSE

曲線の矢印でカーブさせるかどうか。
TRUEでカーブ、FALSEはカーブなし。

“Points for curved arrow wing (2 to 99)”

‘(20 2 99 1 10 0 1)

矢先のカーブの精度です。
初期値は20です。

スクリプトの表示名を変更

初期の名称でも分かりやすいですが、自分が分かりやすいように修正できます。

先程の設定箇所内にありますが、下の2行目がそうです。

(script-fu-register "script-fu-draw-arrow-set-size"
_"<Image>/Tools/Arrow-set-size"
_"Draw a nearly arbitrary arrow in your image"
"Berengar W. Lehr <B-Ranger@web.de>"
"2009, Berengar W. Lehr / MPG@IDIR, UH Jena, Germany."
"19th November 2009"
"*"
SF-IMAGE "The image" 0
SF-DRAWABLE "The drawable" 0
SF-ADJUSTMENT "Length of wings (LoW)" '(20.0 1 500 1 10 1 1)
SF-OPTION "Length of wings type" (list "LoW Pixels" "Path length divided by LoW value" )
SF-ADJUSTMENT "Angle between arrow and wing in degrees" '(25 5 85 5 15 0 0)
SF-TOGGLE "Fill head of arrow?" TRUE
SF-ADJUSTMENT "Percentage size of notch of arrow headn(only valid if head of arrow is filled)" '(75 0 100 1 10 0 1)
SF-ADJUSTMENT "Brush thickness (BT)" '(10 1 500 1 10 0 1)
SF-OPTION "Brush thickness type" (list "BT Pixels" "Path length divided by BT value" )
SF-TOGGLE "Use first path point as arrow head?n(if not the last path point of is used as arrow head)" TRUE
SF-TOGGLE "Delete path after arrow is drawn?" TRUE
SF-TOGGLE "Use new layer for arrow?" TRUE
SF-TOGGLE "Draw double headed arrow?" FALSE
SF-TOGGLE "Curved arrow wings? (only for curved paths)" FALSE
SF-ADJUSTMENT "Points for curved arrow wing (2 to 99)" '(20 2 99 1 10 0 1)
)

以下の箇所です。

_"<Image>/Tools/Arrow-set-size"

例えば「DrawingArrow-From Path」という名称にしたい場合は以下のように修正します。

 _"<Image>/Tools/DrawingArrow-From Path"

スクリプトを保存してGIMPを再起動してみます。

名称変更できました。

コメントフォーム

タイトルとURLをコピーしました