Skip to content
Check out how to use the Graphics functions!

Graphics

Refresh Screen Examples*

House Drawing

The following code shows examples of using Refresh Screen to show how double buffering works.

#include "splashkit.h"
int main()
{
open_window("House Drawing", 800, 600);
clear_screen(COLOR_WHITE);
refresh_screen();
delay(1000);
fill_ellipse(COLOR_BRIGHT_GREEN, 0, 400, 800, 400);
refresh_screen();
delay(1000);
fill_rectangle(COLOR_GRAY, 300, 300, 200, 200);
refresh_screen();
delay(1000);
fill_triangle(COLOR_RED, 250, 300, 400, 150, 550, 300);
refresh_screen();
delay(5000);
close_all_windows();
return 0;
}

Output:

refresh_screen-1-house-drawing example


Draw Bitmap Examples*

Basic Bitmap Drawing

The following code shows an example of using Draw Bitmap to display a Bitmap image of the SplashKit logo in a graphics Window.

#include "splashkit.h"
int main()
{
open_window("Basic Bitmap Drawing", 315, 330);
load_bitmap("skbox", "skbox.png"); // Load bitmap image
while (!quit_requested())
{
process_events();
clear_screen(rgb_color(67, 80, 175));
draw_bitmap("skbox", 50, 50); // draw bitmap image
refresh_screen();
}
close_all_windows();
return 0;
}

Output:

draw_bitmap_named-1-basic-bitmap example


Fill Triangle Examples*

Simple Red Triangle

The following code demonstrates how to use the Fill Triangle function to draw a simple red-colored filled triangle. It creates a triangle with specified coordinates and fills it with red color.

#include "splashkit.h"
int main()
{
open_window("Fill triangle Example", 800, 600);
clear_screen();
fill_triangle(COLOR_RED, 100, 100, 200, 200, 300, 100);
refresh_screen();
delay(5000);
close_all_windows();
return 0;
}

Output:

fill_triangle-1-basic-red example


Fill Triangle On Bitmap Examples*

Fill Triangle on Bitmap

The following code shows an example of using the Fill Triangle On Bitmap function to draw a red triangle on a loaded bitmap.

#include "splashkit.h"
int main()
{
// Open a window
open_window("Happy Hat", 618, 618);
// Load the bitmaps for sad and smiling emojis (https://openmoji.org/library/#group=smileys-emotion)
bitmap sad_emoji = load_bitmap("sad_emoji", "sad_emoji.png");
bitmap smiling_emoji = load_bitmap("smiling_emoji", "smiling_emoji.png");
// Draw the sad emoji and add a hat
clear_screen(COLOR_BLACK);
draw_bitmap(sad_emoji, 0, 0);
refresh_screen();
delay(1000);
// Draw a triangle hat on the smiling emoji
fill_triangle_on_bitmap(smiling_emoji, COLOR_RED, 100, 200, 309, 20, 520, 200);
// Clear screen and switch to the smiling emoji
clear_screen(COLOR_BLACK);
draw_bitmap(smiling_emoji, 0, 0);
refresh_screen();
delay(1000);
// Spin the smiling emoji with the hat
for (int i = 0; i < 360; i++)
{
clear_screen(COLOR_BLACK);
draw_bitmap(smiling_emoji, 0, 0, option_rotate_bmp(i));
refresh_screen();
delay(10);
}
// Free the bitmap resource
free_all_bitmaps();
// Close all windows
close_all_windows();
return 0;
}

Output:

fill_triangle_on_bitmap-1-basic-bitmap example