0
我需要找到他的所有孩子的一個部件的邊界。我試着用下面的代碼,但得到了一個奇怪的輸出。無論是該部件有超過100像素的寬度和高度的孩子,輸出約爲1.如何計算小部件邊界?
Vector3 widgetBounds = NGUIMath.CalculateRelativeWidgetBounds(this.transform).size;
我在做什麼錯?
謝謝。
我需要找到他的所有孩子的一個部件的邊界。我試着用下面的代碼,但得到了一個奇怪的輸出。無論是該部件有超過100像素的寬度和高度的孩子,輸出約爲1.如何計算小部件邊界?
Vector3 widgetBounds = NGUIMath.CalculateRelativeWidgetBounds(this.transform).size;
我在做什麼錯?
謝謝。
這是做你想做的嗎?
// copied from UIDragObject.UpdateBounds()
public static Bounds GetContentRectBounds(UIRect content, UIPanel uiPanel){
Matrix4x4 toLocal = uiPanel.transform.worldToLocalMatrix;
Vector3[] corners = content.worldCorners;
for(int i = 0; i < 4; ++i){
corners[i] = toLocal.MultiplyPoint3x4(corners[i]);
}
Bounds mBounds = new Bounds(corners[0], Vector3.zero);
for(int i = 1; i < 4; ++i){
mBounds.Encapsulate(corners[i]);
}
return mBounds;
}
像'封裝()'而不是'SetMinMax()',所以很特別。 :d – Geri