2013-05-06 1 views
0

Я пытаюсь создать графический интерфейс, который будет отображать 2 точки в линейном графике и нарисовать сегмент линии из этих двух точек.Как построить 2 точки в графике в графическом интерфейсе?

Я не могу найти примеров ни в одном из моих учебников по Java, и почти каждый пример, который я пытаюсь выполнить, слишком сложный для понимания за короткий промежуток времени, который у меня есть.

Есть ли способ объяснить графику легко новичкам на Java?

+2

'почти каждый пример, который я пытаюсь искать слишком сложно, чтобы понять, в коротком промежутке времени, что я have' - это занимает время, чтобы научиться программировать. Мы здесь не для того, чтобы написать код для вас, только укажем вам в правильном направлении. Поэтому вы можете начать с 'Graphics.drawLine (...)'. Или, может быть, вы хотите 'Graphics.drawPolyline()' – camickr

+0

. Вы можете начать с просмотра [Выполнение пользовательской живописи] (http://docs.oracle.com/javase/tutorial/uiswing/painting/) и [2D Graphics] (http://docs.oracle.com/javase/tutorial/2d/) и/или [JFreeChart] (http://www.jfree.org/jfreechart/) – MadProgrammer

+0

Эй, если вы новичок в программировании, я Я поделился бы с вами сайтом, который действительно помог мне много лет назад (без аффилиации). http://zetcode.com/ У него есть лодку tutes для работы Java2D, как с неигровым, так и с ориентированным на игры аспектом, наряду с tutes для многих других языков. Надеюсь, что это поможет вам на пути к славе программирования Java! – Singular1ty

ответ

1

Используйте холст в качестве поверхности вашего рисунка.

Используйте функцию drawLine(), чтобы нарисовать линию между X1, Y1 и X2, Y2.

Есть много образцов там для этого, такие как: http://mainline.brynmawr.edu/Courses/cs110/fall2003/Applets/CanvasExample/CanvasExample.html

или это: http://www.java2s.com/Code/Java/2D-Graphics-GUI/Drawcanvaswithcolorandtext.htm

Laurence

+0

Вы первый пример устарели - ИМХО, лучше использовать Swing, где возможно – MadProgrammer

+0

Правда ... просто пытаюсь сохранить его очень просто для OP –

+0

Всегда рад за простой :), но вы просто смешались с разными фреймами: P – MadProgrammer

0

Как вы ищете ??

How to draw lines in Java

Short example

И поиск API

Point

Graphics

+0

Вы второй пример демонстрирует очень плохой подход к рисованию ... – MadProgrammer

+0

Это от java2s.com. : D Убей их. – renz

+0

Я бы с удовольствием, но теперь вы только что назвали его жизнеспособным хорошим источником. Не стоит обвинять производство пистолета;) – MadProgrammer

1

В моем личном опыте, самый простой способ рисовать линии в графическом интерфейсе является использование paint (Graphics g). В этом случае используйте g.drawLine (x1, y1, x2, y2); рисовать линию.

import javax.swing.*; 
public class JGraph extends JPanel 
{ 
    public void paint(Graphics g) 
    { 
    g.drawLine(x1,y1,x2,y2); 
    } 
} 

* На стороне записки, система координат для этого метода начинается в левом верхнем углу графического интерфейса объекта выбора в предыдущем коде.

0

рисовать конечную линию я выяснял следующий код:

public void drawUltimate(Graphics g, int x, int y, int x2, int y2){ 
    int ex=0,ey=0,ex2=0,ey2=0, mx, my; 
    mx = x2-x;my = y2-y; 
    //drawLine(jPanel1.getGraphics(), x, y, x2, y2); 
    for (int i=0; i<100; i++){ 
     ex += mx; 
     ey += my; 

     drawLine(jPanel1.getGraphics(), ex2+1, ey2-2, ex, ey); 
     ex2 =ex; ey2 =ey; 
    } 
}