COMPUTACIN GRFICA TEXTOENOPENGL Integrantes Montes Hirata Daniel Yoshiro
- Slides: 12
COMPUTACIÓN GRÁFICA TEXTOENOPENGL Integrantes: Montes Hirata Daniel Yoshiro Olvera Oliva Yosimar
¿Cómo se dibuja texto con GLUT? • El manejo de fuentes de texto es una de las partes débiles de Open. GL. Su implementación es complicada ya que la biblioteca GL sólo só proporciona funciones muy primitivas para p trazado de bitmaps que obligan a disponer de una librería propia de bitmaps caracteres.
Funciones • GLUT resuelve un poco el dilema de usar texto en. Open. GL. glut. Bitmap. Character que traza un único carácter en la posición especificada por gl. Raster. Pos draw. String() y draw. String. Big() que facilitan el texto en Open. GL al trazar cadenas de caracteres.
Bitmap font • 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.
• glut. Bitmap. Character(*font vacío, carácter interno); Traza un único carácter en la posición especificada. Es decir, glut. Bitmap. Character(GLUT_BITMAP_HELVETICA_1 0, s[i]); //tipo de letra y texto a mostrar glut. Stroke. Character(*font vacío, carácter interno);
Bitmap font • • • Una fuente de mapa de bits es básicamente un tipo de letra en 2 D - No espesor - no se pueden rotar - Solo se trasladan glut. Bitmap. Character()
Sintaxis • void glut. Bitmap. Character(void *font, int character) Parameters: font - el nombre de la fuente a utilizar character - una letra, símbolo, el número, etc
• Llamada a la función glut. Bitmap. Character con salida a un único carácter en la posición actual: glut. Bitmap. Character(GLUT_HELVETICA_18, '3'); La posición se puede establecer con la función gl. Raster. Pos void gl. Raster. Pos 2 f(float x, float y); void gl. Raster. Pos 3 f(float x, float y, float z); void gl. Raster. Pos 2 f(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 render. Bitmap. String( float x, float y, float z, void *font, char *string) { char *c; gl. Raster. Pos 3 f(x, y, z); for (c=string; *c != '