GameObject line = null;
private void DrawLine(RectTransform parent)
{
Vector3 pointAPosition = points[0];
Vector3 pointBPosition = Input.mousePosition;
Vector3 centerPosition = (pointAPosition + pointBPosition) / 2f;
if (line == null)
{
line = Instantiate(Resources.Load<GameObject>("Line"), pointAPosition, Quaternion.identity, parent);
}
RectTransform connectionLine = line.GetComponent<RectTransform>();
//计算长度
float distance = Vector3.Distance(pointAPosition, pointBPosition);
connectionLine.sizeDelta = new Vector2(distance-5, connectionLine.sizeDelta.y);
//计算角度
Vector3 direction = (pointAPosition - pointBPosition).normalized;
float angle = Mathf.Atan2(direction.y, direction.x) * Mathf.Rad2Deg;
connectionLine.rotation = Quaternion.AngleAxis(angle, Vector3.forward);
connectionLine.position = centerPosition;
}