下面是我嘗試繪製線條試圖根據雙打畫線,但沒有顯示?
package gps;
import java.awt.*;
import java.awt.geom.Line2D;
import java.util.*;
import javax.swing.*;
public class RoadMap extends JPanel {
public void paintComponent(Graphics2D g)
{
super.paintComponent(g);
g.setColor(Color.blue);
for(int i = 0; i < Graph.getEdges().length; i++)
{
Shape s = new Line2D.Double(Graph.vMap.get(Graph.getEdges()[i].i1).x,
Graph.vMap.get(Graph.getEdges()[i].i1).y,
Graph.vMap.get(Graph.getEdges()[i].i2).x,
Graph.vMap.get(Graph.getEdges()[i].i2).y);
g.draw(s);
}
}
}
的Graph.vMap.get(Graph.getEdges()[i].i2).x
和Graph.vMap.get(Graph.getEdges()[i].i2).y
訪問x
和y
值線的端點類,我已經測試,它返回正確的價值觀。然而,沒有什麼在我的JFrame中顯示出來。嘗試在for循環之外繪製其他具有設置值的行實際工作。
什麼是你的畫線典型'x'和'y'值? – copeg
x1 = 43.12929,x2 = 43.12976,y1 = -77.626956,y2 = -77.62679 – kevsta322
由這些值定義的線的端點相差一個像素的分數。如果你想看到這麼小的線條,你將不得不縮放它們,以便線條的長度變得大於一個像素。 – copeg