目录

drawCircle 绘制圆形

drawPie 绘制扇形

锯齿消除设置


drawCircle 绘制圆形

laya.display.Graphics 类的 drawCircle() 方法可以快捷的绘制圆形。

/**
 * 绘制圆形。
 * @param x         圆点X 轴位置。
 * @param y         圆点Y 轴位置。
 * @param radius    半径。
 * @param fillColor 填充颜色,或者填充绘图的渐变对象。
 * @param lineColor (可选,默认为null)边框颜色,或者填充绘图的渐变对象。
 * @param lineWidth (可选,默认为1)边框宽度。
 */
drawCircle(x: number, y: number, radius: number, fillColor: any, lineColor?: any, lineWidth?: number): DrawCircleCmd;

//使用立即执行函数方式
(function(){//初始化舞台,设置大小,当浏览器不支持 WebGL 时自动切换为 Canvas,Laya.init(1334, 750,Laya.WebGL);let sp = new Laya.Sprite();//可以先添加精灵,后设置精灵Laya.stage.addChild(sp);showCircle();showAudi();//绘制圆形---一个8字的形状function showCircle(){//直接使用 Sprite 的 grapahics 属性获取 Graphics(绘图)对象进行绘制//圆心坐标(120,80),半径 60px,红色填充sp.graphics.drawCircle(120,80,60,"#f00");//圆心坐标(120,180),半径 60px,红色填充,这样两个圆会有20px的重合sp.graphics.drawCircle(120,180,60,"#f00");}//绘制一个类似奥迪的4环图标function showAudi(){//直接使用 Sprite 的 grapahics 属性获取 Graphics(绘图)对象进行绘制//圆形的颜色与舞台背景色(默认黑色)一致,边框为白色sp.graphics.drawCircle(350,120,60,"#000","#fff",5);sp.graphics.drawCircle(450,120,60,"#000","#fff",5);sp.graphics.drawCircle(550,120,60,"#000","#fff",5);sp.graphics.drawCircle(650,120,60,"#000","#fff",5);}
})();

drawPie 绘制扇形

laya.display.Graphics 类的 drawPie() 方法可以快捷的绘制扇形。

/**
 * 绘制扇形。
 * @param x             开始绘制的 X 轴位置。
 * @param y             开始绘制的 Y 轴位置。
 * @param radius        扇形半径。
 * @param startAngle    开始角度
 * @param endAngle      结束角度。
 * @param fillColor     填充颜色,或者填充绘图的渐变对象。
 * @param lineColor     (可选)边框颜色,或者填充绘图的渐变对象。
 * @param lineWidth     (可选)边框宽度。
 */
drawPie(x: number, y: number, radius: number, startAngle: number, endAngle: number, fillColor: any, lineColor?: any, lineWidth?: number): DrawPieCmd;

开始角度、结束角度直接使用数值,如 90,180 ...,而不要使用 Math.PI 来表示。

绘制扇形与圆形类似,前三个参数的用法也是一样的,只是增加了绘制开始与结束的角度。

//使用立即执行函数方式
(function(){//初始化舞台,设置大小,当浏览器不支持 WebGL 时自动切换为 Canvas,Laya.init(1334, 750,Laya.WebGL);let sp = new Laya.Sprite();//可以先添加精灵,后设置精灵Laya.stage.addChild(sp);showPie();showTrident();//绘制一把扇子的形状function showPie(){//直接使用 Sprite 的 grapahics 属性获取 Graphics(绘图)对象进行绘制//扇形的圆心为(150,200)、半径为 120px,起始角度为 225度(第2象限中间),终点为 315度(第1象限中间)sp.graphics.drawPie(150,200,120,225,315,"#f00","#ff0",3);}//绘制一把禅杖function showTrident(){//绘制左边的扇形//圆形(400,120)、半径 100,起始边在第3象限中间、终点边在第2象限中间sp.graphics.drawPie(400,120,100,135,225,"#fff");//绘制中间的横杆,起点在(390,110),刚好与上面的扇形保持10px的重合sp.graphics.drawRect(390,110,300,20,"#fff");//绘制右侧的圆形,圆心为(700,120),因为横杆高是20,所以圆心要在横杆y的基础上+10,圆形半径为30sp.graphics.drawCircle(700,120,30,"#fff");}
})();

锯齿消除设置

在 PC电 脑的浏览器上,经常发现 LayaAir 引擎绘制的矢量图会有一些锯齿,这是由于 LayaAir 引擎基于性能的考虑,做的优化处理,由于移动手机端的像素密度比较大,所以在 PC 上看起来明显的锯齿问题,其实在移动设备上基本上看不出来。

如果有追求完美的开发者,也可以通过在 "Laya.init();" 初始化舞台的代码之前,加一行代码“Laya.Config.isAntialias=true;”开启锯齿消除设置,那么在手机端,就完全看不到锯齿了。当然,开启这个设置后是会增加性能的消耗。因此,建议游戏开发过程中尽可能少用矢量图形,即便使用后,基于性能考虑,尽可能不要开启锯齿消除设置。

//消除矢量绘制的锯齿,但会增加性能消耗
Laya.Config.isAntialias=true;
//初始化舞台
Laya.init(500, 300, WebGL);

官网介绍地址:https://ldc.layabox.com/doc/?nav=zh-js-1-4-6

