FairyGUI笔记:Graph(四)_fairygui 画线-程序员宅基地

技术标签: fairygui  

FairyGUI支持生成简单的图形。 点击侧工具栏的按钮生成一个图形。

  • 图形 选择形状为矩形、圆形或者“无”。“无”表示这是一个空的图形,他不消耗任何显示资源,通常用作一个占位的用途。详细可见下面的介绍。(注:部分平台SDK不支持圆形)

  • 线条大小 形状的描边大小。0则表示不描边。(Unity/Starling版本目前不支持圆形和圆角的描边)

  • 线条颜色 形状的描边颜色。

  • 填充颜色 形状的填充颜色。如果你希望绘制中空的图形,那把填充颜色的透明度设置为0即可。

  • 圆角 一个整数或者4个用逗号分隔的整数。例如“4”,表示矩形的四个角均为半径为4的圆角。例如“2,1,1,4”,则指定了每个角的半径。(注:部分平台SDK不支持圆角,如果你仍然希望在这类平台使用圆角矩形,可以在右键菜单里点击“转换为位图”)

  •  GGraph

图形支持动态创建,动态创建图形需要注意一定要设置图形的大小,否则显示不出来。例如:

GGraph holder = new GGraph();
holder.SetSize(100, 100);
holder.DrawRect(...);
aComponent.AddChild(holder);

 前面提到,空白的图形可以用作一个占位的用途,运行中可能用其他对象替换这个空白图形。FairyGUI的显示对象与原生显示对象混合使用时就需要用到这种空白的图形。

举例:现在要在UI中放置入一个原生的对象aSprite,则可以在适当位置放入一个空白的图形,假设对象为holder,那么代码里可以这样写:

holder.SetNativeObject(aSprite);

这样就把aSprite放到了holder所在的位置和深度上。 通过这样的办法,任何原生显示对象都可以轻松插入到FairyGUI的显示列表中。

如果SetNativeObject被重复调用,则前一个设置对象被销毁,插入新的对象。

通过GGraph.shape属性可以获得原生矢量绘制的接口类。特别说明的是,Unity平台没有矢量绘制引擎,因此目前只提供了绘制矩形、圆形和多边形。以下是Unity里运用GGraph对象的一些技巧:

//传入多边形的各个顶点绘制多边形
aGraph.shape.DrawPolygon(new Vector2[] { ...} }, new Color[] { ... };
//绘制一个渐变色的矩形
aGraph.shape.DrawRect(0, new Color[] { ... });

再次提醒,如果图形是动态创建的,记得设置图形的大小。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/baidu_29474379/article/details/83819263

智能推荐

Python单元测试unittest加载方式之二:加载测试套件_python 测试套加载环境文件-程序员宅基地

文章浏览阅读1w次,点赞8次,收藏3次。Python、unittest_python 测试套加载环境文件

linux dt命令,Linux基础命令日常积累-程序员宅基地

文章浏览阅读725次。今天又一次搞Linux生产环境搭建。这是种步骤很多,很繁琐而且又不得不做的事情。虽然做过很多次,但还是有很多步骤、命令不记得,每一次到处找资料很麻烦,于是将一些步骤记下,以便查找。登录远程MySQLmysql -h 192.168.1.100 -u root -p给MySQl非root账户分配权限给账号user1 密码为123456 的用户testDB数据库的所有表的select,insert,u..._dt命令

PAT 1147_该数的立方分解为一串连续奇数的和 样例输入 13 样例输出 13*13*13=2197=157+15-程序员宅基地

文章浏览阅读85次。In computer science, aheapis a specialized tree-based data structure that satisfies the heap property: if P is a parent node of C, then the key (the value) of P is either greater than or equal to (i..._该数的立方分解为一串连续奇数的和 样例输入 13 样例输出 13*13*13=2197=157+159+

Linux命令之ln -s命令(软链接)_linux ln -s-程序员宅基地

文章浏览阅读6.2k次,点赞4次,收藏15次。Linux ln(英文全拼:link files)命令是一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接。当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。如果文件被删除,则软链接文件失去指向,变为不可用如果文件被删除,由于硬链接文件直接指向内容,因此不受影响。_linux ln -s

spring cloud alibaba - 集成nacos配置中心_spring-cloud-starter-alibaba-nacos-config 版本-程序员宅基地

文章浏览阅读4.4k次,点赞5次,收藏3次。注意:此版本spring-cloud需要spring-boot 2.6.7及以上版本支持。版本说明 · alibaba/spring-cloud-alibaba Wiki · GitHubSpring Cloud Alibaba provides a one-stop solution for application development for the distributed solutions of Alibaba middleware. - 版本说明 · alibaba/spring-cloud-_spring-cloud-starter-alibaba-nacos-config 版本

计算机毕业分享(含算法) Django个性化视频推荐系统(源码分享)-程序员宅基地

文章浏览阅读827次,点赞26次,收藏23次。0 简介今天学长向大家介绍一个适合作为毕设的项目。

随便推点

MySQL 纯insert_Presto Insert Mysql-程序员宅基地

文章浏览阅读852次。故事的开始一个咖啡劲儿已经消退了的午后,业务大大突然笑眯眯的对我说:"Presto insert Mysql 特别慢,跑了几十分钟了,一直 13% 左右, 你,帮忙看看?"。第一反应就是: "嗯?难道出大问题了?",老实讲,有一点点小兴奋。一顿操作猛如虎紧接着,大概进行了如下几个猛如虎的操作:Presto 监控看起来,嗯~有一个 Stage 很慢,但是又没有死,大概十几K Row/s 的速度在爬..._presto insert

npm突然找不到D:\nodejs\node_modules\npm\bin\npm-cli.js的解决方法_error: cannot find module 'e:\devtools\nodejs\node-程序员宅基地

文章浏览阅读5.3k次。用nvm安装的node使用很正常,突然有天npm报错npm -vnpm不存在node -vnode不存在_error: cannot find module 'e:\devtools\nodejs\node_modules\npm\bin\npm-cli.j

CTF实验环境搭建与工具安装记录_ctf实验机的输入法换出来-程序员宅基地

文章浏览阅读930次。由于系统总是偶然出问题,记录此文以便快速恢复环境。基本环境设置密码$ sudo passwd root$ sudo passwd 用户名更换源为清华源 or else系统更新$ apt update$ apt fullupgrade$ apt autoremove$ apt autoclean配置SSH$ apt install openssh-server$ /etc/init.d/ssh start支持32位$ dpkg --add-archite_ctf实验机的输入法换出来

C语言必背经典程序代码_c语言代码-程序员宅基地

文章浏览阅读2.7w次,点赞189次,收藏1.4k次。题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。_c语言代码

链栈实现简单的计算器功能_链栈计算器-程序员宅基地

文章浏览阅读940次,点赞3次,收藏10次。输入的格式限定有待完善#include<stdio.h>#include<stdlib.h>#include<string.h>#include<iostream>using namespace std;const int inf=0x3f3f3f3f;#define OK 1#define ERROR 0typedef i..._链栈计算器

精进Spring—Spring常用注解【经典总结】_spring注解-程序员宅基地

文章浏览阅读10w+次,点赞269次,收藏1.3k次。Spring的一个核心功能是IOC,就是将Bean初始化加载到容器中,Bean是如何加载到容器的,可以使用Spring注解方式或者Spring XML配置方式。 Spring注解方式减少了配置文件内容,更加便于管理,并且使用注解可以大大提高了开发效率!_spring注解

推荐文章

热门文章

相关标签