Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Graph

.java
Скачиваний:
0
Добавлен:
15.06.2014
Размер:
2 Кб
Скачать
import javax.swing.*;
import java.awt.*;


public class Graph extends JPanel {
    private final int GRAPH_WIDTH = 200;
    private final int GRAPH_HEIGHT= 180;

    private Color graphColor = Color.GRAY;

    private double X[];
    private double Y[];
    private boolean graphEnabled = false;

    public Graph(Color color)
    {
        graphColor = color;
        this.setPreferredSize(new Dimension(GRAPH_WIDTH, GRAPH_HEIGHT));
    }

    public void setX(double[] value) {
        X = value;
    }

    public void setY(double[] value) {
        Y = value;
    }

    public void enableGraph(boolean value) {
        graphEnabled = value;
    }

    @Override
    public void paint(Graphics g) {
        Graphics2D g2 = (Graphics2D) g;
        super.paintComponent(g2);

        if (graphEnabled) {
            g2.setStroke(new BasicStroke(2.0f));
            g2.setColor(graphColor);

            Point lastPoint = new Point((int) (X[0] * GRAPH_WIDTH), GRAPH_HEIGHT - (int) (Y[0] * GRAPH_HEIGHT));
            for (int i = 0; i < X.length; i++) {
                Point nextPoint = new Point((int) (X[i] * GRAPH_WIDTH), GRAPH_HEIGHT - (int) (Y[i] * GRAPH_HEIGHT));
                g2.drawLine(lastPoint.x, lastPoint.y, nextPoint.x, nextPoint.y);
                lastPoint = nextPoint;
            }
            g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);

            g2.setFont(new Font("SansSerif", Font.PLAIN, 12));
            g2.drawString(this.getName(), 10, 10);
        }
        setBounds(getX(), getY(), GRAPH_WIDTH, GRAPH_HEIGHT);

    }
}
Соседние файлы в предмете Модели и методы анализа проектных решений
  • #
    15.06.20141 Кб0ComputeGrid$1.class
  • #
    15.06.20143 Кб0ComputeGrid.class
  • #
    15.06.20142 Кб0ComputeGrid.form
  • #
    15.06.20142 Кб0ComputeGrid.java
  • #
    15.06.201494 б0Denis_Vizigin.xml
  • #
    15.06.20142 Кб0Graph.java
  • #
    15.06.20142 Кб1GridMethod.java
  • #
    15.06.201410 Кб0misc.xml
  • #
    15.06.2014425 б2ModelA4.iml
  • #
    15.06.20147 б1name
  • #
    15.06.2014115 б0profiles_settings.xml