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

лабораторная 4-6 / JImageDisplay

.java
Скачиваний:
2
Добавлен:
31.05.2023
Размер:
2 Кб
Скачать
import javax.swing.*;
import java.awt.image.*;
import java.awt.*;
// Класс JImageDisplay даст возможность нам отображать наши фракталы
public class JImageDisplay extends JComponent{
    // Экземпляр буферизованного изображения. Управляет изображением, содержимое которого мы можем писать.
    private BufferedImage myImage;
    // Конструктор принимает целые значения ширины и высоты и инициализирует
    // его объект BufferedImage должен быть новым изображением с такой шириной и высотой типа изображения TYPE_INT_RGB.
    public JImageDisplay(int width, int height){
        myImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
    // Вызываем метод setPreferredSize() родительского класса с заданной шириной и высотой.
        Dimension imageDimension = new Dimension(width, height);
        super.setPreferredSize(imageDimension);
    }
    // Реализация суперкласса paintComponent(g) вызывает, что границы и черты нарисованы правильно, втягивается в компонент.
    public void paintComponent(Graphics g){
        super.paintComponent(g);
        g.drawImage(myImage, 0, 0, myImage.getWidth(), myImage.getHeight(), null);
    }
    // Метод устанавливает все пиксели в данных изображения черными.
    public void clearImage(){
        for (int i=0; i < myImage.getWidth(); i++)
            for (int j=0; j < myImage.getHeight(); j++)
                myImage.setRGB(i, j,0);
    }
    // Устанавливает пиксель определенного цвета.
    public void drawPixel (int x, int y, int rgbColor){
        myImage.setRGB(x, y, rgbColor);
    }
    //Метод для получения изображения из другого класса
    public BufferedImage getImage() {
        return myImage;
    }
}
Соседние файлы в папке лабораторная 4-6