TEXTO EN OPENGL INTEGRANTES: ACEVEDO DÍAZ ELOISA

Slides:



Advertisements
Presentaciones similares
Arreglos.
Advertisements

Lenguaje C++.
Interprete o máquina real
Módulo Tablero de Control Sesión X Lic. Aarón García López.
Inecuaciones con Valor Absoluto
Tema 5 Sentencias básicas. Sentencia –Línea de código en C Básicas –Entrada de datos desde el teclado –Salida de datos por la pantalla –Asignación de.
Abstracción de Datos Arrays.
Arrays Fundamentos de Programación I
Lenguaje de programación Java
Programación en C para electrónica
Informática I – 4to año Volumen II.
M.I.A Daniel Alejandro García López
Formatos gráficos Mapas de Bits y Gráficos Vectoriales Mapas de Bits
Sistemas de coordenadas de referencia
INTEGRACIÓN.
Repaso para la construcción del intérprete 2012
Programación I Teoría I
JAVIER ALVAREZ PRESENTA
Direcciones, Arreglos y Argumentos de Funciones
Funciones. Programación, Algoritmos y Estructuras de Datos.
Ecuaciones y Resolución de Ecuaciones Lineales
Tema 2: Lenguaje PHP básico
Tipo de Dato Abstracto Tipos de datos:
FUNCIONES EN C.
Genéricos en Java Jaime Ramírez, Ángel Lucas González
1.2 Sintaxis del lenguaje Java.
HTML Formato al texto.
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO
Cadenas de caracteres.
3. INTRODUCCIÓN A LA PROGRAMACIÓN
ARREGLOS Estructuras de datos.
Tablas y Cadenas CONTENIDO Tablas
Herramientas para el acceso directo a memoria en C++
¿Qué es un PUNTERO?: Un puntero es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable. No.
String o Cadenas Prof. Gonzalo Pastor. Cadenas o String ► En C, una cadena o texto se define como un vector de caracteres de longitud determinada que.
Conceptos Básicos de Java
Tema 7: Polimorfismo Antonio J. Sierra. Índice Introducción. Sobrecarga de métodos. Objetos como parámetros. Paso de argumentos. Devolución de objetos.
POO Java Módulo 3 Elementos de programas Identificadores
Clases y objetos La unidad fundamental de programación OO son las clases. Conjunto de métodos y semántica Qué se va a hacer POO Clase: que define la implementación.
Creación de Aplicaciones
Con este método podemos dibujar Líneas y rectángulos en un objeto donde se permita utilizar dicho método, como por ejemplo en los Formularios, los controles.
Técnicas avanzadas de programación Interfaces
PRIMITIVAS DE SALIDA Curso de graficación I.
Tema 3 Entrada y Salida.
LENGUAJE “C” Programación.
Introducción a los punteros
3.1 Declaración de tablas en C
Estructura de un programa en C
Funciones1 PROGRAMACIÓN ESTRUCTURADA EN PSEUDÓCODIGO Profr. Miguel Rodríguez Hernández PROGRAMACIÓN MODULAR O FUNCIONAL.
1 3Tablas o matrices 3.1. Concepto Las tablas corresponden al concepto matemático de matriz. Todos sus elementos deben ser del mismo tipo y se accede a.
Valor X Valor Y Punto (0,0) Coordenadas.
Gonzalo Cascón Barbero Elena Jorge Rico
Fundamentos de Programación
Computación II Repaso de java Karina Figueroa Mora.
MICROSOFT PAINT Microsoft Paint es un programa simple para editar gráficos, este programa esta incluido en Microsoft Windows. Muchas de las opciones.
Términos algoritmo diseñar algoritmo implementar algoritmo
SANTIAGO DIAZ DIAZ JUAN CAMILO CARDOZO 10°A LA SALLE CAMPOAMOR.
CARACTERÍSTICAS Es un lenguaje de programación estructurado de propósito general. Está estrechamente asociado al sistema operativo UNIX, ya que el propio.
2 CREAR UN DOCUMENTO Al comenzar a trabajar con Word, automáticamente se genera un documento en blanco. Pero si se desea, se puede comenzar a trabajar.
Metodología de Programación Clase 1 Leonel Lagos V
Ejemplos: float R[10] = {2, 32, 4.6, 2, 1, 0.5, 3, 8, 0, 12}; float S[] = {2, 32, 4.6, 2, 1, 0.5, 3, 8, 0, 12}; int N[] = {1, 2, 3, 6}; int M[][3] = {
ARREGLOS (arrays).
Bitmap.
Prof. Víctor Aquino Urrutia
 Todas las operaciones que se producen en el teclado y la pantalla de la computadora.  A continuación algunas funciones básicas de entrada y salida.
ARREGLOS. La sintaxis para declarar e inicializar un array será: Tipo_de_variable[ ] Nombre_del_array = new Tipo_de_variable[dimensión]; También podemos.
MEMORIA DINÁMICA.
El contexto gráfico La función paint y update nos suministran el contexto gráfico del applet o del componente, en otros casos, hemos de obtener el contexto.
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ Facultad de Ingeniería de Sistemas Computacionales Programa de Lic. en Informática Educativa Computación.
Transcripción de la presentación:

TEXTO EN OPENGL INTEGRANTES: ACEVEDO DÍAZ ELOISA ALCALA CAMARGO RODRIGO RAMOS GALICIA JUAN CHRISTIAN ROLDÁN SERRATO KAREN LUCERO COMPUTACIÓN GRÁFICA

INTRODUCCION ¿Cómo se dibuja texto con GLUT? El manejo de fuentes de texto es una de las partes débiles de OpenGL. Su implementación es complicada ya que la biblioteca GL sólo proporciona funciones muy primitivas para trazado de bitmaps que obligan a disponer de una librería propia de bitmaps para los caracteres.

DEFINICIÓN DE FUNCIONES GLUT resuelve un poco el dilema de usar texto en OpenGL. glutBitmapCharacter que traza un único carácter en la posiciçón especificada por glRasterPos drawString() y drawStringBig() que facilitan el texto en OpenGL al trazar cadenas de caracteres.

más definiciones Qué es una Bitmap font.? Una Bitmap Font, o fuente Bitmap es una fuente como las del Word ( "Times New Roman", ... ), es decir, un juego de caracteres en que cada carácter solo es un trazo de un color. Esto en cuanto a Windows.

SINTAXIS void glRasterPos{234}{sifd}(TYPE x, TYPE y, TYPE z, TYPE w); glutBitmapCharacter(*font vacío, carácter interno); Traza un único carácter en la posición especificada. Es decir, glutBitmapCharacter(GLUT_BITMAP_HELVETICA_10, s[i]); //tipo de letra y texto a mostrar glutStrokeCharacter(*font vacío, carácter interno); Rinde un carácter del movimiento que usa OpenGL.

Bitmap Fonts Una fuente de mapa de bits es básicamente un tipo de letra en 2D No espesor no se pueden rotar Solo se trasladan glutBitmapCharacter()

La sintaxis es la siguiente: void glutBitmapCharacter(void *font, int character) Parameters: font - el nombre de la fuente a utilizar character - una letra, símbolo, el número, etc

glutBitmapCharacter(GLUT_HELVETICA_18,'3'); Llamada a la función glutBitmapCharacter con salida a un único carácter en la posición actual: glutBitmapCharacter(GLUT_HELVETICA_18,'3'); La posición se puede establecer con la función glRasterPos void glRasterPos2f(float x, float y); void glRasterPos3f(float x, float y, float z); void glRasterPos2f(float x, float y); Parámetros: x, y, z - coordenadas locales para que aparezca el texto

La siguiente función hace una cadena a partir de la posición especificada de trama void renderBitmapString( float x, float y, float z, void *font, char *string) { char *c; glRasterPos3f(x, y,z); for (c=string; *c != '\0'; c++) { glutBitmapCharacter(font, *c); }

int glutBitmapWidth(void *font, int character); Función que devuelve el ancho de un carácter. int glutBitmapWidth(void *font, int character); Parametros: font – una de las Fuentes predefinidas en GLUT character – el carácter del cual deseamos saber el ancho

Las opciones disponibles para la fuente son:  GLUT_BITMAP_8_BY_13  GLUT_BITMAP_9_BY_15  GLUT_BITMAP_TIMES_ROMAN_10  GLUT_BITMAP_TIMES_ROMAN_24  GLUT_BITMAP_HELVETICA_10  GLUT_BITMAP_HELVETICA_12  GLUT_BITMAP_HELVETICA_18

Escribe una cadena con una cierta cantidad de píxeles entre cada carácter void renderSpacedBitmapString( float x, float y, int spacing, void *font, char *string) { char *c; int x1=x; for (c=string; *c != '\0'; c++) { glRasterPos2f(x1,y); glutBitmapCharacter(font, *c); x1 = x1 + glutBitmapWidth(font,*c) + spacing; }

Dibujar texto vertical void renderVerticalBitmapString(float x, float y, int bitmapHeight, void *font, char *string){ char *c; int i; for (c=string,i=0; *c != '\0'; i++,c++) { glRasterPos2f(x, y+bitmapHeight*i) glutBitmapCharacter(font, *c); }

EJEMPLOS Hay muchas formas de hacer texto. Repasando 2 maneras 1)Pixel por Pixel 2) Con funciones definidad

Pixel por Pixel EJEMPLOS GLubyte rasters[24] = {0xc0, 0x00, 0xc0, 0x00, x00, 0xff, 0x00, 0xc0, 0x00, 0xc0, 0x00, 0xc0, 0x00, 0xff, 0xc0, 0xff, 0xc0…}; glBitmap (10, 12, 0.0, 0.0, 11.0, 0.0, rasters);

Pixel por Pixel

FUNCIONES LETREROS

APLICACIONES FUNCIONES Matemática y tabulares

FUNCIONES GRAFICAS CON DATOS