首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在SDL中绘制圆、弧和矢量图形?

SDL(Simple DirectMedia Layer)是一个跨平台的多媒体库,用于游戏和多媒体应用程序的开发。下面是关于如何在SDL中绘制圆、弧和矢量图形的答案:

在SDL中绘制圆、弧和矢量图形可以通过使用SDL_gfx库来实现。SDL_gfx库是一个附加库,可以扩展SDL的绘图功能。

要在SDL中绘制圆,可以使用SDL_gfx库中的圆形绘制函数filledCircleRGBA。该函数可以绘制一个填充的圆。以下是一个示例代码:

代码语言:txt
复制
#include <SDL/SDL.h>
#include <SDL/SDL_gfxPrimitives.h>

int main()
{
    // 初始化SDL
    SDL_Init(SDL_INIT_VIDEO);

    // 创建窗口和渲染器
    SDL_Window* window = SDL_CreateWindow("Circle Example", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 640, 480, 0);
    SDL_Renderer* renderer = SDL_CreateRenderer(window, -1, 0);

    // 清空屏幕
    SDL_SetRenderDrawColor(renderer, 255, 255, 255, 255);
    SDL_RenderClear(renderer);

    // 绘制圆
    filledCircleRGBA(renderer, 320, 240, 100, 255, 0, 0, 255);

    // 更新屏幕
    SDL_RenderPresent(renderer);

    // 等待退出事件
    SDL_Event event;
    while (SDL_WaitEvent(&event))
    {
        if (event.type == SDL_QUIT)
            break;
    }

    // 清理资源
    SDL_DestroyRenderer(renderer);
    SDL_DestroyWindow(window);
    SDL_Quit();

    return 0;
}

要在SDL中绘制弧,可以使用SDL_gfx库中的弧形绘制函数arcRGBA。该函数可以绘制一段弧线。以下是一个示例代码:

代码语言:txt
复制
#include <SDL/SDL.h>
#include <SDL/SDL_gfxPrimitives.h>

int main()
{
    // 初始化SDL
    SDL_Init(SDL_INIT_VIDEO);

    // 创建窗口和渲染器
    SDL_Window* window = SDL_CreateWindow("Arc Example", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 640, 480, 0);
    SDL_Renderer* renderer = SDL_CreateRenderer(window, -1, 0);

    // 清空屏幕
    SDL_SetRenderDrawColor(renderer, 255, 255, 255, 255);
    SDL_RenderClear(renderer);

    // 绘制弧
    arcRGBA(renderer, 320, 240, 100, 0, 180, 255, 0, 0, 255);

    // 更新屏幕
    SDL_RenderPresent(renderer);

    // 等待退出事件
    SDL_Event event;
    while (SDL_WaitEvent(&event))
    {
        if (event.type == SDL_QUIT)
            break;
    }

    // 清理资源
    SDL_DestroyRenderer(renderer);
    SDL_DestroyWindow(window);
    SDL_Quit();

    return 0;
}

要在SDL中绘制矢量图形,可以使用SDL_gfx库中的线条绘制函数。以下是一个示例代码:

代码语言:txt
复制
#include <SDL/SDL.h>
#include <SDL/SDL_gfxPrimitives.h>

int main()
{
    // 初始化SDL
    SDL_Init(SDL_INIT_VIDEO);

    // 创建窗口和渲染器
    SDL_Window* window = SDL_CreateWindow("Vector Example", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 640, 480, 0);
    SDL_Renderer* renderer = SDL_CreateRenderer(window, -1, 0);

    // 清空屏幕
    SDL_SetRenderDrawColor(renderer, 255, 255, 255, 255);
    SDL_RenderClear(renderer);

    // 绘制矢量图形
    lineRGBA(renderer, 100, 100, 200, 200, 255, 0, 0, 255);
    lineRGBA(renderer, 200, 200, 300, 100, 0, 255, 0, 255);
    lineRGBA(renderer, 300, 100, 100, 100, 0, 0, 255, 255);

    // 更新屏幕
    SDL_RenderPresent(renderer);

    // 等待退出事件
    SDL_Event event;
    while (SDL_WaitEvent(&event))
    {
        if (event.type == SDL_QUIT)
            break;
    }

    // 清理资源
    SDL_DestroyRenderer(renderer);
    SDL_DestroyWindow(window);
    SDL_Quit();

    return 0;
}

