当前位置:   article > 正文

Unity UGUI 绘制连接两点的线

Unity UGUI 绘制连接两点的线

1、先弄个Image (以下命名为Line),设置为如下格式:

其高度就是连线的长度,Pivot的Y值设置为0是为了方便后面旋转的时候能绕起点旋转。

 

2、以上述的Image的原点为起点,以目标位置为终点。

那么线段的长度很容易计算,直接调用 Vector3.Distance 就可以了。

  1. Vector3 targetPos = mTarget.localPosition;
  2. Vector3 curPos = transform.localPosition;
  3. Line.rectTransform.sizeDelta = new Vector2(8, Vector3.Distance(targetPos, curPos));

 

3、设置Image的旋转,使其指向终点:

  1. //设置角度;
  2. double angle = Math.Atan2(targetPos.y - curPos.y, targetPos.x - curPos.x) * 180 / Math.PI;
  3. Line.transform.rotation = Quaternion.Euler(0, 0, (float)angle + 270);

这样就完成了在UGUI上连接两点的线段。

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/112436
推荐阅读
相关标签
  

闽ICP备14008679号