14 private const int NumPivotLocations = 8;
27 Vector3 nearPivot = Vector3.zero;
28 Vector3 currentPivot = Vector3.zero;
29 Vector3 anchorPosition = anchor.position;
30 float nearDist = Mathf.Infinity;
32 if (localPivotPositions == null || localPivotPositions.Length < NumPivotLocations)
44 for (
int i = 0; i < localPivotPositions.Length; i++)
46 currentPivot = localPivotPositions[i];
47 float dist = Vector3.Distance(anchorPosition, contentParent.TransformPoint(currentPivot));
51 nearPivot = currentPivot;
60 currentPivot = localPivotPositions[i];
61 float dist = Vector3.Distance(anchorPosition, contentParent.TransformPoint(currentPivot));
65 nearPivot = currentPivot;
74 currentPivot = localPivotPositions[i];
75 float dist = Vector3.Distance(anchorPosition, contentParent.TransformPoint(currentPivot));
79 nearPivot = currentPivot;
87 if (localPivotPositions == null || localPivotPositions.Length == 0)
89 nearPivot = contentParent.position;
93 nearPivot = localPivotPositions[(int)pivotType];
107 if (pivotPositions == null || pivotPositions.Length < NumPivotLocations)
109 pivotPositions =
new Vector3[NumPivotLocations];
113 localContentSize *= 0.5f;
120 pivotPositions[(int)
ToolTipAttachPointType.BotLeftCorner] =
new Vector3(-localContentSize.x, -localContentSize.y, 0f);
121 pivotPositions[(int)
ToolTipAttachPointType.BotRightCorner] =
new Vector3(localContentSize.x, -localContentSize.y, 0f);
122 pivotPositions[(int)
ToolTipAttachPointType.TopLeftCorner] =
new Vector3(-localContentSize.x, localContentSize.y, 0f);
123 pivotPositions[(int)
ToolTipAttachPointType.TopRightCorner] =
new Vector3(localContentSize.x, localContentSize.y, 0f);