Oscar Gabriel Caballero Martínez - Gráficos por computadora usando JOGL

Здесь есть возможность читать онлайн «Oscar Gabriel Caballero Martínez - Gráficos por computadora usando JOGL» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: unrecognised, на испанском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Gráficos por computadora usando JOGL: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Gráficos por computadora usando JOGL»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Este documento está dirigido a personas interesadas en la generación de gráficos por computadora con el lenguaje de programación Java. A lo largo del texto se descubrirá que la mayoría de los trabajos que existen para la generación de gráficos por computadora están basados en el uso de las librerías conocidas como OpenGL. Las referencias más accesibles están trabajadas con el lenguaje de programación C, lenguaje principal en el que se han creado las funciones de la librería. El reto consiste en presentar el uso de estas librerías con el lenguaje de programación Java, de ahí las siglas JOGL (Java Open Graphics Library o Java OpenGL). La importancia del presente trabajo radica en mostrar la facilidad con la cual los programas que se encuentran en las referencias del presente documento también pueden ser escritos en el lenguaje Java, y así poseer un panorama más amplio que ayude a la profundización del conocimiento para la creación de las gráficas por computadora.

Gráficos por computadora usando JOGL — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Gráficos por computadora usando JOGL», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Al oprimir el botón de finalizar ( Finish ) se tendrá abierto el editor para transcribir programas en Java que genera un archivo *.class. Para ver cómo se trabaja con JOGL se transcribirá el siguiente código [jogamp, 2016].

1. package Graficacion;

2.

3. import com.jogamp.opengl.GLAutoDrawable;

4. import com.jogamp.opengl.GLEventListener;

5. import com.jogamp.opengl.awt.GLCanvas;

6. import com.jogamp.opengl.util.Animator;

7. import java.awt.Frame;

8. import java.awt.event.WindowAdapter;

9. import java.awt.event.WindowEvent;

10. /**

11. *

12. * @author Caballero Martínez Oscar Gabriel

13. * Caballero Jiménez Oscar Emilio

14. * Caballero Jiménez Mariana

15. * Jiménez Jacinto Verónica

16. *

17. * @Group 2803

18. *

19. * @Fecha 10/febrero/2016

20. *

21. * @Materia Graficación por Computadora

22. *

23. */

24. public class Ventana implements GLEventListener {

25. public static void main(String[] args) {

26. Frame frame = new Frame("Ventana.java");

27. GLCanvas canvas = new GLCanvas();

28. canvas.addGLEventListener(new Ventana());

29. frame.add(canvas);

30. frame.setSize(640, 480);

31. final Animator animator = new Animator(canvas);

32. frame.addWindowListener(new WindowAdapter() {

33. @Override

34. public void windowClosing(WindowEvent e) {

35. // Run this on another thread than the AWT event queue to

36. // make sure the call to Animator.stop() completes before

37. // exiting

38. new Thread(new Runnable() {

39. public void run() {

40. animator.stop();

41. System.exit(0);

42. }

43. }).start();

44. }

45. });

46. // Center frame

47. frame.setLocationRelativeTo(null);

48. frame.setVisible(true);

49. animator.start();

50. }

51. @Override

52. public void init(GLAutoDrawable glad) {

53. }

54. @Override

55. public void dispose(GLAutoDrawable glad) {

56. }

57. @Override

58. public void display(GLAutoDrawable glad) {

59. }

60. @Override

61. public void reshape(GLAutoDrawable glad, int i, int i1, int i2, int i3){

62. }

63. }

Código 2.1 Ventana.java

Al ejecutar el programa anterior tendremos la siguiente salida.

Figura 23 Programa Ventana Fuente Elaboración propia Como siempre se - фото 13

Figura 2.3 Programa “ Ventana ”. Fuente: Elaboración propia.

Como siempre se trabajará con el mismo código, se escribirá en la plantilla original de los archivos class que crea NetBeans el código anterior pero con generalidades. Para ello es necesario abrir la plantilla.

Figura 24 Menú para modificar la plantilla de los class Fuente Elaboración - фото 14

Figura 2.4 Menú para modificar la plantilla de los class.

Fuente: Elaboración propia.

Posteriormente, en las plantillas asociadas a Java se abre la referente a los archivos class con el editor.

Figura 25 Abrir con el editor los class Fuente Elaboración propia Y se - фото 15

Figura 2.5 Abrir con el editor los class

