private void GetOrderedChildren(ref int first, ref int second, out float firstDist, out float secondDist, Vector3 p) { firstDist = BBTree.SquaredRectPointDistance(this.tree[first].rect, p); secondDist = BBTree.SquaredRectPointDistance(this.tree[second].rect, p); if (secondDist < firstDist) { int num = first; first = second; second = num; float num2 = firstDist; firstDist = secondDist; secondDist = num2; } }
public NNInfoInternal QueryClosest(Vector3 p, NNConstraint constraint, ref float distance, NNInfoInternal previous) { float num = distance * distance; float num2 = num; if (this.count > 0 && BBTree.SquaredRectPointDistance(this.tree[0].rect, p) < num) { this.SearchBoxClosest(0, p, ref num, constraint, ref previous); if (num < num2) { distance = Mathf.Sqrt(num); } } return(previous); }