La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Herramientas y bibliotecas para gráficas

Presentaciones similares


Presentación del tema: "Herramientas y bibliotecas para gráficas"— Transcripción de la presentación:

1 Herramientas y bibliotecas para gráficas
M.I.A Daniel Alejandro García López

2 Software de Gráficas Paquetes generales de programación
Paquetes de aplicaciones especificas

3 Paquete de programación
Ofrece un amplio conjunto de funciones gráficas que se pueden utilizar en un lenguaje de programación de alto nivel. Generar componentes de la imagen( líneas, polígonos, circunferencias, etc.) Determinar valores de color e intensidad, seleccionar vistas y aplicar transformaciones.

4 Paquete de aplicaciones especificas
Diseñado para personas que no son programadores. La interfaz para la rutinas de gráficas de tales paquetes permite un fácil uso. Existen paquetes que están diseñados para utilizarse con especificaciones de coordenadas cartesianas.

5 Breve historia del software gráfico
1977: primer sistema para gráficos 2D (Core Graphic System) 1984: primer API industrial desarrollada por Silicon Graphics para gráficos 3D (Graphics Library - GL) 1985: primer estándar oficial para un API de gráficos 2D (Graphical Kernel System - GKS)

6 Breve historia del software gráfico
1988: primer estándar oficial para un API de gráficos 3D (PHIGS) 1992: estándar que integra PHIGS con el X-windows (PEX) 1993: primer estándar industrial portable a diversas plataformas hardware (OpenGL) 1993: API de alto nivel sobre OpenGL que sigue paradigmas similares a PHIGS (OpenInventor)

7 Breve historia del software gráfico
1995: Microsoft lanza una API propietaria para competir con OpenGL (Direct3D/DirectX) 1997: desarrollado a partir de OpenInventor surge el primer lenguaje para gráficos 3D y realidad virtual en la web (Virtual Reality Modelling Language - VRML)

8 Breve historia del software gráfico
1999: Java ya tiene su API: Java3D : extensiones de OpenGL y DirectX para hardware gráfico programable (GPU) 2003+: lenguajes de alto nivel para GPU: Cg (NVIDIA), HLSL(Microsoft), OpenGL 2.0 JOGL “interface” de Java con OpenGL 2.0

9 OpenGL

10 OpenGL Desarrollada originalmente por Silicon Graphics Inc.
Especificación estándar para escribir aplicaciones gráficas Multilenguaje Multiplataforma Gráficos 2D y 3D Usado en CAD, Realidad Virtual, Simulación.

11 OpenGL Su función consiste en aceptar primitivas tales como puntos, líneas y polígonos y convertirlas a pixeles. El proceso es realizado por una pipeline gráfica conocida como máquina de estados de OpenGL Esta basada en procedimientos de bajo nivel, contrario a las API’s descriptivas. La rasterización es el proceso por el cual una imagen descrita en un formato gráfico vectorial se convierte en un conjunto de píxeles o puntos para ser desplegados en un medio de salida digital, como una pantalla de computadora, una impresora electrónica o una imagen de mapa de bits

12 Propósitos de OpenGL Ocultar la complejidad de la interfaz con las diferentes tarjetas gráficas. Ocultar las diferentes capacidades de las diversas plataformas de hardware, aunque las implementaciones utilicen emulación.

13 Bibliotecas de utilidades
Añaden características no disponibles en el propio OpenGL GLU: Ofrece funciones de dibujo de alto nivel basadas en primitivas de OpenGL GLUT: API multiplataforma que facilita una rudimentaria funcionalidad para el manejo de ventanas e interacción por medio de teclado y ratón

14 Biblioteca de utilidades
GLUI: Interfaz de usuario basada en GLUT; proporciona elementos de control tales como botones, cajas de selección y spinners.

15 Direct3D

16 Direct3D Es parte de DirectX Propiedad de Microsoft
Compuesto por dos APIS: modo inmediato y modo retenido. Se comunica directamente con los drivers de pantalla

17 Propósito de Direct3D Facilitar el manejo y trazado de entidades gráficas elementales, como líneas, polígonos y texturas Efectuar transformaciones geométricas Proveer una interfaz con el hardware de aceleración gráfica

18 Modos de presentación Modo exclusivo: Ninguna otra aplicación podrá hacer uso de la pantalla Modo en ventana: Se muestra en una ventana. Colabora con el GDI.

19 Java3D

20 Java3D Es un proyecto que permite crear entornos tridimensionales en el lenguaje Java. Corre sobre OpenGL o Direct3D Es una extensión del JDK 2 de Java Proporciona una colección de constructores de alto nivel para crear y manipular geometrías 3D Permite diseñar la escena basándose en objetos geométricos, y no en triángulos

21 Propósito de Java3D Proporcionar un amplio conjunto de utilidades que permitan crear mundos en 3D interesantes Proporcionar un paradigma de programación orientado a objeto de alto nivel para permitir a los desarrolladores generar sofisticadas aplicaciones y applets de forma rápida.

22 Propósitos de Java3D Proporcionar soporte a cargadores en tiempo de ejecución. Esto permite que Java3D se adapte a un gran número de formatos de ficheros, como pueden ser formatos específicos de distintos fabricantes de CAD, formatos de intercambio o VRML.

23 DirectX vs OpenGL Proporciona gráficos y funcionalidad de audio
Enfoque orientado a objetos de C++ Tiene soporte para los controladores Es para plataformas de windows. Mejor rendimiento Es complejo de aprender Proporciona solo funcionalidad de gráficos Usado en diferentes lenguajes de procedimientos Es poco el soporte de los controladores Es independiente de las plataformas Rendimiento promedio Es mas fácil su aprendizaje

24 OpenGL vs Java3D Funcionalidad solo para gráficos
Enfoque de procedimientos Soporte pobre de controladores Independiente de plataforma Mejor rendimiento Mas fácil aprendizaje Funcionalidad solo para graficos Enfoque orientado a objetos de Java Soporte pobre de controladores Independiente de plataforma Menor rendimientos Más fácil aprendizaje Corre sobre OpenGL o DirectX

25 Otras API’s propietarias
Glide desarrollado por 3dfx QuickDraw 3D CUDA: conjunto de herramientas de desarrollo creadas por nVidia que permiten a los programadores usar una variación del lenguaje de programación C para codificar algoritmos en GPUs de nVidia.


Descargar ppt "Herramientas y bibliotecas para gráficas"

Presentaciones similares


Anuncios Google