Esempio n. 1
0
void RaytracerApplication::output_image()
{
    static const size_t MAX_LEN = 256;
    const char* filename;
    char buf[MAX_LEN];

    if ( !buffer ) {
        std::cout << "No image to output.\n";
        return;
    }

    assert( buf_width > 0 && buf_height > 0 );

    filename = options.output_filename;

    if ( !filename ) {
        imageio_gen_name( buf, MAX_LEN );
        filename = buf;
    }

    if ( imageio_save_image( filename, buffer, buf_width, buf_height ) ) {
        std::cout << "Saved raytraced image to '" << filename << "'.\n";
    } else {
        std::cout << "Error saving raytraced image to '" << filename << "'.\n";
    }
}
Esempio n. 2
0
void Application::take_screenshot()
{
    static const size_t MAX_LEN = 256;
    char filename[MAX_LEN];
    int width, height;

    get_dimension( &width, &height );
    imageio_gen_name( filename, MAX_LEN );

    if ( imageio_save_screenshot( filename, width, height ) ) {
        std::cout << "Saved image to '" << filename << "'.\n";
    } else {
        std::cout << "Error saving raytraced image to '" << filename << "'.\n";
    }
}