Skip to content

Commit

Permalink
Draw random points
Browse files Browse the repository at this point in the history
  • Loading branch information
plter committed Oct 17, 2020
1 parent 0b97ace commit 9f7b1c5
Show file tree
Hide file tree
Showing 2 changed files with 87 additions and 0 deletions.
20 changes: 20 additions & 0 deletions L02NoSignal/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
cmake_minimum_required(VERSION 3.17)
project(L02NoSignal C)

set(CMAKE_C_STANDARD 11)

add_compile_definitions(THREAD_SAFE)

include_directories(
/usr/local/include/SDL2
)

link_directories(
/usr/local/lib
)

link_libraries(
SDL2
)

add_executable(L02NoSignal main.c)
67 changes: 67 additions & 0 deletions L02NoSignal/main.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
#include <SDL.h>

#define WIDTH 550
#define HEIGHT 400

void drawBackground(SDL_Renderer *renderer) {
SDL_SetRenderDrawColor(renderer, 255, 255, 255, 255);
SDL_Rect rect = {0, 0, WIDTH, HEIGHT};
SDL_RenderFillRect(renderer, &rect);
}

void drawScreen(struct SDL_Renderer *renderer) {
for (int x = 0; x < WIDTH; ++x) {
for (int y = 0; y < HEIGHT; ++y) {
SDL_SetRenderDrawColor(renderer, rand() % 255, rand() % 255, rand() % 255, 255);
SDL_RenderDrawPoint(renderer, x, y);
}
}
}

void draw(SDL_Renderer *renderer) {
drawBackground(renderer);
drawScreen(renderer);
}

int main() {
SDL_Window *win;
SDL_Renderer *renderer;
if (SDL_Init(SDL_INIT_VIDEO)) {
SDL_Log("Unable to init SLD: %s", SDL_GetError());
return 1;
}
win = SDL_CreateWindow(
"Hello World",
SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
WIDTH, HEIGHT,
SDL_WINDOW_OPENGL
);
if (win == NULL) {
SDL_Log("Unable to create window: %s", SDL_GetError());
return 1;
}

renderer = SDL_CreateRenderer(win, -1, SDL_RENDERER_ACCELERATED);
if (renderer == NULL) {
SDL_Log("Can not create renderer: %s", SDL_GetError());
return 1;
}

while (1) {
SDL_RenderClear(renderer);
draw(renderer);
SDL_RenderPresent(renderer);

SDL_Event event;
if (SDL_PollEvent(&event)) {
if (event.type == SDL_QUIT) {
break;
}
}
}

SDL_DestroyRenderer(renderer);
SDL_DestroyWindow(win);
SDL_Quit();
return 0;
}

0 comments on commit 9f7b1c5

Please sign in to comment.