Witam, uczę się programować w Javie i chciałem napisać aplikację która będzie rysować prostą funkcję liniową. Wszystko działa dobrze pod warunkiem że współczynnik a = 0. W przeciwnym wypadku funkcja jest źle rysowana, nie mogę sobie z tym poradzić może ktoś mógłby mi coś podpowiedzieć ? Z góry dziękuję za pomoc.
public FunkcjaLiniowa() throws IOException
{
initComponents();
układWspółrzędnych();
}
public void układWspółrzędnych() throws IOException
{
File file = new File("C:\\Users\\Jare\\Dysk Google\\NetBeansProjects\\Funkcja_Liniowa\\ukad_wsprzdnych.bmp");
BufferedImage bi = ImageIO.read(file);
ImageIcon imgIcon = new ImageIcon(bi);
labelFoto.setIcon(imgIcon);
}
public void paint(Graphics g, int x, int y)
{
g.setColor(Color.red);
g.drawLine(x, y, x, y);
}
private void bRysujActionPerformed(java.awt.event.ActionEvent evt) {
int x,y,i = 400, b = 1, a = 1;
a = Integer.parseInt(jTextField1.getText());
b = Integer.parseInt(jTextField2.getText());
b *= 40; b *= (-1);
x = 0;
y = 0;
while( i >= 0 )
{
y = a * i + b;
paint(labelFoto.getGraphics(),x,y);
x++;
i--;
}
}