private void DrawLine(RectTransform lineTransform, Vector2 startPoint, Vector2 endPoint, Color lineColor, float lineWidth = 5f)
{
Log.Debug($"startPoint.x:{startPoint.x}; startPoint.y:{startPoint.y}; endPoint.x:{endPoint.x}; endPoint.y:{endPoint.y}");
Vector2 direction = endPoint - startPoint;
float length = direction.magnitude;
if (length == 0) return;
Vector2 normalizedDirection = direction.normalized;
float angle = Mathf.Atan2(normalizedDirection.y, normalizedDirection.x) * Mathf.Rad2Deg;
lineTransform.localRotation = Quaternion.AngleAxis(angle, Vector3.forward);
lineTransform.sizeDelta = new Vector2(length, lineWidth);
lineTransform.anchoredPosition = startPoint + normalizedDirection * length * 0.5f;
lineTransform.gameObject.GetComponent<Image>().color = lineColor;
}