Javaの道 Javaに関する
 ニュースJava基本Servlet・JSPオープンソースFAQ掲示板
Javaの道 >  掲示板 >  掲示板(破線によるライン描画ではみ出る。)
閲覧数:1391
掲示板(破線によるライン描画ではみ出る。)
名前
題名 破線によるライン描画ではみ出る。
質問内容

質問を評価する
(0ポイント)
どなたか、お知恵を拝借させてください。
Appletで下記のような破線を設定し、座標でラインを描画するのですが、終端側の指定した座標以上に破線が描画されます。何が原因かもわからず。回避策は、あるのでしょうか?
 環境:JDK7、Windows7

 コード:
   public void paint(Graphics g){
    Graphics2D g2D = (Graphics2D)g;
    float[] dash = {5.0f,5.0f};
    BasicStroke bs = new BasicStroke(1,
            BasicStroke.CAP_BUTT,
            BasicStroke.JOIN_MITER,
            1.0f, dash, 0.0f);

    g2D.setStroke(bs);
    g2D.drawLine(-100000, 100000, 200, 200);
      }
  なぜか、終端側のX=200、Y=200を超えて描画される。
質問日時 2013-02-27 16:14:35
名前
匿名
回答内容

回答を評価する
(0ポイント)
ちゃんと見てないけど、線の幅は考慮してる?
回答日時 2013-02-27 20:18:41
名前
回答内容

回答を評価する
(0ポイント)
「BasicStroke」メソッドで線幅=1で描画しているのですが、明らかに20ピクセルほど終端の座標から飛び出して、描画されます。
回答日時 2013-02-28 09:07:10
名前
回答内容

回答を評価する
(0ポイント)
始点が終点から遠過ぎて誤差が出るのでしょうか?
もっと短い線にしたらいかがでしょうか、どうせ見えないんですから。
例えば g2D.drawLine(0, 399, 200, 200);
とか g2D.drawLine(-1000, 1396, 200, 200);
回答日時 2013-03-01 05:28:41
名前
匿名
回答内容

回答を評価する
(0ポイント)
一応 JDK 7u? の ? がいくつかきいておこうか?
回答日時 2013-03-01 11:17:24
名前
回答内容

回答を評価する
(0ポイント)
「仙人」さん、「匿名」さん、ありがとうございます。
某Appletでスクロール操作があり、誤魔化せない状態です。JavaDoc等で調べてはいるのですが、該当する内容が見つけれない状態です。

JDKは、jdk-7u3-windows-i586です。

宜しくお願い致します。
回答日時 2013-03-01 12:00:03
名前
匿名
回答内容

回答を評価する
(0ポイント)
過去のバージョンの不具合対応の影響なのかも


http://bugs.sun.com/bugdatabase/view_bug.do?
bug_id=4774960
回答日時 2013-03-05 14:45:47
名前
回答内容

回答を評価する
(0ポイント)
遅れましたが、「匿名」さん、情報をありがとうございます。直接、影響があるかどうか、判断が難しいですね。もう少し、調べてみます。
回答日時 2013-03-11 15:38:24

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。



このページのトップへ
 ニュースJava基本Servlet・JSPオープンソースFAQ掲示板
Javaの道_CopyrightJavaの道