UGUI UI拖拽,UI连线。
1、拖拽
public class Item : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler
{ public RectTransform rt;
public void OnBeginDrag(PointerEventData eventData)
{
//RectTransformUtility.ScreenPointToLocalPointInRectangle(btn.GetComponent<RectTransform>(), eventData.position, Camera.main, null);
} public void OnDrag(PointerEventData eventData)
{
Vector3 globalMousePos; if (RectTransformUtility.ScreenPointToWorldPointInRectangle(rt, eventData.position, null, out globalMousePos))
{
rt.position = globalMousePos;
}
} public void OnEndDrag(PointerEventData eventData)
{ } /// <summary>
/// 更新UI的位置
/// </summary>
private void SetDraggedPosition(PointerEventData eventData)
{
Vector3 globalMousePos; if (RectTransformUtility.ScreenPointToWorldPointInRectangle(rt, eventData.position, null, out globalMousePos))
{
rt.position = globalMousePos;
} }
}
2、连线
private void Init(Transform mParent, Transform mChild)
{
Vector3 targetPos = mParent.localPosition;
Vector3 curPos = mChild.localPosition;
line.rectTransform.sizeDelta = new Vector2(8, Vector3.Distance(targetPos, curPos)); double angle = Math.Atan2(targetPos.y - curPos.y, targetPos.x - curPos.x) * 180 / Math.PI;
line.transform.rotation = Quaternion.Euler(0, 0, (float)angle + 270);
line.transform.localPosition = new Vector3((targetPos.x + curPos.x) / 2, (targetPos.y + curPos.y) / 2, targetPos.z);
}
UGUI UI拖拽,UI连线。的更多相关文章
- D3.js+Es6+webpack构建人物关系图(力导向图),动态更新数据,点击增加节点,拖拽增加连线...
觉得不错的麻烦加个Star:https://github.com/zhangzn3/D3-Es6 在线预览地址:https://zhangzn3.github.io/D3-Es6 功能列表:1. 增加 ...
- 使用UGUI实现拖拽功能(拼图小游戏)
实现方式 1.引入UGUI自带的事件系统 UnityEngine.EventSystems 2.为我们的类添加接口 IBeginDragHandler, IDragHandler, IEndDragH ...
- Unity3D UGUI窗口拖拽
在开发UGUI时 我们时常需要做一个窗口拖拽的功能 先上代码 using UnityEngine; using UnityEngine.EventSystems; public class DragW ...
- jQuery UI 拖拽-拉伸
jquery-ui实现 官网:http://www.runoob.com/jqueryui/example-resizable.html layui实现 demo:http://www.jq22.co ...
- jquery ui,拖拽,dragsort
一.导入js.导入jquery.dragsort.js外还需要导入jQuery. 二.HTML部分 <!DOCTYPE html> <html> <head> &l ...
- jquery UI 跟随学习笔记——拖拽(Draggable)
引言 这周暂时没有任务下达,所以老大给我的任务就是熟悉jquery相关插件,我就先选择了jquery UI插件,以及jquery库学习. 我用了两天的时候熟悉Interactions模块中的Dragg ...
- 通过 JS 实现简单的拖拽功能并且可以在特定元素上禁止拖拽
前言 关于讲解 JS 的拖拽功能的文章数不胜数,我确实没有必要大费周章再写一篇重复的文章来吸引眼球.本文的重点是讲解如何在某些特定的元素上禁止拖拽.这是我在编写插件时遇到的问题,其实很多插件的拖拽功能 ...
- 两种为wangEditor添加拖拽调整高度的方式:CSS3和jQuery UI
wangEditor是一款优秀的Web富文本编辑器,但如果能像KindEditor那样支持拖拽调整高度就更好了.有两种方式可以为wangEditor添加这一功能,这里使用的wangEditor版本为2 ...
- JQuery UI的拖拽功能
JQuery UI是JQuery官方支持的WebUI 代码库,包含底层交互.动画.特效等API,并且封装了一些Web小部件(Widget).同时,JQuery UI继承了jquery的插件支持,有大量 ...
- jQuery UI =>jquery-ui.js中sortable方法拖拽对象位置偏移问题
今天要处理sortable方法处理的对象,拖拽的时候,位置偏移的问题. 按理应该是鼠标在哪,对象就跟着在哪的 百度了一下问题,http://blog.csdn.net/samed/article/de ...
随机推荐
- 第三章-标准SQL语句
3.1 SQL概述: SQL:结构化查询语言,是关系数据库的标准语言,SQL是一个通用的.功能极强的关系数据库语言 结构化查询:理解:就是只要告诉数据库我要干什么,怎么干就可以了 3.1.2 SQL的 ...
- C++程序设计实验四 继承
程序源码: #include <iostream> #include <typeinfo> // definitation of Graph class Graph { pub ...
- python的assert和raise的用法
一.raise用法 在程序运行的过程当中,除了python自动触发的异常外,python也允许我们在程序中手动设置异常,使用 raise 语句即可, 为什么还要手动设置异常呢?首先要分清楚程序发生异常 ...
- Oracle 的merge into 语法转postgre
Oracle的merge into 语法 MERGE INTO t1 USING (SELECT id,name FROM t2) t2 ON ( t1.id=t2.id) //主键 WHEN M ...
- 退役*CPCer的找实习总结
从2月底开始到今天,我终于拿到了第一个也是唯一一个offer(字节跳动).找实习的过程告一段落,所以想记录一下这段时间的经历. 最开始找$meopass$学长内推了小马智行,很快就接到了面试通知(再次 ...
- 发送邮件找回密码采用outlook的 pop和smtp方式、qq邮箱smtp
一.outlook的pop方式,并指定发送人邮箱地址: 需要引入dll:Microsoft.Office.Interop.Outlook Outlook.Application olApp = new ...
- 阿里巴巴Java代码规范(一)
现代软件架构都需要协同开发完成,高效协作即降低协同成本,提升沟通效率,所谓无规矩不成方圆,无规范不能协作. 本博客是对<阿里巴巴Java开发手册>的学习记录.大多记录的是强制规约,具体请参 ...
- maven学习记录:命令行查看本地仓库所在位置
命令行 mvn help:effective-settings 查看localRepository的的位置
- 常用 包vue-clipboard2
包名称 内容 剪切板 vue-clipboard2
- c语言中计算逻辑表达式
1.设变量m.n.a.b.c.d均为1,执行 (m=a!=b)&&(n=c!=d) 后,m.n的值为() A. 0 0 B.0 1 C. 1 0 ...