&size(24){''\iiiDrawline''};~
 座標空間に折れ線を描画します。
#contents
#br

*定義されているスタイルファイル [#i93e9155]
emathPk.sty

*書式 [#hb16343f]
\iiiDrawline<#1>#2
-#1: key=val 形式のコンマ区切りで並べます。
-#2: 点列
     #2 に与えられた点列を線分で結んでいきます。
-#1 に有効なkey は,
:arrowheadsize| 矢印のサイズを変更します。
:dashLG| 破線の形状を指定します。
:hasenLG| 破線の形状を指定します。
:idou| 平行移動をします。
:iro| 折れ線に色をつけます。
:linethickness| 線分の太さを変更します。
:Oval| 折れ線の角を丸くします。
:oval| 折れ線の角を丸くします。
:sensyu| 線種を変更します。
:yazirusi| 折れ線の始点・終点に矢印を付加します。

以下,emathPs.sty で定義されるpsZahyou(*) 環境特有のオプションです。
:arrowsize| psZahyou(*) 環境における鏃のサイズを変更します。
:dash| psZahyou(*) 環境における線種を変更します。
:kuromaru| 折れ点に黒丸をつけます。右辺値に\Kuromaru につけるオプションを記述することも出来ます。
:hasenLG| psZahyou(*) 環境における線種を変更します。
:linecap| 開いた端点処理
:linejoin| コーナー補正
:vmark| 折れ点に配置する記号を指定します。

*例 [#c034e410]
**基本例 [#t569613f]
 点列を線分で結んで折れ線を描画します。
#ref(iiiDrawline01.png)
**線種変更 <sensyu=..> [#i76e4c16]
 線分の線種を変更します。
 まずは,<sensyu=\dottedline.. で,点線を指定します。
#ref(iiiDrawline02.png)
 <sensyu=\dashline.. は,破線です。
#ref(iiiDrawline03.png)
 <sensyu=\hasen.. も使えますが,
 \Hasen コマンドを用いる方が普通でしょう。
#ref(iiiDrawline04.png)
 <sensyu=\chainline.. は鎖線です。
#ref(iiiDrawline05.png)
**矢印附加 <yazirusi=.> [#k3351b74]
 折れ線の始点・終点に矢印を附加します。
 <yazirusi=a> とすると,終点に矢印がつきます。
#ref(iiiDrawline06.png)
 <yazirusi=r> とすると,始点に矢印がつきます。
#ref(iiiDrawline07.png)
 <yazirusi=b> の場合は,始点・終点両方に矢印がつきます。
#ref(iiiDrawline08.png)
**矢印サイズ変更 <arrowheadsize=.> [#lab86f6b]
 <yazirusi=.> オプションで矢印をつけた際,その矢印のサイズを変更します。
 右辺値は,デフォルトを 1 とする相対値(無名数)です。
#ref(iiiDrawline09.png)
:(注)|<arrowheadsize=..>オプションは,psZahyou(*)環境に対しては無効です。~
代えて <arrowsize=..>オプションを用います。
**線幅変更(1) <linethickness=..> オプション [#pca7e9ec]
 線分の太さを変更するには,
   linethickness=..
 オプションを用います。右辺値は,単位を伴う長さです。
 デフォルトは
   Zahyou(*)環境では linethickness=0.3pt
   psZahyou(*)環境では linethickness=1pt
 に相当します。
#ref(iiiDrawline10.png)
-allinethickness, linewidth も同義のキーとして使用可能です。
-線を太くすると,折れ点で「楔形の欠け」が目立つ,という場合は~
psZahyou環境を用います。
#ref(iiiDrawline11.png)
**線幅変更(2) \linethickness コマンド [#z9500823]
 <linethickness=..> オプションによる線幅変更は,当該 \iiiDrawline にのみ有効です。
#ref(iiiDrawline12.png)
 広範囲に変更するには,\linethickness コマンドを用います。
 引数は,単位を伴った寸法です。
#ref(iiiDrawline13.png)
**カラー  <iro=..> [#r64226ec]
 折れ線に色をつけます。
#ref(iiiDrawline14.png)
-tpic による色づけは,dviware に依存します。~
dvips, dviout, dvipdfm では有効ですが,~
dvipdfmx は版によって動作が異なります。~
dvipdfmx-20081108(cvs) は対応していますが,それより前の版では色がつかない場合があります。~
カラーを扱うには psZahyou環境がお勧めです。
**丸コーナー<oval=..> [#pd217931]
 折れ線の角を丸くします。
 折れ線の角を円弧にしますが,その半径を oval=.. の右辺値に指定します。
 右辺値は単位を伴う長さですが,無名数の場合は \unitlength が単位であるとみなされます。
 Oval=.. も有効で,oval=.. と同義です。
#ref(iiiDrawline15.png)
 線分と円弧が接続されますが,<sensyu=..>オプションは線分に対してのみ働きます。
 下の例で,線分は破線になりますが,円弧は実線のままです。
#ref(iiiDrawline16.png)
 円弧も破線とするには,psZahyou環境で<dash=..>オプションを用います。
#ref(iiiDrawline17.png)
**平行移動 <idou=..> [#o144bf95]
 折れ線を平行移動するオプションが <idou=..> です。
 右辺値は,ベクトル成分で,各成分は
   無名数,単位つき数値
 のいずれでも良く,無名数の場合は単位が \unitlength であると解釈されます。
          (xscale, yscale の影響を受けます。)
#ref(iiiDrawline18.png)
#br
**--- 以下,psZahyou環境特有の話題です。--- [#d62ceaee]
**線種変更(psZahyou(*)環境) <dash=..> [#j4b56a5e]
 破線を描画するには,<dash=..> オプションを用います。
 右辺には,
   描画部分の長さ,描画しない部分の長さ
 の繰り返しとなる偶数個の数値(無名数)を与えます。
 詳しくは,\setdash コマンドについてのページをご参照ください。
#ref(iiiDrawline19.png)
#ref(iiiDrawline20.png)
 右辺値の冒頭に [..] とすることで,
 開始位置のオフセットを指定する機能があります。
 下の例の場合,オフセット [.05] が指定されましたから
 初めの(点Aのところ)描画部分の長さが
   0.15-0.05=0.10
 と短くなります。
#ref(iiiDrawline21.png)
 次の例は,Oval=.. との併用です。
#ref(iiiDrawline22.png)
 さらに yazirusi=. と併用してみます。
 鏃のサイズを変更するには,さらに arrowsize=.. と併用することとなります。
#ref(iiiDrawline23.png)
**線種変更(psZahyou(*)環境) <hasenLG=..> [#y38d5497]
 破線で描画するもうひとつのオプション <hasenLG=..> です。
 下右図,2本の線分が破線で描かれていますが,
   上が <dash=..>
   下が <hasenLG=..>
 オプションによるもので,右辺値は同一です。
 dash による指定は,指定通りの長さで「描画,空白」が繰り返されますが,
 hasenLG による指定は,両端が「描画」で始まり,終わるように長さが調整されます。
#ref(iiiDrawline24.png)
 <hasenLG=..>オプションによる描画は,\Hasen コマンドと同様ですが,
 折れ線に対しては状況が変わってきます。
 下の3つの図で,
 一番上は,<dash=..> によるもので,折れ点 B が不明確です。
 二番目は,\Hasen コマンドによるもので,折れ点 B において,V字上の欠けが見られます。
 三番目は,<hasenLG=..> によるもので,折れ点補正がかけられています。
#ref(iiiDrawline25.png)
#ref(iiiDrawline26.png)
#ref(iiiDrawline27.png)
-折れ点補正に関しては,[[linejoin=..オプション>#linejoin]]をご覧ください。
-<hasenLG=..>オプションは,<Oval=..>, <yazirusi=..> との併用はできません。

**折れ点にマーク [#ac39c8f8]
 両端と折れ点にマークをつけます。
***<kuromaru> オプション [#z6c19176]
 両端と折れ点に黒丸をつけるオプションが <kuromaru> です。
#ref(iiiDrawline28.png)
-黒丸のサイズを変えるには,\KuromaruHankei コマンドを発行しておきます。
#ref(iiiDrawline29.png)
***<vmark=..> オプション [#s23beb70]
 任意の記号を配置するには,<vmark=..> オプションを用います。
#ref(iiiDrawline30.png)

**鏃のサイズ変更(psZahyou環境)<arrowsize=..> [#hee600ae]
 折れ線に矢印をつけると,鏃が貧弱に見えます。
 これは,デフォルトでは矢線の幹の太さを 0.3pt として鏃サイズが設定されているのに対し,
 ここでは幹(折れ線)は 1pt で描画されているため,バランスが崩れていることによります。
#ref(iiiDrawline31.png)
 折れ線の太さを 0.3pt にするには,上で述べた <linewidth=3> オプションを用います。
#ref(iiiDrawline32.png)
 逆に鏃サイズを大きくするには
   <arrowsize=..> オプション
 を用います。右辺値は,\setarrowsize コマンド
   \setarrowsize<#1>#2#3#4
 の引数をそのまま記述します。
 ただし,#2 -- 幹の太さ -- は無効です。
 この場合,幹は折れ線でその太さは <linewidth=..>オプションで変更します。
 このオプションは局所的で,当該 \iiiDrawline についてのみ有効です。
 広範囲に鏃サイズを変更するには,\setarrowsizeコマンドを用います。
#ref(iiiDrawline33.png)
**接続修正(psZahyou(*)環境) <linejoin=..> [#linejoin]
 折れ線の折れ点の状態は
 線分を重ねただけではV字型のクサビが出来てしまいます。
 PostScript には,これを修正する方法が3通り用意されています。
 それを切り替えるオプションが <linejoin=..> です。右辺値は
   0 : マイター接続(デフォルト)
   1 : ラウンド接続
   2 : ベベル接続
 のいずれかです。

 まずは,Zahyou環境の状態からみていきます。
 \iiiDrawline は,折れ線を描画するとはいえ,
 個々の線分を重ねて配置するだけです。
 線分が太くなると,V字型の切り欠きが目立ってきます。

//なお,この項は図を拡大したくなりますので
//&ref(linejoin00.pdf,,PDFファイル);を用意しました。
#ref(iiiDrawline34.png)
 psZahyou環境でも,個々の線分を描画したものを連ねた場合は,上と同様です。
#ref(iiiDrawline35.png)
 しかし,\iiiDrawlineの引数に点列を与えて折れ線を描画させると,
 折れ点で「マイター接続」と称される補正が行われます。
 すなわち,線分AB, BCの外側のエッジを延長し,交わらせます。
 上の図と下の図では,`B'の位置は同じです。
 下の図では,折れ線が`B'の位置近くまで延長されていることがお分かりでしょうか。
#ref(iiiDrawline36.png)
 マイター接続では,本来の点B--赤線の交点--と折れ線の頂点がだいぶずれてしまいます。
 折れ点の接続表現法には「マイター接続」以外も用意されています。

 その一つが「ラウンド接続」です。
 線幅と等しい直径を持つ円弧を折れ点を中心として描画します。
#ref(iiiDrawline37.png)
 もう一つが「ベベル接続」と呼ばれるもので,
 単に線分を重ねて出来るV字型の切込みを塗りつぶします。
#ref(iiiDrawline38.png)
- <linejoin=..>オプションは,当該 \iiiDrawline に対してのみ有効です。~
広範囲に有効とするには \setlinejoin コマンドを用います。
**開いた端点の処理 <linecap=..> [#linecap]
 線分を接続する場合,その点の処理法は linejoin の値によることは上で述べた通りですが,
 開いた端点については,linecap の値で処理を指定することが出来ます。
 右辺値は 0(default), 1, 2 のいずれかです。
   0 断ち切り型 (butt cap) : パスの端点において四角形に線を打ち切る。パスの端点から突出する部分はない。
   1 丸型 (round cap) : 直径が線幅に等しい半円弧が端点の周囲に描かれ,内部が塗りつぶされる。
   2 角型 (projecting square cap) : パスの端点から線幅の半分の距離を越えるまで線を引き続け,四角形に線を打ち切る。

#ref(iiiDrawline39.png)
#ref(iiiDrawline40.png)
#ref(iiiDrawline41.png)
- <linecap=..>オプションは,当該 \iiiDrawline に対してのみ有効です。~
広範囲に有効とするには \setlinecap コマンドを用います。

*関連事項 [#dd091464]
-[[\Drawline>Drawline]]
RIGHT:&counter;


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS