Wykres i punkt

0

Witam. Otóż mam taki kod

import javax.swing.*;
import java.awt.*;
import java.awt.geom.Line2D;
import java.awt.geom.Point2D;

public class Linear
{
   public static void main(String[] args)
   {
      EventQueue.invokeLater(new Runnable()
         {
            public void run()
            {
               SimpleFrame frame = new SimpleFrame();
               frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
               frame.setVisible(true);
            }
         });
   }
}

/**
 * Ramka zawierająca panel z komunikatem.
 */
class SimpleFrame extends JFrame
{
   public SimpleFrame()
   {
      setTitle("Wykres");
      setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
      setLocationByPlatform(true);
      // Dodanie panelu do ramki.

      LinearFunction panel = new LinearFunction();
      add(panel);
   }

   public static final int DEFAULT_WIDTH = 500;
   public static final int DEFAULT_HEIGHT = 500;
}

/**
 * Rysowanie wykresu
 */
class LinearFunction extends JPanel
{
   public void paintComponent(Graphics g)
   {
      Graphics2D g2=(Graphics2D) g;

      //Rysowanie ukladu wspolrzednych
      Line2D.Double ox=new Line2D.Double(0,250,500,250);
      Line2D.Double oy=new Line2D.Double(250,0,250,500);
      g2.draw(ox);
      g2.draw(oy);

      //Opisujemy osie    

      //OX
      for(int i=0;i<=500;i=i+50)
          if(i!=250)
          g2.drawString(new Integer(i-250).toString(),i, 260);

      //OY
      for(int i=0;i<=500;i=i+50)
          if(i!=250)
          g2.drawString(new Integer((i-250)*-1).toString(),250, i);

   }

}

I teraz metoda paintComponent odpowiada za rysowanie wykresu funkcji liniowej. Chciałem ro zrobić w ten sposób, że rysuje punkty z klasy Point2D.Double lecz ta klasa nie implementuje interfejsu Shape i nie moge przekazac go do g2. Co mogę w tej sytuacji zrobić?

0

Klasa Point2D definiuje punkt w sensie współrzędne, a nie figura. By rysować punkty możesz użyć jednopikselowej Line2D.

0

Jaki jest powód rysowania linii prostej za pomocą rysowania punktów?

0

No dobrze, że to linia. Ale jak już by miało być coś o zarysach paraboli? To jak by to narysować?

1

Wg mnie lepiej wygląda wykres złożony z odcinków łączących kolejne punkty wykresu.user image
user image

0

Dziękuje za radę. Tak też postąpiłem i się udało. Dzięki wielkie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0