如何用SDL2绘制线段和矩形
1、开始之前请先配置好SDL2图形库,我的经验有可以看。
新建项目名为SDL2DEMO,源文件-添加-新建项-c++文件,名字.c结尾。
输入图中代码。

2、代码中段。

3、代码下段。

4、ctrl+f5运行。出现了矩形和线段,代码有注释,很简单。下面完整代码。

5、#include<stdio.h>
#include <SDL.h>
#define SDL_MAIN_HANDLED
int main(int argc, char *argv[])
{
//窗口变量
SDL_Window* window;
//渲染变量
SDL_Renderer* render;
//按键动作变量
SDL_Event event;
//矩形1
const SDL_Rect rect1 = {100,100,100,100};
//矩形2
const SDL_Rect rect2 = { 300,100,100,100 };
//sdl初始化
SDL_Init(SDL_INIT_EVERYTHING);
//创建窗口
window = SDL_CreateWindow("Hello SDL",
SDL_WINDOWPOS_CENTERED,
SDL_WINDOWPOS_CENTERED,
640, 480, SDL_WINDOW_SHOWN);
/*创建渲染器*/
render = SDL_CreateRenderer(window, -1,0);
//清空渲染器
SDL_RenderClear(render);
//设置渲染颜色rgb
SDL_SetRenderDrawColor(render, 200,200, 100,255);
//绘制直线
SDL_RenderDrawLine(render, 50, 400, 400, 400);
//绘制矩形
SDL_RenderDrawRect(render, &rect1);
//填充矩形
SDL_RenderFillRect(render, &rect1);
//清空渲染器
//SDL_RenderClear(render);
//设置渲染颜色rgb
SDL_SetRenderDrawColor(render, 200, 200, 200, 255);
//绘制矩形2
SDL_RenderDrawRect(render, &rect2);
//填充矩形2
SDL_RenderFillRect(render, &rect2);
//显示
SDL_RenderPresent(render);
//主循环
while (1)
{
//获取按键动作,按esc退出
SDL_PollEvent(&event);
if (event.type == SDL_QUIT)
break;
}
//释放渲染器
SDL_DestroyRenderer(render);
//关闭窗口
SDL_DestroyWindow(window);
//退出
SDL_Quit(0);
return 0;
}
6、完成。