UE4_Widget 两个不同的WidgetUI建立一条连线

获取Widget 控件的位置:

在这里插入图片描述

画线的函数:

在这里插入图片描述

DrawLine 在HUD和Widget 里都有这个函数,但是HUD的DrawLine 不支持抗锯齿(可能我比较菜),
但是在Widget里的DrawLine 里AntiAlias 设置为true ,就可以抗锯齿了

两个不同的Widget 蓝图对象,要把它们转换到同一个坐标系下

实现的效果大概如下:
在这里插入图片描述
实现思路:画线的逻辑写在WidgetA,所以要把WidgetB的位置信息转换到WidgetA下。

  1. WidgetA下的DrawLine下的PositionA的起始点默认是从Widget的左上角开始的,因为设置了一下参数的缘故,导致出现了一些偏移。所以PositionA 设置为(5,10)
  2. 把Widget B 的坐标转换到Widget A 下的实现逻辑是在这里插入图片描述
  3. 乘以一个-1是因为计算后的坐标是反方向的
  4. 蓝图完整截图如下
    在这里插入图片描述
  • 乘以-1之后要加上一个偏移值的原因在于想从widgetB的中间位置开始建立连线,不然是从widgetB最左边开始建立连线

版权声明:本文为longyanbuhui原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。