我需要從格式化下列方式文件中的Java之間畫線:畫點之間的直線文件
5 //Number of lines of points
10 10
23 56
15 34
32 67
76 45
我想我將不得不建立兩個數組,然後以某種方式添加這樣的值,但我完全失去了,真的需要一些指導。 任何幫助,將不勝感激!下面的代碼是需要修改以繪製線條的內容。現在它只是繪製點。
代碼:
import javax.swing.*;
import java.awt.*;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
public class Test {
private static final String FILE = "Desktop/Assign2Test1.txt";
private static Point[] points;
public static void main(final String[] args){
try{
final BufferedReader br = new BufferedReader(new FileReader(new File(FILE)));
points = new Point[Integer.parseInt(br.readLine())];
int i = 0;
int xMax = 0;
int yMax = 0;
while(br.ready()){
final String[] split = br.readLine().split("\t");
final int x = Integer.parseInt(split[0]);
final int y = Integer.parseInt(split[1]);
xMax = Math.max(x, xMax);
yMax = Math.max(y, yMax);
points[i++] = new Point(x, y);
}
final JFrame frame = new JFrame("Point Data Rendering");
final Panel panel = new Panel();
panel.setPreferredSize(new Dimension(xMax + 10, yMax + 10));
frame.setContentPane(panel);
frame.pack();
frame.setVisible(true);
frame.repaint();
} catch (final Exception e){
e.printStackTrace();
}
}
public static class Panel extends JPanel {
@Override
public void paintComponent(final Graphics g){
g.setColor(Color.RED);
for(final Point p : points){
g.fillRect((int) p.getX(), (int) p.getY(), 2, 2);
}
}
}
}
我從來沒有與前鄰接矩陣搞砸,我已經變得如此糊塗到放棄的地步。我會以不同的方式發佈我的代碼。我想做一個鄰接矩陣,所以我可以嘗試實現一個我發現的算法。 – JLott
現在你正在哪裏得到問題? – Smit
我不知道如何把一個文件與格式轉換成鄰接矩陣。 – JLott