1 Star 0 Fork 4

有梦为马/UIPathwaySystem

forked from kch123/UIPathwaySystem 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

UI Pathway System

基于UGUI制作的简单画线工具。

Preview

功能列表

  • 从多个起点开始绘制线段
  • 单条线段分裂成多条线段
  • 多条线段汇合成单条线段
  • 线段跳转
  • 设置线段颜色

使用限制

  • 不支持绘制平滑曲线(绘制平滑曲线可以考虑使用专门的图表插件)
  • 不支持分辨率动态适配(可以实现但处理起来比较繁琐)

如何使用

UGUIPathwaySystem/Prefabs/UIPathway.prefab 添加到任意 Canvas 对象下,这将会在Scene中添加一个 UIPathway 对象。 UIPathway 对象使用 UIWaypoint 对象来标记线路节点,在UIPathway 对象下添加、排列 UIWaypoint 对象并设置其间的连接关系即可设定画线规则。

UIWaypoint 对象中包含了一些属性,它们分别是:

  • Type:节点类型
    • None:未指定功能的节点,系统将会提示错误
    • Start:起点,系统将会从起点向后绘制线段
    • Relay:中继点,用于连接前后的点
    • Jump:跳跃点,系统不会从该点向后绘制线段,而是直接跳转到后续节点开始绘制
    • End:终点,系统将会在终点结束绘制
  • Time:从开始绘制线段到绘制到当前点所需经历的时间
  • Color:节点颜色(当连线时使用后一个节点的颜色作为线段的颜色)
  • Nexts:后续的节点
  • AutoCalcTime[EditorOnly]:表示是否允许控制器根据节点之间的距离自动计算Time字段的值

UIPathway 对象中包含了一些属性,它们分别是:

  • LineWidth:线段宽度(像素)
  • HeadRadius:线头半径(像素)
  • LineTemplate[EditorOnly]:线段模板,用于生成新的线段
  • HeadTemplate[EditorOnly]:线头模板,用于生成新的线头
  • Waypoints[EditorOnly]:当前已经添加的线段节点
  • Refresh[EditorOnly]:刷新数据(需要手动刷新数据才能检测到线段节点的变更)
  • SpeedInPixel[EditorOnly]:画线速度,用于计算节点的Time字段的值
  • AutoCalcWaypointsTime[EditorOnly]:自动计算节点的Time字段的值(只会影响 AutoCalcTime==true 的节点)
  • ColorOverride[EditorOnly]:用于统一设置所有子节点的颜色
  • OverrideColors[EditorOnly]:将所有子节点的颜色设置为 ColorOverride 字段的颜色
  • SortWaypointsByTime[EditorOnly]:是否根据到达时间属性来对线段节点进行排序,辅助调试

当设置好画线规则后,点击 UIPathway 对象的 Inspector 面板中 UIPathController 组件下的 Refresh 按钮,系统将会检索当前添加的节点。

然后进入 Play 模式,调用 UIPathController 对象的 Play()Pause()Clear() 方法分别可以实现播放暂停清除绘制功能。其中 Play() 方法能够接受一个可选的 time 参数,该参数可以让画线工具将线段绘制到指定时间的状态。

备注

上文中提到的 HeadTemplateLineTemplate 是两个可以独立于画线工具使用的组件。 HeadTemplate 对象带有一个用于绘制正多边形的 RegularPolygonUIMesh 脚本;LineTemplate 对象带有一个用于绘制线段的 LineUIMesh 脚本,该脚本也可以用于绘制矩形(调整线宽即可)。

The MIT License (MIT) Copyright (c) 2019 Arvin Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

ui界面路径绘制功能 展开 收起
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/dreams-for-horses/UIPathwaySystem.git
git@gitee.com:dreams-for-horses/UIPathwaySystem.git
dreams-for-horses
UIPathwaySystem
UIPathwaySystem
master

搜索帮助