Учебники

JOGL — Основы рисования

OpenGL API предоставил примитивные методы для рисования основных графических элементов, таких как точка, вершина, линия и т. Д. Используя эти методы, вы можете создавать формы, такие как треугольник, многоугольник и круг. В обоих, 2D и 3D измерениях. В этой главе вы узнаете, как нарисовать базовую линию, используя JOGL в Java-программе.

Рисование объектов

Для доступа к программам, которые специфичны для аппаратного обеспечения и платформ операционной системы и где библиотеки написаны на других языках, таких как C и C ++ (нативные приложения), Java использует среду программирования, называемую Java Native Interface (JNI) . JOGL использует этот интерфейс для доступа к функциям OpenGL, как показано на следующей диаграмме.

JNI

Все четыре метода интерфейса GLEventListener имеют код (методы java JOGL) для внутреннего вызова функций OpenGL. Наименование этих методов JOGL также похоже на соглашение об именах OpenGL. Если имя функции в OpenGL — glBegin () , оно используется как gl.glBegin () .

Всякий раз, когда вызывается метод gl.glBegin () java JOGL, он внутренне вызывает метод glBegin () OpenGL. Это является причиной установки файлов собственной библиотеки в пользовательской системе во время установки JOGL.

Метод отображения ()

Это важный метод, который содержит код для разработки графики. Для этого требуется интерфейсный объект GLAutoDrawable в качестве параметра.

Метод display () изначально получает контекст OpenGL, используя объект интерфейса GL (GL наследует интерфейс GLBase, который содержит методы для генерации всех объектов контекста OpenGL). Поскольку этот урок посвящен JOGL2, давайте сгенерируем объект GL2.

Следующий фрагмент кода показывает, как сгенерировать объект GL2 —

//Generating GL object
GL gl = drawable.getGL();
GL gl = drawable.getGL();

//Using this Getting the Gl2 Object
//this can be written in a single line like
final GL2 gl = drawable.getGL().getGL2();

Используя объект интерфейса GL2, можно получить доступ к членам этого интерфейса, которые, в свою очередь, предоставляют доступ к функциям OpenGL [1.0 … 3.0].

Рисование линии

Интерфейс GL2 содержит огромный список методов, но здесь обсуждаются три основных важных метода, а именно glBegin () , glVertex () и glEnd () .

Sr.No. Методы и описание
1

glBegin ()

Этот метод запускает процесс рисования линии. В качестве параметра он принимает предопределенное строковое целое число «GL_LINES», которое наследуется от интерфейса GL.

2

glVertex3f () / glVertex2f ()

Этот метод создает вершину, и мы должны передать координаты в качестве параметров 3f и 2f, которые обозначают 3-мерные координаты с плавающей точкой и 2-мерные координаты с плавающей точкой соответственно.

3

glEnd ()

заканчивает линию

glBegin ()

Этот метод запускает процесс рисования линии. В качестве параметра он принимает предопределенное строковое целое число «GL_LINES», которое наследуется от интерфейса GL.

glVertex3f () / glVertex2f ()

Этот метод создает вершину, и мы должны передать координаты в качестве параметров 3f и 2f, которые обозначают 3-мерные координаты с плавающей точкой и 2-мерные координаты с плавающей точкой соответственно.

glEnd ()

заканчивает линию

Ниже дана программа для рисования базовой линии с использованием JOGL —