以上是在SDL中绘制圆、弧和矢量图形的示例代码。SDL_gfx库提供了丰富的绘图函数,可以满足绘制各种图形的需求。SDL的官方文档和SDL_gfx库的文档可以提供更详细的函数说明和用法示例。

推荐的腾讯云相关产品:目前腾讯云并未提供与SDL相关的特定产品。但是腾讯云提供了一系列的云计算基础设施和解决方案,例如云服务器、云数据库、容器服务、人工智能、物联网、存储等,可以用于支持和扩展SDL应用程序的开发和部署。具体推荐的产品取决于应用程序的需求和规模。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Mastercam9.1

File      档案        与文件有关的操作,包括文件的查询存取,编辑,浏览,打印,图形文件的转换,NC程序的传输等 Modify   修整        修改几何图形,包括倒,修整,打断...包括实体验证,路径模拟,批处理加工,程式过滤,后处理, 加工报表,定义操作,定义刀具,定义材料等 辅助菜单说明 Z       Z值        设置工作深度Z值 Color   作图颜色        设定绘制图形的颜色...Level   作图层别        设定绘制图形的图层 Attribute 图素属性 设置绘制图形的颜色、层别、线型、线宽、点的型式等属性及对各种类型图素的属性管理 Groups  群组设定           ...常用在图形文件转换肘,当有些构图面视角与Mastercam软件不兼容时,可将其图素转正。...与三个图素相切,生成一切                 Ctr line        与二条相交直线的一条直线相切,另一条直线通过圆心,给出半径,生成二整,选中其中一个

2.6K20

到多线段:深入解析 Java 的弧度转多线段算法!

无论是在游戏开发、CAD 系统还是图形用户界面绘制与处理都非常重要。然而,计算机通常无法直接绘制出完美的弧线,因此需要通过将弧线近似为一系列直线段来进行绘制。这一过程被称为“弧度转多线段”。...什么是弧线与多线段在了解“弧度转多线段”之前,我们首先需要理解“弧线”“多线段”的定义: 弧线:或椭圆的一部分,通常由中心点、半径起止角度定义。...通过多线段可以近似表示复杂的曲线,或其他几何曲线。在图形绘制,为了实现对弧线的可视化表示,通常将其分割为一系列直线段。这个过程虽然是近似的,但对于大多数应用场景来说足够精确。...通过将转换为多线段,我们可以:提高绘制性能:大多数图形硬件加速仅支持直线绘制,通过弧度转多线段可以充分利用图形加速的优势。...*;这两行代码导入了 java.awt javax.swing 包的类,这些类用于创建图形用户界面(GUI)绘制图形

