// Token: 0x06004A59 RID: 19033 RVA: 0x0011EF0C File Offset: 0x0011D10C public static global::AABBox CalculateAbsoluteWidgetBounds(Transform trans) { global::AABBox result; using (global::NGUIMath.WidgetList widgetsInChildren = global::NGUIMath.GetWidgetsInChildren(trans)) { if (widgetsInChildren.empty) { result = default(global::AABBox); } else { global::AABBox aabbox = default(global::AABBox); bool flag = true; foreach (global::UIWidget uiwidget in widgetsInChildren) { Vector2 vector; Vector2 vector2; uiwidget.GetPivotOffsetAndRelativeSize(out vector, out vector2); Vector3 vector3; vector3.x = (vector.x + 0.5f) * vector2.x; vector3.y = (vector.y - 0.5f) * vector2.y; Vector3 vector4; vector4.x = vector3.x + vector2.x * 0.5f; vector4.y = vector3.y + vector2.y * 0.5f; vector3.x -= vector2.x * 0.5f; vector3.y -= vector2.y * 0.5f; vector3.z = 0f; vector4.z = 0f; global::AABBox aabbox2 = new global::AABBox(ref vector3, ref vector4); Matrix4x4 localToWorldMatrix = uiwidget.cachedTransform.localToWorldMatrix; global::AABBox aabbox3; aabbox2.TransformedAABB3x4(ref localToWorldMatrix, out aabbox3); if (flag) { aabbox = aabbox3; flag = false; } else { aabbox.Encapsulate(ref aabbox3); } } if (flag) { result = new global::AABBox(trans.position); } else { result = aabbox; } } } return(result); }
// Token: 0x06004A5D RID: 19037 RVA: 0x0011F354 File Offset: 0x0011D554 public static global::AABBox CalculateRelativeInnerBounds(Transform root, global::UISlicedSprite sprite) { Transform cachedTransform = sprite.cachedTransform; Matrix4x4 matrix4x = root.worldToLocalMatrix * cachedTransform.localToWorldMatrix; Vector2 vector; Vector2 vector2; sprite.GetPivotOffsetAndRelativeSize(out vector, out vector2); float num = (vector.x + 0.5f) * vector2.x; float num2 = (vector.y - 0.5f) * vector2.y; vector2 *= 0.5f; Vector3 localScale = cachedTransform.localScale; float x = localScale.x; float y = localScale.y; Vector4 border = sprite.border; if (x != 0f) { border.x /= x; border.z /= x; } if (y != 0f) { border.y /= y; border.w /= y; } Vector3 vector3; vector3.x = num - vector2.x + border.x; Vector3 vector4; vector4.x = num + vector2.x - border.z; vector3.y = num2 - vector2.y + border.y; vector4.y = num2 + vector2.y - border.w; vector3.z = (vector4.z = 0f); global::AABBox aabbox = new global::AABBox(ref vector3, ref vector4); global::AABBox result; aabbox.TransformedAABB3x4(ref matrix4x, out result); return(result); }