рисуя линию между двумя точками - PullRequest
3 голосов
/ 18 ноября 2010

Привет У меня есть 2 точки (X1,Y1) и (X2,Y2), как я могу провести линию между ними? спасибо

Ответы [ 3 ]

5 голосов
/ 18 ноября 2010

В Swing:

Graphics g;
g.drawLine(X1, Y1, X2, Y2);

ЕСЛИ вы рисуете на JPanel, вы обычно помещаете этот код в метод paintComponent:

@Override
protected void paintComponent(Graphics g) {
    g.drawLine(X1, Y1, X2, Y2);
}

Чтобы увидеть вседоступные методы класса Graphics, см. Javadocs .

2 голосов
/ 18 ноября 2010

Взгляните на метод Graphics.drawLine .

В основном вам нужно переопределить некоторый виджет (например, JPanel) или получить Canvas, а в методе рисования вы сделаете что-то вроде:

graphics.drawLine( p1.x, p1.y, p2.x, p2.y );
0 голосов
/ 18 ноября 2010

Для JFrame вы бы добавили метод рисования, который запускается, когда JVM готова рисовать на JFrame, внутри класса, унаследовавшего класс JFrame. Затем, внутри этого, вы вызываете метод drawLine для графики, как показано (убедитесь, что класс «Графика» был импортирован, и замените X1, Y1, X2, Y2 целыми числами по вашему выбору.)

public void paint(Graphics g) {
    g.drawLine(X1,X2,Y1,Y2);
}
...