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

【怕啥弄啥系列】Canvas - 基础图形绘制

所以打算写得通透,简单明了一些,不想讲太多太复杂的东西,让自己这个 沙比 在忘的时候,能瞬间捡起来 ? 如何开始Canvas ?...三角形其实是由线条组成的,在上面画线条的基础上,增加多一个点 即可 基础 API 了解一下 自动闭合路径 ctx.closePath 填充绘制的路径,就是画实心图形 ctx.fill 绘制空心三角形...var x = 120; // 圆角矩形左上角横坐标 var y = 120; // 圆角矩形左上角纵坐标 var width = 250; // 圆角矩形的宽度 var height = 250; /.../ 圆角矩形的高度 var radius = 50; // 圆角的半径 // 开始创建新路径 context.beginPath(); // 左上角+顶边 // 绘制左上角圆角 context.arc...* 2); // 绘制右边路径 context.lineTo(width + x, height + y - radius); // 右下角+下边 // 绘制右下角圆角 context.arc(width

1.1K30

纯CSS3绘制腾讯QQ的企鹅Logo

前言 经常能够看到一些用CSS3绘制的精致图形,它们通常由矩形,圆形,椭圆,三角形,梯形等组合而成。要想绘制我们自己的图形,就要先了解下基本图形的绘制方法了。...一个display:block的元素设定宽高之后表现为矩形。通过设定border-radius可以得到圆角矩形,圆形和椭圆形。 前面有文章CSS绘制三角形和箭头,不用再用图片了,可以先去了解一下!...border-top-left-radius: 10px;(border-top-left-radius:10px 10px;) 表明长轴和短轴的长度均为20px,也就是半径为10px的圆形(圆角部分)...当使用百分比数值时,a 相对于width, b相对于height 如果a == width/2, b == height/2,结果就是一个椭圆,与此同时a==b,那么就可以得到一个半径为a的圆形了。...其实,绘制三角形的原理很简单,如下图 我们可以这样去理解一个border所代表的区域,那就是“三角形x2 + 矩形”,以border-bottom为例, 矩形 = width x ( border-bottom-width

1.1K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    30 个案例教你用纯 CSS 实现常见的几何图形

    这段代码绘制的图形接近于正三角形,如果要绘制直角三角形,可以设置 align-items: start,让矩形一致往左边靠拢。...它们其实指的是这四个角各自的水平半径和垂直半径。在这个例子中,我们的四个圆角,实际上都是一个半径为 12px 的圆的 1/4 弧。 这样我们也能理解圆的形成了。...特点在于上半部分比下半部分要更加扁平,因此左上角和右上角圆角的垂直半径要更长,这里取整体高度的 60%,剩余的 40% 作为左下角和右下角圆角的垂直半径。...这样,两个三角形都能绘制出来了。 剩下的工作就是调整绝对定位的偏移量以及两个三角形旋转的角度。由于计算的偏差问题,这里得到的并不是标准的五角星,但总体思路是这样。...TV 电视机 TV 电视机可以看作是由下面两个图形叠加在一起构成的: 两个图形的做法类似,都是给矩形设置一个水平半径和垂直半径相差很大的圆角。

    5.4K30

    自定义View实现Dribbble上动感的Gallery App Icon

    也为了练一下自定义控件,有段时间了,现在整理出来 dribbble地址:Gallery App Icon 思路 拆解一下,还是比较简单,需要绘制的有: 圆形背景 太阳(圆形) 山(三角形) 云朵(圆角矩形...+ 三个圆) 需要进行的动画: 太阳 - 旋转动画 山 - 上下平移动画 云朵 - 左右平移动画 不必绘制圆角外框,因为各个手机厂商的应用icon的圆角不一样,我们可以在Android Studio...绘制 1.圆形背景 圆形.png 这里的白色圆角外框是shape画的,蓝色的圆形背景绘制也比较简单,主要是在onDraw()方法里使用canvas.drawCircle(): @Override...// 绘制圆角矩形 path.addRoundRect(RectF rect, float rx, float ry, Direction dir) // 绘制圆形 path.addCircle(float...,然后就是绘制三角形、圆形、圆角矩形以及它们坐标位置的动态处理。

    63110

    自定义View实现Dribbble上动感的Gallery App Icon

    也为了练一下自定义控件,有段时间了,现在整理出来 dribbble地址:Gallery App Icon 思路 拆解一下,还是比较简单,需要绘制的有: 圆形背景 太阳(圆形) 山(三角形) 云朵(圆角矩形...+ 三个圆) 需要进行的动画: 太阳 - 旋转动画 山 - 上下平移动画 云朵 - 左右平移动画 不必绘制圆角外框,因为各个手机厂商的应用icon的圆角不一样,我们可以在Android Studio里生成应用图标...绘制 1.圆形背景 [圆形.png] 这里的白色圆角外框是shape画的,蓝色的圆形背景绘制也比较简单,主要是在onDraw()方法里使用canvas.drawCircle(): @Override...// 绘制圆角矩形 path.addRoundRect(RectF rect, float rx, float ry, Direction dir) // 绘制圆形 path.addCircle(float...,然后就是绘制三角形、圆形、圆角矩形以及它们坐标位置的动态处理。

    66030

    基于UE4Unity绘制地图基础元素-线(上篇)

    地图基础元素 - 线 线作为地图渲染的基本元素,在地图中可以代表各种形式的道路。道路数据通常以离散点串形式存储,因此如何将点串绘制成有宽度的线是渲染最关注的问题。...渲染的基本单位是三角形,因此问题就转化为如何根据点串和线宽,构造出一组三角形使其能够拼合产生具有宽度的线。...可以看到,仅仅每个相邻线段进行扩充是不够的,还需要考虑如何处理线的拐角。...较为常用的LineCap主要有以下三种: Butt 无线帽模式,上一节绘制的线默认即为Butt Round 在线的两端添加额外的半圆,其半径为lineWidth/2 Square 在线两端添加额外的矩形...而Round形式的半圆线帽在绘制上就麻烦了许多,在实践过程中主要探索了以下三个方案: 1、使用三角形近似绘制半圆 最直观的方式就是直接绘制半圆线帽,但是渲染的最小单元是三角形,因此只能通过添加多个三角形近似表示半圆

    1.2K41

    CSS 奇思妙想 | 巧妙的实现带圆角的三角形

    之前在这篇文章中 -- 《老生常谈之 CSS 实现三角形》,介绍了 6 种使用 CSS 实现三角形的方式。 但是其中漏掉了一个非常重要的场景,如何使用纯 CSS 实现带圆角的三角形呢?...本文将介绍几种实现带圆角的三角形的实现方式。 法一. 全兼容的 SVG 大法 想要生成一个带圆角的三角形,代码量最少、最好的方式是使用 SVG 生成。...通过 stroke-width 控制圆角大小 那么如何控制圆角大小呢?也非常简单,通过控制 stroke-width 的大小,可以改变圆角的大小。...绘制带圆角的菱形 那么,接下来我们的目标就变成了绘制一个带圆角的菱形,方法有很多,本文给出其中一种方式: 首先将一个正方形变成一个菱形,利用 transform 有一个固定的公式: ?...就是无法支持渐变色的圆角三角形。像是这样: ? 如果需要实现渐变色圆角三角形,还是有点复杂的。

    4.8K41

    Qt编写自定义控件12-进度仪表盘

    一、前言 进度仪表盘主要应用场景是标识一个任务进度完成的状况等,可以自由的设置范围值和当前值,为了美观还提供了四种指示器(圆形指示器/指针指示器/圆角指针指示器/三角形指示器),各种颜色都可以设置,其中的动画效果采用的...二、实现的功能 1:支持指示器样式选择 圆形指示器/指针指示器/圆角指针指示器/三角形指示器 2:支持鼠标按下旋转改变值 3:支持负数范围值 4:支持设置当前值及范围值 5:支持设置起始旋转角度和结束旋转角度...* (value - minValue); painter->rotate(degRotate); painter->drawConvexPolygon(pts); //增加绘制圆角直线...,与之前三角形重叠,形成圆角指针 pen.setCapStyle(Qt::RoundCap); pen.setWidthF(4); painter->setPen(pen);...全部纯Qt编写,QWidget+QPainter绘制,支持Qt4.6到Qt5.12的任何Qt版本,支持mingw、msvc、gcc等编译器,支持任意操作系统比如windows+linux+mac+嵌入式

    1.5K00

    Sketch制作简单的ios的Icon(基本矩形、三角形、圆形、渐变)的使用

    步骤 看到这个图的人肯定有人说,这个东西我是用PPT也可以实现,是的,但是这个只是入门的,所以肯定是很简单的,后面会慢慢的绘制一些比较难的,这样你们才不会直接上来就很难导致很多人对这个瞬间失去了兴趣!...打开软件 基本图形的绘制 置入画板 ? 改变背景色 ?...选择绘制一个圆角的矩形 长款分别是120,圆角半径是15,背景颜色是白色 (快捷键是ctrl+c),边框是0(快捷键是B),可以在右侧的编辑栏看得到这些功能 ? 在内部绘制一个同样的矩形 ?...这里值得一提的是右侧的编辑栏,当我们不需要的时候,可以直接进行点击删除即可,然后没有该设计的时候,他的编辑是关闭的状态,打开的时候说明有一个之前使用过的功能但是还没有删除,这里值得注意一下 然后我们在内部绘制一个三角形...到此第一个就绘制结束了,我知道这种方式很呆板,但是确实可以让你们明白是怎么回事,另外的几个你们自己是这绘制一下,至于说最后一个的圆形背景颜色的渐变怎么实现的,这里我说一下 颜色的渐变实现 我们绘制一个圆

    1K10

    Qt编写自定义控件21-圆弧仪表盘

    一、前言 圆弧仪表盘在整个自定义控件大全中也稍微遇到了技术难点,比如背景透明,如果采用以前画圆形画扇形的方式绘制,肯定很难形成背景透明,需要用到切割,最后换了一种绘制方法,采用绘制圆弧的方式,即使用drawArc...painter.scale(side / 200.0, side / 200.0);这样的方式绘制出来,只要指定了半径或者字体指定了大小,以后都是会根据这个标准自动缩放的,这样就做到了自适应任何大小字体自动变化...6:可设置外圆背景/内圆背景/饼圆三种颜色/刻度尺颜色/文字颜色 7:自适应窗体拉伸,刻度尺和文字自动缩放 8:可自由拓展各种渐变色,各圆的半径 9:指示器样式可选择 圆形指示器 指针指示器 圆角指针指示器...指针指示器 圆角指针指示器 三角形指示器 */ #include #ifdef quc #if (QT_VERSION 三角形重叠,形成圆角指针 pen.setCapStyle(Qt::RoundCap); pen.setWidthF(4); painter->setPen(pen

    2.4K40

    CAD常用基本操作

    ,可以选择相切相切之后在直线上选择垂足命令绘制(经验,无理论证明) d 如何绘制圆上具有一定角度的直线:先在圆心绘制相同角度的直线,再偏移半径值 3....h 半径(R):指定圆弧的半径值,随后指定端点或角度(A)绘制圆弧 C 长度(L):在上次直线方向上延伸一定长度 D 此命令只用于绘制二维多段线,绘制三维多段线使用3DPOLY(3P) 22 样条曲线命令...(F) A 半径值(R):输入倒角半径值 B 修剪(T):控制圆角命令是否将选定的边修剪到圆角弧的端点(是否保留原图形) C 多段线(P):在二维多段线中两条线段相交的每个顶点处插入圆角弧(如果一条弧线段将会聚于该弧线段的两条直线段分开...,则执行圆角命令 将删除该弧线段并代之以圆角弧,以较小代替较大) D 多个(M):连续多次倒圆角 E 两条不相交直线形成尖角,可将倒圆角半径设为0进行倒圆角操作实现 F 平行线之间倒圆角不需要输入半径值...mline(ML) A 用于绘制多条平行线 B 对正(J)a 上:在光标下方绘制多线,在指定点处将会出现具有最大正偏移值的直线 b 无:将光标作为原点绘制多线 c 下:在光标上方绘制多线,在指定点处将出现具有最大负偏移值的直线

    5.5K50
    领券