前の画面〕 〔クリックポイント〕 〔最新の一覧〕 〔全て読んだことにする〕〔全て読んだことにして終了〕 〔終了

315 re(14):eps出力で波線間隔の変更
2004/8/15(日)21:31 - 竹の - nolm01.iee.niit.ac.jp - 2029 hit(s)

引用する
現在のパスワード


竹の> むしろ 3.7.2 とかではちゃんと出るようです。303 で紹介し
竹の> た gnuplot-3.8j での対処がアダになってるのでしょうか。

やはりそのようです。term/post.trm に以下のように書かれています。

----- ここから -----
/* Ghostscript has a "pile-up of rounding errors" bug: a sequence of many
* rmove's or rlineto's does not give the same line made aby move's or
* lineto's.
* Therefore, let us do a stroke very often. There was a case when 400
* rlineto's were too much, so let's go a little bit higher than the default
* function sampling rate in gnuplot. */
if (ps_path_count >= 105) {
----- ここまで -----

そして以前はこの 105 が 400 でした。これを 400 に戻すとそれ
なりの破線になりますが、現在の 105 だと stroke 命令が 105 個
の rlineto,moveto 毎 (折れ線の各点の定義) に行なわれ、今回使
用した例だと 61 回も stroke (実際の破線の破線の描画) が行なわ
れています。破線の切れ目が全体でおよそ 150 個くらいですから、
150/60=2.5 個の破線線分に一回ずつ新たな破線を書き始めているこ
とになり、よって綺麗な破線にならないことになっているようです
(かなり空白部分を潰してしまう)。

この 105 を 400 にすると stroke は 16 個になるので、それらし
い破線にはなるのですが、上にあげた post.trm のソースのコメン
トにあるようにそれはあまり良くないようです (gs にとって)。

よって、対処はやはり

竹の> とりあえずは間引くと良いようです。

しかなさそうですね。なお、点の個数は今回テストに使った 10000
点でも実際には PS の最小単位に変換される段階でパス数は減って
6400 点くらいになります。よって、今回の問題は元々の点の数が
6400 点位でも同じような問題が起こるでしょう。

竹の> としてみてください。every 2 位でも良さそうです。

every 2 の時は stroke は 48 個もありますが、これはたまたま今
回の例の場合にはたまたま綺麗に見えるような数だったようです
(丁度 150/48 が整数に近かったためでしょう)。本当はやはりもっ
と間引いた方が良さそうです。

竹の> # どうもバグっぽい

ということで、バグではなく、むしろそれなりの理由を持つ現在の
仕様と言った方が良いようです。


〔ツリー構成〕

【291】 eps出力で波線間隔の変更 2004/8/11(水)16:43 初心者 (244)
┣【292】 re(1):eps出力で波線間隔の変更 2004/8/11(水)23:12 松田七美男 (331)
┣【293】 re(2):eps出力で波線間隔の変更 2004/8/11(水)23:20 初心者 (699)
┣【294】 re(1):eps出力で波線間隔の変更 2004/8/12(木)01:36 松田七美男 (421)
┣【295】 re(2):eps出力で波線間隔の変更 2004/8/12(木)10:24 初心者 (372)
┣【296】 re(3):eps出力で波線間隔の変更 2004/8/12(木)11:11 松田七美男 (250)
┣【297】 re(4):eps出力で波線間隔の変更 2004/8/12(木)11:25 初心者 (314)
┣【298】 re(5):eps出力で波線間隔の変更 2004/8/12(木)12:02 松田七美男 (215)
┣【299】 re(6):eps出力で波線間隔の変更 2004/8/12(木)14:50 初心者 (419)
┣【301】 re(7):eps出力で波線間隔の変更 2004/8/12(木)17:16 松田七美男 (652)
┣【302】 re(8):eps出力で波線間隔の変更 2004/8/12(木)17:42 初心者 (595)
┣【303】 re(9):eps出力で波線間隔の変更 2004/8/12(木)20:20 竹の (331)
┣【305】 re(10):eps出力で波線間隔の変更 2004/8/12(木)21:03 初心者 (346)
┣【306】 re(11):eps出力で波線間隔の変更 2004/8/12(木)21:52 竹の (485)
┣【307】 re(12):eps出力で波線間隔の変更 2004/8/12(木)21:56 初心者 (87)
┣【309】 re(13):eps出力で波線間隔の変更 2004/8/12(木)22:32 竹の (301)
┣【315】 re(14):eps出力で波線間隔の変更 2004/8/15(日)21:31 竹の (1929)
┣【312】 re(5):eps出力で波線間隔の変更 2004/8/13(金)01:49 松田七美男 (314)
┣【317】 re(6):eps出力で波線間隔の変更 2004/8/16(月)12:11 初心者 (71)
┣【308】 re(12):eps出力で波線間隔の変更 2004/8/12(木)22:30 kakuto (556)
┣【310】 re(13):eps出力で波線間隔の変更 2004/8/12(木)22:34 竹の (53)
┣【311】 re(14):eps出力で波線間隔の変更 2004/8/12(木)23:00 kakuto (160)
┣【314】 re(15):eps出力で波線間隔の変更 2004/8/15(日)12:29 kakuto (260)

前の画面〕 〔クリックポイント〕 〔最新の一覧〕 〔全て読んだことにする〕〔全て読んだことにして終了〕 〔終了

※ 『クリックポイント』とは一覧上から読み始めた地点を指し、ツリー上の記事を巡回しても、その位置に戻ることができます.