当前位置: 首页 > news >正文

untiy 连接两个UI或一段固定一段跟随鼠标移动的线段

注意,仅适用于UI,且Canvas必须是Camera模式,不能用在3D物体上,3D物体请使用LineRenender

先创建一个图片,将锚点固定在左边
在这里插入图片描述
然后在脚本中添加如下内容

		public RectTransform startObj;//起点物体public RectTransform endObj;//终点物体public Camera camera;//Canvas的相机private void CalcuateLine()//计算线的宽度和角度{if (startObj == null) return;//设置长度和角度Vector2 startPosition = Vector2.zero;Vector2 endPosition = Vector2.zero;//计算起点的世界坐标startPosition = RectTransformUtility. WorldToScreenPoint(camera,startObj.position);//计算终点的世界坐标if (endObj != null)//如果有结束物体,以结束物体为终点{endPosition = RectTransformUtility.WorldToScreenPoint(camera, endObj.position);}else//如果没有结束物体,以鼠标位置为终点{endPosition = Input.mousePosition;}//计算长度float dis = Vector2.Distance(startPosition,endPosition);//设置长度rectTransform.sizeDelta = new Vector2(dis,rectTransform.rect.height); //计算角度Vector3 dir = endPosition - startPosition;float angle = Vector3.Angle(Vector3.right, dir);Vector3 cross = Vector3.Cross(Vector3.right, dir);float dirF = cross.z > 0 ? 1 : -1;angle = angle * dirF;//设置角度rectTransform.localEulerAngles = new Vector3(0,0,angle);//设置起点位置Vector2 startLocalPostion = Vector2.zero;RectTransformUtility.ScreenPointToLocalPointInRectangle(contentRectTransform, startPosition,camera,out startLocalPostion);rectTransform.localPosition = startLocalPostion;}
http://www.lryc.cn/news/113889.html

相关文章:

  • 如何成为顶级开源项目的贡献者
  • Threads and QObjects
  • Tcp是怎样进行可靠准确的传输数据包的?
  • [SWPUCTF 2022 新生赛]numgame
  • java异常机制分析
  • 浅谈Python中的内存管理 程序的内存布局
  • (具体解决方案)训练GAN深度学习的时候出现生成器loss一直上升但判别器loss趋于0
  • Redis 安装以及配置隧道连接
  • FFmpeg 使用总结
  • 出现Error: Cannot find module ‘compression-webpack-plugin‘错误
  • Elasticsearch 摄取管道 — 检测到管道的死循环
  • C# ListBox自动滚动方法
  • 使用(Ajax原理)Promise + XHR实现请求数据
  • 【HTML】<input>
  • 数据结构中一些零碎且易忘的知识点
  • 2023上半年京东烘干机行业品牌销售排行榜(京东商品数据)
  • ADS版图画封装学习笔记
  • 空地协同智能消防系统——无人机、小车协同
  • 篇二十二:解释器模式:处理语言语法
  • 【LeetCode 75】第二十一题(1207)独一无二的出现次数
  • node中使用express+mongodb实现分页查询
  • 信创优选,国产开源。Solon v2.4.2 发布
  • Java HTTP client常见库
  • 【Java基础教程】(四十四)IO篇 · 上:File类、字节流与字符流,分析字节输出流、字节输入流、字符输出流和字符输入流的区别~
  • 电商数据获取:网络爬虫还是付费数据接口?
  • 树形结构——二叉树类型
  • JavaScript对象的方法与原型链
  • Oracle入门初探---第一章 批量创建表、索引并插入测试数据
  • 全面讲解最小二乘法
  • 【阻止IE强制跳转到Edge浏览器】