/// <summary>
/// 更新坐标
/// </summary>
private void UpdatePosition()
{
transform.localPosition = WorldPointToUILocalPoint(target.position+offset) ;
cachePoint = target.position+ offset;
}
/// <summary>
/// 世界坐标转换为ui坐标
/// </summary>
/// <param name="point"></param>
/// <returns></returns>
private Vector3 WorldPointToUILocalPoint(Vector3 point)
{
Vector3 screenPoint = Camera.main.WorldToScreenPoint(point);
Vector2 localPoint;
RectTransformUtility.ScreenPointToLocalPointInRectangle((RectTransform)canvas.transform, screenPoint, uiCamera, out localPoint);
return localPoint;
}