Fuente: Elaboración propia.

Y se escriben las siguientes líneas:

1. import com.jogamp.opengl.GLAutoDrawable;

2. import com.jogamp.opengl.GLEventListener;

3. import com.jogamp.opengl.awt.GLCanvas;

4. import com.jogamp.opengl.util.Animator;

5. import java.awt.Frame;

6. import java.awt.event.WindowAdapter;

7. import java.awt.event.WindowEvent;

8. </#if>

9. /**

10. *

11. * @authors Caballero Jiménez Mariana

12. * Caballero Jiménez Oscar Emilio

13. * Caballero Martínez Oscar Gabriel

14. * Jiménez Jacinto Verónica

15. *

16. * @Tema: Libro

17. *

18. * @Fecha ${date}

19. *

20. */

21. public class ${name} implements GLEventListener {

22. public static void main(String[] args) {

23. Frame frame = new Frame("${name}.java");

24. GLCanvas canvas = new GLCanvas();

25. canvas.addGLEventListener(new ${name}());

26. frame.add(canvas);

27. frame.setSize(640, 480);

28. final Animator animator = new Animator(canvas);

29. public void windowClosing(WindowEvent e) {

30. // Run this on another thread than the AWT event queue to

31. // make sure the call to Animator.stop() completes before

32. // exiting

33. new Thread(new Runnable() {

34. public void run() {

35. animator.stop();

36. System.exit(0);

37. }

38. }).start();

39. }

40. });

41. // Center frame

42. frame.setLocationRelativeTo(null);

43. frame.setVisible(true);

44. animator.start();

45. }

46. @Override

47. public void init(GLAutoDrawable glad) {

48. }

49. @Override

50. public void dispose(GLAutoDrawable glad) {

51. }

52. @Override

53. public void display(GLAutoDrawable glad) {

54. }

55. @Override

56. public void reshape(GLAutoDrawable glad, int i, int i1, int i2, int i3){

57. }

58. }

Código 2.2 Plantilla para las clases

El ${name} de la línea 21 y el ${date} de la línea 18 son variables del sistema que toma la plantilla para colocarlos en el lugar correspondiente. ${name} es el nombre del programa y ${date} es la fecha actual de la máquina local.

Nota: Esto va a quedar estipulado siempre en todos los programas que se hagan durante el trabajo, si se hace alguna modificación a esto en cada programa se especificarán únicamente las funciones que se modificarán.

De la línea 1 a la línea 7 se importan paquetes que se van a utilizar todo el tiempo, especificados para lo siguiente:

1. com.jogamp.opengl.GLAutoDrawablees la clase con la que se trabajan los objetos que permiten dibujar en el lienzo.

2. import com.jogamp.opengl.GLEventListeneres la clase que ayuda a escuchar los eventos que ocurren en el lienzo.

3. import com.jogamp.opengl.awt.GLCanvases la clase que permite colocar el lienzo para dibujar en el Frame .

4. com.jogamp.opengl.util.AnimatorEs la clase que permite se esté animando la ejecución del programa, y así permitir que el dibujo pueda ser manipulado. Nota: para algunos programas no se necesita que esté redibujándose el dibujo, así que se eliminará. Se especificará dónde se hace.

5. import java.awt.Framees la clase que permite colocar el lienzo (GLCanvas) para poder dibujar.

6. import java.awt.event.WindowAdapterClase que permite colocar al Frame en cualquier parte de la pantalla y a su vez permite adaptar las acciones que se realizarán en el momento de cerrar la ventana. Dichas instrucciones se componen de la línea 29 a la 40, donde por medio de hilos se ligan las acciones a seguir.

7. java.awt.event.WindowEventClase que se dispara en el momento que ha ocurrido algo en la ventana que contiene al Frame y a su vez, al Canvas .

Las funciones con las que trabaja JOGL2 [jogamp, 2016] en cada programa son:

void display( GLAutoDrawable glad ) (línea 53): es llamado por el objeto de interfaz de GLAutoDrawable para iniciar la representación de OpenGL por el cliente; es decir, este método contiene la lógica utilizada para dibujar los elementos gráficos que utilizan las API de OpenGL

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Gráficos por computadora usando JOGL»

Представляем Вашему вниманию похожие книги на «Gráficos por computadora usando JOGL» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Gráficos por computadora usando JOGL»

Обсуждение, отзывы о книге «Gráficos por computadora usando JOGL» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x