libmoldeo (Moldeo 1.0 Core)
1.0
libmoldeo es el conjunto de objetos y funciones, que permiten ejecutar las operaciones básicas de la plataforma Moldeo, y que compone su núcleo.
|
clase base para el manejo de una textura Más...
#include <moTexture.h>
Métodos públicos estáticos | |
static MOuint | NextPowerOf2 (MOuint p_seed) |
Métodos protegidos | |
void | SetParam () |
void | CalculateSize (MOuint p_width, MOuint p_height) |
MOboolean | Build () |
bool | ResetBufferData (bool force_creation=false, int bytes_per_pixel=0) |
Otros miembros heredados | |
Atributos públicos heredados desde moAbstract | |
MOboolean | m_bInitialized |
Valor de inicialización. Más... | |
Atributos públicos estáticos heredados desde moAbstract | |
static moDebug * | MODebug2 = new moDebug() |
Clase de impresión de errores para depuración. Más... | |
static moTextHeap * | MODebug = new moTextHeap() |
Lista de textos. Más... | |
clase base para el manejo de una textura
Clase que encapsula una textura openGL y provee funcionalidades básicas tales como copiar contenidos desde o hacia búfer, leer desde un archivo, manejar el FBO al cual pueda estar asociada la textura, etc.
Definición en la línea 78 del archivo moTexture.h.
moTexture::moTexture | ( | ) |
Constructor por defecto.
|
virtual |
Destructor por defecto.
Definición en la línea 80 del archivo moTexture.cpp.
|
protected |
Definición en la línea 748 del archivo moTexture.cpp.
Construye una textura vacía con el ancho y alto especificados.
p_width | ancho de la textura. |
p_heigh | alto de la textura. |
Definición en la línea 113 del archivo moTexture.cpp.
MOboolean moTexture::BuildFromBuffer | ( | MOuint | p_width, |
MOuint | p_height, | ||
const GLvoid * | p_buffer, | ||
GLenum | p_format = GL_RGBA , |
||
GLenum | p_type = GL_UNSIGNED_BYTE |
||
) |
Construye una textura con el ancho, alto, formato y tipo especificados, copiando en la misma el contenido apuntado por p_buffer.
p_width | ancho de la textura. |
p_heigh | alto de la textura. |
p_buffer | buffer utilizado para inicializar el contenido de la textura. |
p_format | formato de la textura, por ejemplo: GL_RGBA o GL_RGB. |
p_type | tipo de la textura, por ejemplo: GL_UNSIGNED_BYTE o GL_FLOAT. |
Definición en la línea 136 del archivo moTexture.cpp.
Construye una textura a partir de la imágen contenida en p_filename.
p_filename | nombre del archivo que contiene la imágen a cargar en la textura. |
Definición en la línea 142 del archivo moTexture.cpp.
bool moTexture::CalculateLuminanceAndConstrast | ( | int | x0 = 0 , |
int | y0 = 0 , |
||
int | x1 = 0 , |
||
int | y1 = 0 |
||
) |
calculate luminance
Calculating contrast difference or luminance variance
Definición en la línea 451 del archivo moTexture.cpp.
Definición en la línea 654 del archivo moTexture.cpp.
void moTexture::CopyFromTex | ( | moTexture * | p_src_tex, |
MOboolean | p_copy_glid, | ||
MOboolean | p_copy_moid, | ||
MOboolean | p_copy_type, | ||
MOboolean | p_copy_name | ||
) |
Copia a esta textura la que esta siendo apuntada por p_src_tex.
p_src_tex | puntero al objeto de textura desde el cual se está realizando la copia. |
p_copy_glid | si es true entonces el OpenGL ID es copiado. |
p_copy_moid | si es true entonces el Moldeo ID es copiado. |
p_copy_type | si es true entonces el tipo de textura es copiado. |
p_copy_name | si es true entonces el nombre de la textura es copiado. |
Definición en la línea 600 del archivo moTexture.cpp.
moText moTexture::CreateThumbnail | ( | moText | p_bufferformat, |
int | w, | ||
int | h, | ||
moText | newfilename = moText("") |
||
) |
Salva al disco la textura especificando el nuevo tamaño y el formato El nombre del archivo es opcional, se toma en general el nombre de la textura y se le agrega: .thm.jpg o .thm.tga
p_bufferformat | el formato: "JPG" (75:1), "JPGSUPERB" (100:1), "JPGBAD" (10:1), "JPGNORMAL" (50:1), "JPGAVERAGE" (25:1), "JPGGOOD" (75:1), "TGA" |
w | ancho de la nueva imagen |
h | alto de la nueva imagen |
newfilename | el nombre del archivo, si no especifica se usa: GetName() y se le agrega: .thm.jpg o .thm.tga |
return moText(); for(int j=0;j<(int)1;j++) {
for(int i=0;i<(int)1;i++) { MODebug2->Message( "R:" + IntToStr( (int)m_pBufferData[pitch*j + i*3+2])
TODO: release when we really no render anymore..."
Definición en la línea 829 del archivo moTexture.cpp.
|
virtual |
Destruye la textura openGL.
Reimplementado de moAbstract.
Reimplementado en moMovie, moTextureMultiple, moTextureAnimated, moTextureMemory, moCircularVideoBuffer y moVideoBuffer.
Definición en la línea 101 del archivo moTexture.cpp.
Invierte verticalmente el búfer de imágen apuntado por pBuffer.
pBuffer | puntero al búffer que contiene la imágen a invertir. |
p_depth | número de componentes de color por píxel. |
Definición en la línea 578 del archivo moTexture.cpp.
MOboolean moTexture::GetBuffer | ( | GLvoid * | p_buffer, |
GLenum | p_format = GL_RGBA , |
||
GLenum | p_type = GL_UNSIGNED_BYTE |
||
) |
Copia el contenido actual de la textura al búfer pasado como parametro.
p_buffer | puntero al búfer en memoria donde será copiada la textura. |
p_format | especifica el formato de píxel de los datos copiados al búfer (GL_RGBA, GL_RGB, etc.). |
p_type | especifica el tipo de píxel de los datos copiados al búfer (GL_UNSIGNED_BYTE, GL_FLOAT, etc.). |
Atamos la textura (propia) retenida por this->m_glid
Copiamos los bytes de la textura al buffer
Definición en la línea 409 del archivo moTexture.cpp.
|
inline |
Devuelve el número de componentes por píxel.
Definición en la línea 280 del archivo moTexture.h.
|
inline |
Definición en la línea 382 del archivo moTexture.h.
MOuint moTexture::GetDataHeight | ( | ) | const |
Si la textura es rectangular, devuelve el mismo valor que GetHeight. En caso contrario, devuelve la altura origial escalada por el rango máximo de la coordenada T de texturas.
Definición en la línea 566 del archivo moTexture.cpp.
|
inline |
Devuelve el número total de téxels de datos (alto de datos x ancho de datos x número de componentes).
Definición en la línea 290 del archivo moTexture.h.
MOuint moTexture::GetDataWidth | ( | ) | const |
Si la textura es rectangular, devuelve el mismo valor que GetWidth. En caso contrario, devuelve el ancho origial escalado por el rango máximo de la coordenada S de texturas.
Definición en la línea 560 del archivo moTexture.cpp.
|
inline |
Devuelve el FBO actualmente asociado a la textura.
Definición en la línea 208 del archivo moTexture.h.
|
inline |
Devuelve el punto de attachement de la textura.
Definición en la línea 213 del archivo moTexture.h.
|
inline |
Devuelve el identificador OpenGL de la textura.
Definición en la línea 224 del archivo moTexture.h.
MOuint moTexture::GetGLId | ( | moMoldeoObject * | p_src_mob | ) |
TODO: check this! obsolete?
Devuelve el identificador OpenGL de la textura.
p_src_mob | puntero a un moMoldeoObject para evaluar sus parámetros |
Definición en la línea 573 del archivo moTexture.cpp.
|
inline |
Devuelve el alto de la textura.
Definición en la línea 261 del archivo moTexture.h.
|
inline |
Definición en la línea 381 del archivo moTexture.h.
|
inline |
Devuelve el método utilizado en el filtro de magnificación (GL_NEAREST o GL_LINEAR).
Definición en la línea 329 del archivo moTexture.h.
|
inline |
Devuelve el valor máximo de la coordenada S de textura.
Definición en la línea 296 del archivo moTexture.h.
|
inline |
Devuelve el valor máximo de la coordenada T de textura.
Definición en la línea 301 del archivo moTexture.h.
|
inline |
Devuelve el método utilizado en el filtro de minificación (GL_NEAREST, GL_LINEAR, GL_NEAREST, GL_NEAREST_MIPMAP_NEAREST, etc.).
Definición en la línea 324 del archivo moTexture.h.
|
inline |
Devuelve el identificador Moldeo de la textura.
Definición en la línea 235 del archivo moTexture.h.
|
inline |
Devuelve el nombre de la textura.
Definición en la línea 245 del archivo moTexture.h.
|
inline |
Devuelve el número total de téxels (alto x ancho x número de componentes).
Definición en la línea 285 del archivo moTexture.h.
|
inline |
Devuelve el formato interno de la textura, es decir, el número de componentes de color de la misma (GL_RGBA, GL_RGB, etc.).
Definición en la línea 318 del archivo moTexture.h.
|
inline |
Devuelve los parámetros de la textura.
Definición en la línea 307 del archivo moTexture.h.
|
inline |
Devuelve el tárget OpenGL de la textura (GL_TEXTURE_2D, GL_TEXTURE_RECT, etc.).
Definición en la línea 312 del archivo moTexture.h.
|
inline |
Devuelve el tipo de píxel de la textura.
Definición en la línea 219 del archivo moTexture.h.
|
inline |
Devuelve el ancho de la textura.
Definición en la línea 256 del archivo moTexture.h.
|
inline |
Devuelve el método de envolvimiento utilizado en la coordenada S de textura (GL_CLAMP, GL_REPEAT).
Definición en la línea 334 del archivo moTexture.h.
|
inline |
Devuelve el método de envolvimiento utilizado en la coordenada T de textura (GL_CLAMP, GL_REPEAT).
Definición en la línea 339 del archivo moTexture.h.
|
virtual |
Inicializa propiedades básicas de la textura tales como el nombre, id, administradores y parámetros.
p_name | nombre de la textura. |
p_moid | Moldeo ID de la textura. |
p_res | puntero al administrador de recursos, del cual son extraidos todos los administradores que la textura necesita (GL, Data, File, etc). |
p_param | parámetros de textura. |
Reimplementado en moMovie, moTextureMultiple, moTextureAnimated y moTextureMemory.
Definición en la línea 85 del archivo moTexture.cpp.
|
inline |
Devuelve verdadero si esta textura fue cargada desde un archivo
Definición en la línea 363 del archivo moTexture.h.
Construye una textura a partir de la imágen especificada en los parámetros p_param.
p_param | puntero a un objeto de parámetros que contiene el nombre del archivo del cual la textura será leida. |
Definición en la línea 358 del archivo moTexture.cpp.
Definición en la línea 364 del archivo moTexture.cpp.
Definición en la línea 741 del archivo moTexture.cpp.
Definición en la línea 623 del archivo moTexture.cpp.
MOboolean moTexture::Refresh | ( | ) |
Definición en la línea 823 del archivo moTexture.cpp.
|
protected |
bytes_per_pixel > forcing new buffer with bytes_per_pixel (check CreateThumbnail) force_creation: true if it always create a buffer
free memory
recreate buffer with new size TODO: check for every internal_format...
Definición en la línea 704 del archivo moTexture.cpp.
MOboolean moTexture::SetBuffer | ( | const GLvoid * | p_buffer, |
GLenum | p_format = GL_RGBA , |
||
GLenum | p_type = GL_UNSIGNED_BYTE |
||
) |
Copia a la textura el búfer pasado como parametro, asumiendo que el mismo tiene el alto y ancho correcto.
p_buffer | puntero al búfer en memoria que será copiado a la textura. |
p_format | formato de los datos contenidos en el búfer (GL_RGBA, GL_RGB, etc.). |
p_type | tipo de los datos contenidos en el búfer (GL_UNSIGNED_BYTE, GL_FLOAT, etc.). |
Definición en la línea 371 del archivo moTexture.cpp.
MOboolean moTexture::SetBuffer | ( | MOuint | p_width, |
MOuint | p_height, | ||
const GLvoid * | p_buffer, | ||
GLenum | p_format = GL_RGBA , |
||
GLenum | p_type = GL_UNSIGNED_BYTE |
||
) |
Copia a la textura el búfer pasado como parametro, y usando los parametros de alto y ancho como las nuevas dimensiones de la textura.
p_width | ancho de los datos contenidos en el búfer. |
p_height | alto de los datos contenidos en el búfer. |
p_buffer | puntero al búfer en memoria que será copiado a la textura. |
p_format | formato de los datos contenidos en el búfer (GL_RGBA, GL_RGB, etc.). |
p_type | tipo de los datos contenidos en el búfer (GL_UNSIGNED_BYTE, GL_FLOAT, etc.). |
Definición en la línea 376 del archivo moTexture.cpp.
|
inline |
Utiliza p_dataman como nuevo administrador de datos de la textura.
p_dataman | puntero al administrador de datos. |
Definición en la línea 180 del archivo moTexture.h.
|
inline |
Utiliza p_fbo como nuevo objeto de Framebuffer para la textura.
p_fbo | puntero al FBO. |
Definición en la línea 191 del archivo moTexture.h.
Utiliza p_fbo como nuevo objeto de Framebuffer para la textura, además de generar un nuevo punto de attachement de la textura en el FBO.
p_fbo | puntero al FBO. |
Definición en la línea 551 del archivo moTexture.cpp.
|
inline |
Utiliza p_fbo_attach_point como nuevo punto de attachement para la textura.
p_fbo_attach_point | índice del nuevo punto de attachement (0 para GL_COLOR_ATTACHMENT0_EXT, 1 para GL_COLOR_ATTACHMENT1_EXT, etc.). |
Definición en la línea 203 del archivo moTexture.h.
|
inline |
Utiliza p_fileman como nuevo administrador de archivos de la textura.
p_fileman | puntero al administrador de archivos. |
Definición en la línea 185 del archivo moTexture.h.
|
inline |
Utiliza p_gl como nuevo administrador de OpenGL de la textura.
p_gl | puntero al administrador de OpenGL. |
Definición en la línea 175 del archivo moTexture.h.
|
inline |
Utiliza p_moid como nuevo Moldeo ID de la textura.
p_moid | nuevo Moldeo ID. |
Definición en la línea 240 del archivo moTexture.h.
|
inline |
Utiliza p_name como nuevo nombre de la textura.
p_name | nuevo nombre de la textura. |
Definición en la línea 250 del archivo moTexture.h.
|
protected |
Definición en la línea 645 del archivo moTexture.cpp.
Revisa que el archivo especificado con p_filename sea un archivo de imágen soportado. En estos momentos, los formatos soportados son tga jpg, png, gif, bmp, xpm, y ppm.
Definición en la línea 345 del archivo moTexture.cpp.
|
protected |
Definición en la línea 417 del archivo moTexture.h.
|
protected |
Definición en la línea 419 del archivo moTexture.h.
|
protected |
Definición en la línea 416 del archivo moTexture.h.
|
protected |
Definición en la línea 388 del archivo moTexture.h.
|
protected |
Definición en la línea 423 del archivo moTexture.h.
|
protected |
Definición en la línea 422 del archivo moTexture.h.
|
protected |
Definición en la línea 421 del archivo moTexture.h.
|
protected |
Definición en la línea 407 del archivo moTexture.h.
|
protected |
Definición en la línea 408 del archivo moTexture.h.
|
protected |
Definición en la línea 396 del archivo moTexture.h.
|
protected |
Definición en la línea 397 del archivo moTexture.h.
|
protected |
Definición en la línea 393 del archivo moTexture.h.
|
protected |
Definición en la línea 401 del archivo moTexture.h.
|
protected |
Definición en la línea 406 del archivo moTexture.h.
|
protected |
Definición en la línea 409 del archivo moTexture.h.
|
protected |
Definición en la línea 410 del archivo moTexture.h.
|
protected |
Definición en la línea 400 del archivo moTexture.h.
|
protected |
Definición en la línea 402 del archivo moTexture.h.
|
protected |
Definición en la línea 404 del archivo moTexture.h.
|
protected |
Definición en la línea 420 del archivo moTexture.h.
|
protected |
Definición en la línea 391 del archivo moTexture.h.
|
protected |
Definición en la línea 390 del archivo moTexture.h.
|
protected |
Definición en la línea 392 del archivo moTexture.h.
|
protected |
Definición en la línea 394 del archivo moTexture.h.
|
protected |
Definición en la línea 399 del archivo moTexture.h.
|
protected |
Definición en la línea 405 del archivo moTexture.h.