JavaScript

Графический редактор в Java: создание и работа с примерами

Lorem ipsum dolor

Сложная графика в Java, как и во многих языках программирования, реализуется с использованием дополнительных библиотек и специальных классов. Выбор той или иной библиотеки будет зависеть от того, что требуется реализовать в собственной программе. Если вы разрабатываете небольшое Андроид-приложение, тогда нужно будет использовать одни библиотеки. Если разрабатываете полноценную компьютерную 3D-игру, тогда нужны будут другие инструменты.

Java — это многофункциональный язык. С его помощью можно разработать приложение любой сложности, которое будет функционировать на всех устройствах, поддерживающих виртуальную машину Java. Java и без дополнительных библиотек способен на многое. Что касается графика: внутри него присутствуют инструменты, встроенные по умолчанию, при помощи которых происходит рисование простых фигур. Например:

  • прямоугольник,

  • квадрат,

  • точка,

  • круг, 

  • и др.

Мы не будем сильно углубляться в реализацию графики на Java, но краткий обзор на основные инструменты для работы с графикой в Java вы получите.

Графика в Java

Для графики в Java используют разные библиотеки, как встроенные, так и подключаемые. Например:

  • AWT,

  • Swing,

  • Java 2D,

  • DnD,

  • JavaFX,

  • Qt Jambi,

  • SWT,

  • JavaServer Faces,

  • ImageJ,

  • и др.

Рассмотрим самые популярные и часто используемые из них:

  1. Библиотека AWT— это Abstract Window Toolkit. Одна из первых библиотек для работы с графикой в Java. Обеспечивает высокую скорость работы, подходит для простой графики и не подходит для создания сложных графических элементов. По своим возможностям очень близка к встроенной библиотеке. Раньше активно применялась в Java-разработке, но со временем ее использование «сходит на нет».

  2. Библиотека Swing. Отличается более продвинутой функциональностью по сравнению с AWT. Подходит для создания 2D-графики в Java-программах. При помощи нее можно создавать сложные графические элементы. Первые версии библиотеки не отличались производительностью, но со временем эта проблема исчезла. На сегодняшний день Swing является одним из самых популярных инструментов благодаря своим возможностям и доступной документации на разных языках. С этой библиотекой справятся даже новички, которое никогда не имели дело с графикой в Java.

  3. Библиотека SWT — Standard Widget Toolkit. Это «детище» компании IBM. Довольно «старый» инструмент для графики в Java, который зарекомендовал себя с хорошей стороны. Работает библиотека достаточно быстро, однако отличается от своих альтернатив лишней сложностью, поэтому новичкам довольно трудно с ней разобраться.

  4. JavaFX. Это «прорывной» инструмент, который использует внутри себя «конвейерный подход». За счет этого графика в Java воспроизводится быстро, что ускоряет работу готового приложения и работу над самим приложением. Это продукт компании Oracle, что делает его совместимым с другими Java-продуктами, ведь, как известно, компания Oracle «владеет» языком Java.

Примитивная графика в Java

«Примитивная графика» в Java — это рисование простых геометрических фигур. Чаще всего такие действия выполняются встроенными инструментами либо библиотекой AWT. Для примитивной графики в Java присутствуют 2 класса:

  • Graphics;

  • Graphics2D.

Класс «Graphics» формируется по такому шаблону:

public void paint(Graphics f) {

  /*здесь должно быть описание методов для реализации примитивной графики*/

      };

 

Примитивная графика в Java: примеры

Приведем несколько примеров, как в Java «начертить» простую графику без использования дополнительных библиотек.

Чертим прямую линию

public void paint(Graphics f) {

    f.drawLine(40, 50, 380, 50)

    };

 

где, 40 и 50 — координаты «x и y», а 380 и 50 — координаты конца прямой.

Задаем расцветку прямой

public void paint(Graphics f) {

    Color oldColor = f.getColor(); //фиксируем исходную расцветку

    Color newColor = new Color (1, 1, 255)//формируем новую расцветку

    f.setColor(newColor)//определяем новую расцветку

    f.drawLine(40, 50, 380, 50)//выводим нашу прямую с новой расцветкой

    f.setColor(oldColor);//определяем исходную расцветку

};

 

Задаем цвет фона

public void paint(Graphics f) {

    mainFrame.setBackground(Color.green);

    };

 

Рисуем прямоугольник

public void paint(Graphics f) {

    f.drawRect(40, 50, 380, 50)

  };

 

где 40 и 50 — координаты верхнего левого угла, 380 — длина, а 50 — высота.

Рисуем прямоугольник и закругляем ему углы

public void paint(Graphics f) {

    f.drawRoundRect(40, 50, 380, 50, 40, 35)

  };

 

где первые 4 аргумента как и в примере выше, 40 — ширина прямоугольника, в который вписан овал сопряжения, а 35 — высота прямоугольника, в который вписан овал сопряжения.

Рисуем овал

public void paint(Graphics f) {

    f.drawOval(30, 100, 140, 70)

  };

 

где числа — это аргументы прямоугольника, в который вписан овал.

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

Заключение

Графика в Java требует определенных навыков работы с самим языком и дополнительными библиотеками. Мы показали, как происходит рисование примитивных фигур. Однако примитивными фигурами невозможно разработать полноценную 3D-игру. Для 3D-игры на Java нужны совсем другие знания.

Схожие статьи

Как подключить класс в Java, все тонкости импорта класса
JavaScript

Как подключить класс в Java, все тонкости импорта класса

Что лучше: Java или C? Сравнительная характеристика, плюсы и минусы
JavaScript

Что лучше: Java или C? Сравнительная характеристика, плюсы и минусы

Особенности работы с файлами в Java: запись и считывание
JavaScript

Особенности работы с файлами в Java: запись и считывание

Реализация паттерн Singleton Java (Одиночка): подводные камни
JavaScript

Реализация паттерн Singleton Java (Одиночка): подводные камни

×