LayaAir graphics 矢量绘图之 圆形与扇形相关推荐

  1. Android绘图机制(二)——自定义View绘制形, 圆形, 三角形, 扇形, 椭圆, 曲线,文字和图片的坐标讲解

    Android绘图机制(二)--自定义View绘制形, 圆形, 三角形, 扇形, 椭圆, 曲线,文字和图片的坐标讲解 我们要想画好一些炫酷的View,首先我们得知道怎么去画一些基础的图案,比如矩形,圆 ...

  2. 【sketchup 2021】草图大师的基础使用【矩形与橡皮擦、直线与圆、手绘线与多边形、圆形与扇形、推拉工具】

    文章目录 矩形与橡皮擦 矩形普通使用 矩形进阶使用[画立面和分割面] 擦除 连续擦除 选中后不想删除了... 隐藏/显示边线 柔化边线/取消柔化 另一种擦除:删除 直线与圆 直线工具 鼠标绘制 默认绘 ...

  3. 游戏开发中的数学问题:技能伤害的区域检测(方形,圆形,三角形,扇形)

    众所周知,moba中的每个英雄都有一套自己的技能的攻击范围方式,有如廉颇一样的圆形范围,有火舞一样的直线范围,吕布的扇形方天戟范围,还有牛魔大招时的矩形范围等等 一些技能是通过物理的碰撞检测来判断的, ...

  4. 绘制圆形/圆环/扇形/扇面Mesh

    using UnityEngine; using System.Collections;[RequireComponent(typeof(MeshRenderer), typeof(MeshFilte ...

  5. python画圆并填充图形颜色_如何使用python设计语言graphics绘制圆形图形

    在python设计语言中,可以利用第三方包graphics绘制不同的图形,有圆形.直线.矩形等.如果想要绘制一个圆形,可以设置圆形的半径和坐标位置.下面利用一个实例说明绘制圆形,操作如下: 工具/原料 ...

  6. (4.1.36.1)Graphics图形学解析补充篇:路径Path

    本篇内容基本都来自参考文献,有兴趣的可自行阅读查看 一基本操作 1 moveTo setLastPoint lineTo 和 close 2 addXxx与arcTo 3 路径方向PathDirect ...

  7. SVG画扇形,可以改变数量、扇形角度、扇形方向

    效果图有点low,忍一忍吧 最近做项目,需求是在地图上实现一个基站,虽然基站是由扇形组成的2D图标(就像一个风扇) 来个图吧: 但是有个要求 用户可以配置任意多个扇形,任意角度大小,任意方向的扇形,后 ...

  8. 基于winform的GIS离线地图

    基于winform的离线地图项目 1.下载GMap(一个国外开源控件,codeplex有源码),不了解的百度一下, 2.项目引入GMap.NET.Core和GMap.NET.WindowsForms ...

  9. Android群英传笔记——第三章:Android控件架构与自定义控件讲解

    Android群英传笔记--第三章:Android控件架构与自定义控件讲解 真的很久没有更新博客了,三四天了吧,搬家干嘛的,心累,事件又很紧,抽时间把第三章大致的看完了,当然,我还是有一点View的基 ...

  10. Android特效专辑(六)——仿QQ聊天撒花特效,无形装逼,最为致命

    Android特效专辑(六)--仿QQ聊天撒花特效,无形装逼,最为致命 我的关于特效的专辑已经在CSDN上申请了一个专栏--http://blog.csdn.net/column/details/li ...

最新文章

  1. 单文件浏览器_图文并茂深度解析浏览器渲染原理,包看懂超值得收藏
  2. qq音乐 android pad版,QQ音乐HD(com.tencent.qqmusicpad) - 4.12.1.4 - 应用 - 酷安
  3. 华为《5G业务商业价值评估》白皮书!
  4. onMeasure模式
  5. 用C语言创建多个用户,实现支持多用户在线的FTP程序(C/S)
  6. 如何部署和搭建测试log4j 2
  7. 【Python】实现文章字符频次排序(文件IO、列表排序、字典操作和字符串join方法)
  8. Matlab基本函数
  9. Ubuntu14.04编译Opencv3.1错误:下载ippicv,解决方案
  10. flutter用英语怎么说_手机流量套餐用英语怎么说?
  11. 小车自动往返工作原理_自动化控制灌溉工作原理
  12. okhttp post php,Android OkHttp 结合php 多图片上传实例
  13. Java 详解(JVM) 垃圾回收机制原理
  14. 利用oc门或od门实现线与_OC门电路和OD门电路原理
  15. C语言基础---3.格式化输出总结---%d ,%s,%f %.3f,%m.ns 以及sprintf函数
  16. 无验证码不扫码拼多多微信批量登陆思路
  17. 分享125个ASP源码,总有一款适合你
  18. IC验证培训——实战SV验证学习(lab3)
  19. 每日定时推送股票数据到表单搭建示例
  20. JAXB 中的@XmlElementWrapper注解生成问题

热门文章

  1. 拓端tecdat|R语言Bootstrap的岭回归和自适应LASSO回归可视化
  2. 拓端tecdat|sas文本挖掘案例:如何使用SAS计算Word Mover的距离
  3. 拓端tecdat|如何利用深度学习诊断心脏病
  4. 拓端tecdat|R语言参数检验 :需要多少样本?如何选择样本数量
  5. (5) 学习笔记_numpy
  6. ubuntu安装cuda11.2
  7. 基于机器学习的恶意网站/仿冒网站检测实战
  8. 字典树-大量字符串前缀及出现次数是否存在统计(Trie树-java)算法实现
  9. 如何使用jstack?线程的状态?
  10. C++ (void)_r;什么意思