16122
  • 为什么都2022年了还有人用Java写GUI?

    这些几何图形可以在“java.awt.geom”包中找到。 在本编程教程,开发人员将学习如何使用Graphics2D类Shape接口在Java渲染几何2D图形。...,将得到以下输出: 如何在Java绘制或曲线 Java的drawArc(int x,int y,int width,int height,int startAngle,int arcAngle)...该方法允许程序员绘制一条由给定宽度高度的矩形限定的曲线(或)。...以下是60度的示例: drawArc(45, 75, 90, 150, 0, 60) 如果要绘制一个,则arcAngle需要为360度,宽度值应等于高度。startAngle可以是任何角度。...例如: drawArc(45, 75, 150, 150, 0, 360) 如何在Java绘制椭圆 drawOval(int x,int y,int width,int height)方法允许您绘制绑定在给定宽度高度的矩形的椭圆

    1.9K30

    CAD常用基本操作

    选中一个夹点之后可以通过空格键依次改变夹点编辑的命令延伸,移动或比例缩放(应注意夹点中的比例缩放是多重缩放,同一图形可在选中夹点连续进行多次不同比例缩放) 16 三维绘图中的旋转:按住Shift并按住鼠标中键拖动...) A两条直线卡一条直线,绘制一个边直线后,通过平移获取另一边直线 B 在绘制相应长度的弦,现在圆心处绘制相同长度的直线,再通过平移获得 22 自定义工具栏命令 CUI或输入Toolbar 其中命令特性宏的...上下方向键命令 (圆心半径的自动记录功能)有缘学习更多+谓ygd3076考证资料或关注桃报:奉献教育(店铺) b 特殊角度切线画法可采用先绘水平切线再绕圆心同时旋转切线的方法 c 绘制与两相切且圆心在一直线上时...(F) A 半径值(R):输入倒角半径值 B 修剪(T):控制圆角命令是否将选定的边修剪到圆角的端点(是否保留原图形) C 多段线(P):在二维多段线两条线段相交的每个顶点处插入圆角(如果一条弧线段将会聚于该弧线段的两条直线段分开...,故两之间倒圆角结果为使用圆角平滑地相连 I 三维倒角命令,链式倒圆角,链指光滑连续相切的边 J 对两个三维几何体进行倒圆角操作时,应先进行并集操作,否则圆角会出现两几何体接触部分面积减少的情况

    5.5K50

    创建canvas设置canvas尺寸绘制图形Canvas库

    ,而是使用更加通用的方法arc(x, y, radius, startAngle, endAngle [, anticlockwise]) 绘制弧线,参数 x, y 为圆心坐标;radius 为的半径...; startAngle 为的初始角度;endAngle 为的结束角度;anticlockwise 表示是否以逆时针方向绘制路径。...可用于创建游戏,生成艺术作品以及其他高度图形化创作 KonvaJS: 用于桌面移动应用程序的HTML5 2d canvas库 PixiJS: HTML5创建引擎:使用最快,最灵活的2D WebGL...渲染器创建精美的数字内容 Paper.js: 矢量图形脚本的瑞士军刀 - 使用HTML5 Canvas将Scriptographer移植到JavaScript浏览器 P5.js: p5.js是一个客户端...D3帮助您使用HTML,SVGCSS使数据栩栩生 关于canvas就给大家介绍到这里,希望有朝一日大家都能用canvas画出心中最美的风景!

    4.5K10

    python ImageDraw类实现几何图形绘制与文字的绘制

    python PIL图像处理模块的ImageDraw类支持各种几何图形绘制和文本的绘制直线、椭圆、、弦、多边形以及文字等。...,形式为(x0, y0, x1, y1),第二个指定填充颜色,第三个参数指定边界颜色; draw.arc():(椭)圆弧的绘制,第一个参数指定所在椭圆的外切矩形,第二、三两个参数分别是的起始终止角度..., 第四个参数是填充颜色,第五个参数是线条颜色; draw.chord():弦的绘制类似,只是将的起始终止点通过直线连接起来; draw.pieslice():圆饼图的绘制与弦类似,...只是分别将起始终止点与所在(椭)中心相连; draw.ellipse():椭圆的绘制,第一个参数指定椭圆的外切矩形, 第二、三两个参数分别指定填充颜色线条颜色,当外切矩形是正方形时,椭圆即为;...另外,颜色也可以使用”#”加上6位16进制字符串表示“#ff0000”,则“red”等价,前两位表示R通道的值,中间两位表示G通道的值,最后两位表示B通道的值。

    2.8K30

    如何用Python画太极图?

    turtle(海龟)是Python内置的一个标准模块,它提供了绘制线、以及其他形状的函数,使用该模块可以创建图形窗口,在图形窗口中通过简单重复动作直观地绘制界面与图形。...画笔(pen)的设置包括画笔属性(尺寸、颜色)画笔状态的设置。...正如在纸上绘制一样,turtle的画笔分为提起(UP)放下(DOWN)两种状态。只有画笔为放下状态时,移动画笔,画布上才会留下痕迹。...turtle模块画笔控制函数主要分为移动控制、角度控制图形绘制3种。...除此之外,我们还需要用于图形绘制的circle()函数,使用该函数可绘制以当前坐标为圆心,以指定像素值为半径的,函数circle()的参数radius用于设置半径,extent用于设置的角度。

    1.8K20

    基础 | 在物理引擎画圆弧

    作者|zzbozheng 原文|http://imweb.io/topic/5959aee62536e43f14da1a68 因为需求的需要,要使用在物理引擎中使用四分之一,我们来看看怎么实现在物理引擎画出四分之一的圆弧..., 在物理引擎绘制圆弧 一般来说,物理引擎都是提供一般的画图方法,比如:circle()、polygon(不规则多边形)、rectangle(矩形) 等图形,但如果需要画出比较灵活又不规则的图形的话...下面来探讨一下如何实现四分之一: 我们来看一下svg的path标签可用参数: 指令 参数 说明 M x y 将画笔移动到点(x,y) L x y 画笔从当前的点绘制线段到点(x,y) H x 画笔从当前的点绘制水平线段到点...绘制二次贝塞尔曲线到点(x,y) T x y 特殊版本的二次贝塞尔曲线(省略控制点) Z 无参数 绘制闭合图形,如果d属性不指定Z命令,则绘制线段,而不是封闭图形。...说起来比较抽象,我们来看看下图 : 假如要画一个左下角的一个四分之一: 得出结果: M80 80 表示从画布的 x:80 y:80 开始画 A45 45 表示椭圆的x半径长度为45px ,y

    1.5K20

    全版本Ai矢量图形编辑软件(illustrator软件cs5下载安装)

    Adobe Illustrator是一款强大的矢量图形编辑软件,广泛应用于图形设计、插图、排版、制图等领域。...本文将从以下几个方面介绍如何在Adobe Illustrator实现创意设计: 一、使用基本形状路径工具 在Adobe Illustrator,可以使用矩形、、多边形等基本形状工具来快速绘制各种形状...三、使用图形样式图层效果 图形样式图层效果是Adobe Illustrator的强大功能之一,通过它们可以快速应用各种样式效果,投影、描边、阴影等。...六、使用3D效果图形变形工具 Adobe Illustrator的3D效果图形变形工具可以帮助设计师实现更加复杂的创意设计,三维文字、形状变形、图形扭曲等。...这些效果不仅可以增强视觉效果,还可以增强表现力创意度。 总结归纳: Adobe Illustrator作为一款强大的矢量图形编辑软件,在创意设计扮演着重要角色。

    86010

    coreldraw2023正式版下载

    它提供了设计者一整套的绘图工具包括圆形、矩形、多边形、方格、螺旋线,并配合塑形工具,对各种基本以作出更多的变化,圆角矩形,、扇形、星形等。...同时也提供了特殊笔刷压力笔、书写笔、喷洒器等,以便充分地利用电脑处理信息量大,随机控制能力高的特点。为便于设计需要,CorelDraw提供了一整套的图形精确定位变形控制方案。...它的功能可大致分为两大类为绘图与排版,提供了设计者一整套的绘图工具包括圆形、矩形、多边形、方格、螺旋线,并配合塑形工具,对各种基本以作出更多的变化,圆角矩形,、扇形、星形等。...图片2.提供了矢量动画、页面设计网页动画等多种功能,其提供的智慧型绘图工具以及新的动态向导可以充分降低用户的操控难度,.cdr是CorelDraw软件使用的一种图形文件保存格式,CDR文件属于CorelDraw...由于CorelDRAW是矢量图形绘制软件,所以CDR可以记录文件的属性、位置分页等。但它在兼容度上比较差,所有CorelDraw应用程序均能够使用,但其他图像编辑软件打不开此类文件。图片

    1.5K00

    在物理引擎画圆弧

    因为需求的需要,要使用在物理引擎中使用四分之一,我们来看看怎么实现在物理引擎画出四分之一的圆弧, 在物理引擎绘制圆弧 一般来说,物理引擎都是提供一般的画图方法,比如:circle()、polygon...(不规则多边形)、rectangle(矩形) 等图形,但如果需要画出比较灵活又不规则的图形的话,那么就需要使用 svg 提供支持了。...下面来探讨一下如何实现四分之一: 我们来看一下svg的path标签可用参数: 指令 参数 说明 M x y 将画笔移动到点(x,y) L x y 画笔从当前的点绘制线段到点(x,y) H x 画笔从当前的点绘制水平线段到点...绘制二次贝塞尔曲线到点(x,y) T x y 特殊版本的二次贝塞尔曲线(省略控制点) Z 无参数 绘制闭合图形,如果d属性不指定Z命令,则绘制线段,而不是封闭图形。...假如要画一个左下角的一个四分之一: <path d="M80 80 A 45 45, 0, 0, 0, 125 125

    1.5K30

    在物理引擎画圆弧

    本文作者:IMWeb zzbozheng 原文出处:IMWeb社区 未经同意,禁止转载 因为需求的需要,要使用在物理引擎中使用四分之一,我们来看看怎么实现在物理引擎画出四分之一的圆弧,...在物理引擎绘制圆弧 一般来说,物理引擎都是提供一般的画图方法,比如:circle()、polygon(不规则多边形)、rectangle(矩形) 等图形,但如果需要画出比较灵活又不规则的图形的话,那么就需要使用...下面来探讨一下如何实现四分之一: 我们来看一下svg的path标签可用参数: 指令 参数 说明 M x y 将画笔移动到点(x,y) L x y 画笔从当前的点绘制线段到点(x,y) H x 画笔从当前的点绘制水平线段到点...绘制二次贝塞尔曲线到点(x,y) T x y 特殊版本的二次贝塞尔曲线(省略控制点) Z 无参数 绘制闭合图形,如果d属性不指定Z命令,则绘制线段,而不是封闭图形。...假如要画一个左下角的一个四分之一: <path d="M80 80 A 45 45, 0, 0, 0, 125 125

    2.5K80

    Canvas画图基础

    使用fillrect,clearrect,strokerect方法不用绘制路径,也不需要另外调用fill或者stroke方法来『上色』就可以绘制图形,而rect方法仅仅是绘制出一个矩形的路径,还需要额外通过...另外,矩形是Canvas里面唯一一种可以不通过路径就可以绘制图形,其它的图形都需要生成一条路径才能绘制出来。...startAngle, endAngle: 沿着指定的开始点结束点的一个角度。这个角度用弧度来衡量。...这里我们首先要明白startAngle为0的时候是在的右侧经过圆心的水平线的交点处。也就是3点钟那个地方。...moveTo 还有个需要注意的就是moveTo这个方法,这个方法是将画笔移动到某个坐标处,move的过程不会产生路径,所以可以用来画一些不连续的路径,比如之前我们画的两个,用了ctx.moveTo(

    2K50

    Canvas系列(2):曲线图形

    上一章学的是直线图形的描边填充,本章我们看看对曲线图形的描边填充。...我们的代码是加在上一章最后的坐标系的,如果直接使用arc画的话,那么起始点是上一个绘制的结束,也就是绘制坐标系的结束位置,为了让之前的代码的结束不在作为本次绘制的开始,我们使用了新的APIcontext.beginPath...anticlockwise还有一个用处就是制作图形图形,可以看一下之前的那篇非零环绕规则。 画圆很简单只要把上面的结束度数改成360就可以了,直接给出结果: ? ?...arcTo是没有顺时针画还是逆时针画的控制参数的,因为起始点控制点终点就可以决定画的方向。 arcTo画的应用 arcTo画最常见的场景就是画圆角矩形。...圆弧的圆心到圆弧起点或终点到控制点的切线的距离刚好是半径。而二次贝塞尔曲线画出的是更好的曲线,它没有半径的限制,画出的弧线并不是某个的一部分。

    1.1K41

    canvas绘图基本使用方法(二)

    该方法与线性渐变使用方法类似,只是第一步接收的参数不一样 var grd = context.createRadialGradient(x0 , y0, r0 , x1 , y1 , r1 );接收起始圆心的坐标半径以及终点圆心的坐标的半径...需要说明的是,对图形进行变化后,接下来的一次绘图是紧接着上一次的状态的,所以如果需要回到初始状态,要用到context.save();context.restore();来保存恢复当前状态: 效果如下...绘制曲线 跟绘制曲线的有四个函数,分别是: context.arc(x,y,r,sAngle,eAngle,counterclockwise);用于创建/曲线(用于创建或部分)。...= canvas.getContext("2d"); context.strokeStyle = "#F22D0D"; context.lineWidth = "2"; //绘制...接收的参数含义: 参数 含义 x1 的控制点的 x 坐标 y1 的控制点的 y 坐标 x2 的终点的 x 坐标 y2 的终点的 y 坐标 r 的半径 这里需要注意的是arcTo函数绘制的曲线的起始点需要通过

    79241

    服装打版界的扛把子------ET自定义操作

    盘点服装设计所经常性使用的软件-----ET(下篇) ,这篇文章主要是给大家讲一下自定义的操作,这样自己可以实现更多的花样,一起来看看吧~ 十、其它工具 1.端移动 这个工具的使用场景非常广泛,可以用来绘制任意图形...5.旋转形状 有些时候我们需要将我们绘制图形的方位进行旋转,这时我们可以借助旋转工具,如图: 选择旋转后,我们来框选需要旋转的部分,如图: 选中后右击鼠标,然后选择一个旋转的中心点,再用鼠标拖动旋转...,如图: 6.半径、椭圆 1).半径 点击绘图菜单,选择半径,通过设置半径或者周长来绘制,如图: 如果我们不设置半径或者周长就可以自由绘制不同规格的。...7.省的操作 1).单向省 可以在曲线上添加一条直线,选择图标工具菜单,然后找到单向省,如图: 然后在曲线上单击某一点,即可添加一条直线,如图: 2).枣省 就是可以绘制一个菱形,打开图标工具菜单...,选择打版图标工具,找到枣省,如图: 然后选中绘制省的点,然后设置参数,如图: 3).省道 省道可以在线段上开辟一个特殊的形状,如图: 打开省道后,我们只需要点击线段的中心点,然后往下拉,即可生成一个指定省长省量的省道

    1.1K00

    数据可视化工具d3_前端3d可视化

    SVG:可缩放矢量图形,用于绘制可视化的图形 D3“安装” D3 是一个 JavaScript 函数库,并不需要通常所说的“安装”。...HTML 5 提供两种强有力的“画布”:SVG Canvas。 SVG 绘制的是矢量图,因此对图像进行放大不会失真,可以为每个元素添加 JavaScript 事件处理器。...绘制矩形 绘制一个横向的柱形图。只绘制矩形,不绘制文字坐标轴。在 SVG ,矩形的元素标签是 rect。...例如绘制饼状图的一个部分,需要知道一段的起始角度终止角度,这些值都不存在于数组 dataset 。因此,需要用到布局,布局的作用就是计算出适合于作图的数据。...分别绘制三种图形元素: line,线段,表示连线。 circle,,表示节点。 text,文字,描述节点。

    12.8K40

    Android自定义控件实现带数值动画的圆形进度条

    首先对画布进行区域划分,整个控件分上下两部分 上边是个大的圆环,圆环中间两行文字,没什么难度,选好圆心坐标半径后直接绘制即可,绘制文字也是如此。...下部分是三个小的圆弧进度条,的末端绘制一个小的实心 首先选好坐标半径,然后先绘制三个圆环作为弧形进度条的背景 之后从12点钟开始绘制进度,知道了圆环的圆心半径,也知道了对应于12点钟圆环圆心的偏移角度...通过三角函数可以计算出进度终点坐标,以进度终点坐标为圆心绘制一个小的实心即可 动画效果通过Handler的postDelayed方法触发重绘即可实现 在项目中的效果如图所示: ?...mDecelerateInterpolator = new DecelerateInterpolator(); /*动画持续时间(刷新次数)*/ private int mDuration = 10; /*动画刷新过程的当前值...mCurrentTime++; /*导致重绘调用onDraw,onDraw最后再次postDelay执行此动画,直到达到指定的次数*/ ScoreBoardView.this.invalidate(); } } }; /*绘制图形

    1.3K30

    简单的canvas绘图

    getContext() 方法可返回一个对象,该对象提供了用于在画布上绘图的方法属性。可以绘制路径、字符、添加图像、绘制图形(矩形、圆形)、制作照片、创建动画、甚至可以进行实时视频处理或渲染等。...pen.stroke(); //通过开始坐标结束坐标的路径,来绘制一条直线 ?...(); arc(x,y,r,start,end,true/false)方法创建/曲线(用于创建或部分) x : 中心的x坐标 y : 中心的y坐标 r : 的半径 start : 起始角,以弧度计...刮刮乐用到是destination-out:原有内容与新图形不重叠的部分会被保留。...lineTo() 添加一个新点,然后在画布创建从该点到最后指定点的线条。 arc() 创建/曲线(用于创建圆形或部分)。

    2.3K20
    领券