NGN_IMAGE.H

MÉTODOS de la clase


Método

NGN_TextureData* ConvertRawToTextureData(NGN_RawImage* raw);

Descripción

Convierte una imagen en formato RAW a datos de textura. Devuelve NULL en caso de error.

Ejemplo

NGN_RawImage* pixels = ngn->load->SpriteAsRaw("data/coin.spr", 3);
NGN_TextureData* coin_data = ngn->image->ConvertRawToTextureData(pixels);

Método

bool CutOutMask(
    NGN_RawImage* source,       // Imagen RAW de origen
    NGN_RawImage* mask,         // Imagen RAW de mascara
    NGN_RawImage* destination   // Imagen RAW de destino
);

Descripción

Aplica la máscara de recorte especificada a la imagen de origen y almacena el resultado en la imagen de destino. Si los pixeles de la máscara contienen información de transparencia (canal alpha), esta también se aplica. Devuelve TRUE en caso de éxito y FALSE en caso de error.

Ejemplo

NGN_RawImage* stone = ngn->load->PngAsRaw("data/stone.png");
NGN_RawImage* mask = ngn->load->PngAsRaw("data/cutmask.png");
NGN_RawImage* pixels = new NGN_RawImage();
ngn->image->CutOutMask(stone, mask, pixels);

Método

bool HollowMask(
    NGN_RawImage* source,       // Imagen RAW de origen
    NGN_RawImage* mask,         // Imagen RAW de mascara
    NGN_RawImage* destination   // Imagen RAW de destino
);

Descripción

Aplica la máscara de vaciado especificada a la imagen de origen y almacena el resultado en la imagen de destino. Si los pixeles de la máscara contienen información de transparencia (canal alpha), esta también se aplica. Devuelve TRUE en caso de éxito y FALSE en caso de error.

Ejemplo

NGN_RawImage* stone = ngn->load->PngAsRaw("data/stone.png");
NGN_RawImage* mask = ngn->load->PngAsRaw("data/cutmask.png");
NGN_RawImage* pixels = new NGN_RawImage();
ngn->image->HollowMask(stone, mask, pixels);

Método

bool AdvancedMask(
    NGN_RawImage* source,                   // Imagen de origen
    NGN_RawImage* mask,                     // Imagen de la máscara
    NGN_RawImage* destination,              // Imagen de destino
    Vector2I32 offset = {0, 0},             // Offset de la máscara
    uint8_t mode = NGN_MASKMODE_CUTOUT      // Modo de la máscara
);

Descripción

Aplica la máscara especificada a la imagen de origen y almacena el resultado en la imagen de destino. Si los pixeles de la máscara contienen información de transparencia (canal alpha), esta también se aplica. Puede especificarse el modo de aplicación de la máscara, NGN_MASKMODE_CUTOUT o NGN_MASKMODE_HOLLOW (recorte o vaciado), así como el desplazamiento de la máscara (offset). Devuelve TRUE en caso de éxito y FALSE en caso de error.

Ejemplo

NGN_RawImage* stone = ngn->load->PngAsRaw("data/stone.png");
NGN_RawImage* mask = ngn->load->PngAsRaw("data/cutmask.png");
NGN_RawImage* pixels = new NGN_RawImage();
Vector2I32 offset = {15, 25};
ngn->image->AdvancedMask(stone, mask, pixels, offset, NGN_MASKMODE_CUTOUT);

Método

bool RendererToSurface(NGN_RendererSurface* destination);

Descripción

Guarda el contenido actual del renderer en el objeto tipo NGN_RendererSurface especificado. Devuelve TRUE en caso de existo o FALSE en caso de error.

Ejemplo

RendererSurface* renderer_surface = new NGN_RendererSurface();
ngn->image->RendererToSurface(renderer_surface);

Método

bool SurfaceToRaw(
    NGN_RendererSurface* source,    // Surface de origen
    NGN_RawImage* destination,      // Imagen RAW de destino
    NGN_RawImage* mask = NULL       // Mascara cutout (opcional)
);

Descripción

Convierte el Surface especificado a una imagen en formato RAW y, opcionalmente, le aplica una máscara de recorte si esta se especifica. Este método devuelve TRUE en caso de éxito o FALSE en caso de error.

Ejemplo

RendererSurface* renderer_surface = new NGN_RendererSurface();
ngn->image->RendererToSurface(renderer_surface);
NGN_RawImage* mask = ngn->load->PngAsRaw("data/cutmask.png");
NGN_RawImage* pixels = new NGN_RawImage();
ngn->image->SurfaceToRaw(renderer_surface, pixels, mask);
Volver al Índice English Version Volver Arriba