首页 > 软件开发 > 编程语言 >

SDL2入门(十二)多个几何绘图

来源:互联网 2023-03-17 00:16:24 127

上节课介绍了如何画点、线段、矩形。当我们要绘画多个点、线段、矩形时,有什么简便的方法吗?IB3办公区 - 实用经验教程分享!

这节课介绍一些函数来实现。IB3办公区 - 实用经验教程分享!

工具/原料

  • c4droid、sdl插件

方法/步骤

  • 1

    画多个点:利用第一节课的代码,添加如下图红色标记的代码。IB3办公区 - 实用经验教程分享!

    第9行:定义了点数组,一共有四个点。IB3办公区 - 实用经验教程分享!

    第10行:和上一节课的画点函数大同小异(多个s),函数参数:4表示画四个点,这样四个点都将被绘画出来。IB3办公区 - 实用经验教程分享!

    运行结果:(图形太小难以观察)IB3办公区 - 实用经验教程分享!

    SDL2入门(十二)多个几何绘图IB3办公区 - 实用经验教程分享!

    SDL2入门(十二)多个几何绘图IB3办公区 - 实用经验教程分享!

  • 2

    画多个首尾连接的线段:修改部分代码,见下图红色标记。IB3办公区 - 实用经验教程分享!

    第9行:定义了点数组,共有四个点。IB3办公区 - 实用经验教程分享!

    第10行:和上一节课的画线段函数也是多个s。函数参数:4表示画的线段要依次通过四个点;若为2,则线段通过前两个点;若为3,则线段通过前三个点。IB3办公区 - 实用经验教程分享!

    运行结果:IB3办公区 - 实用经验教程分享!

    SDL2入门(十二)多个几何绘图IB3办公区 - 实用经验教程分享!

    SDL2入门(十二)多个几何绘图IB3办公区 - 实用经验教程分享!

  • 3

    画多个矩形:修改部分代码,见下图红色标记。IB3办公区 - 实用经验教程分享!

    第9行:定义了存储矩形坐标和大小的数组,共有两个矩形。IB3办公区 - 实用经验教程分享!

    第10行:和上一节课的画矩形函数也是多个s。函数参数:2表示画两个矩形;若为1,则表示画一个矩形(第一个)。IB3办公区 - 实用经验教程分享!

    运行结果:IB3办公区 - 实用经验教程分享!

    SDL2入门(十二)多个几何绘图IB3办公区 - 实用经验教程分享!

    SDL2入门(十二)多个几何绘图IB3办公区 - 实用经验教程分享!

  • 4

    画多个填充矩形:修改部分代码,见下图红色标记。IB3办公区 - 实用经验教程分享!

    第10行:意义同上。不过这里的矩形是填充的。IB3办公区 - 实用经验教程分享!

    运行结果:IB3办公区 - 实用经验教程分享!

    SDL2入门(十二)多个几何绘图IB3办公区 - 实用经验教程分享!

    SDL2入门(十二)多个几何绘图IB3办公区 - 实用经验教程分享!

  • 5

    代码:IB3办公区 - 实用经验教程分享!

    #includeSDL2/SDL.h>IB3办公区 - 实用经验教程分享!

    intmain(intargc,char**argv)IB3办公区 - 实用经验教程分享!

    {IB3办公区 - 实用经验教程分享!

    SDL_Init(SDL_INIT_VIDEO);IB3办公区 - 实用经验教程分享!

    SDL_Window*window=SDL_CreateWindow("几何绘图",SDL_WINDOWPOS_CENTERED,SDL_WINDOWPOS_CENTERED,720,1280,SDL_WINDOW_SHOWN);IB3办公区 - 实用经验教程分享!

    SDL_Renderer*renderer=SDL_CreateRenderer(window,-1,SDL_RERER_ACCELERATED);IB3办公区 - 实用经验教程分享!

    SDL_RenderClear(renderer);IB3办公区 - 实用经验教程分享!

    SDL_SetRenderDrawColor(renderer,255,255,255,255);IB3办公区 - 实用经验教程分享!

    SDL_Rectbox[]={{200,400,150,150},{400,400,150,150}};IB3办公区 - 实用经验教程分享!

    SDL_RenderFillRects(renderer,box,2);IB3办公区 - 实用经验教程分享!

    SDL_RenderPresent(renderer);IB3办公区 - 实用经验教程分享!

    SDL_Delay(6000);IB3办公区 - 实用经验教程分享!

    SDL_DestroyRenderer(renderer);IB3办公区 - 实用经验教程分享!

    SDL_DestroyWindow(window);IB3办公区 - 实用经验教程分享!

    SDL_Quit();IB3办公区 - 实用经验教程分享!

    }IB3办公区 - 实用经验教程分享!

  • 5该信息未经许可获取自百度经验
  • 注意事项

    • c4droid版本:5.96
    • 如有不足或建议请指出。

    以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!IB3办公区 - 实用经验教程分享!


    标签: 编程编程语言

    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码