mirror of
https://github.com/ppy/osu.git
synced 2025-03-05 14:22:55 +08:00
Make getOriginPositionFromQuad
local
This commit is contained in:
parent
1bc8460902
commit
c9b4f9eb71
@ -281,6 +281,23 @@ namespace osu.Game.Skinning.Editor
|
||||
if (parent == null)
|
||||
return drawable.Anchor;
|
||||
|
||||
static Vector2 getOriginPositionFromQuad(in Quad quad, Anchor origin)
|
||||
{
|
||||
var result = quad.TopLeft;
|
||||
|
||||
if (origin.HasFlagFast(Anchor.x2))
|
||||
result.X += quad.Width;
|
||||
else if (origin.HasFlagFast(Anchor.x1))
|
||||
result.X += quad.Width / 2f;
|
||||
|
||||
if (origin.HasFlagFast(Anchor.y2))
|
||||
result.Y += quad.Height;
|
||||
else if (origin.HasFlagFast(Anchor.y1))
|
||||
result.Y += quad.Height / 2f;
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
var screenPosition = getOriginPositionFromQuad(drawable.ScreenSpaceDrawQuad, drawable.Origin);
|
||||
var absolutePosition = parent.ToLocalSpace(screenPosition);
|
||||
var factor = parent.RelativeToAbsoluteFactor;
|
||||
@ -304,23 +321,6 @@ namespace osu.Game.Skinning.Editor
|
||||
return result;
|
||||
}
|
||||
|
||||
private static Vector2 getOriginPositionFromQuad(in Quad quad, Anchor origin)
|
||||
{
|
||||
var result = quad.TopLeft;
|
||||
|
||||
if (origin.HasFlagFast(Anchor.x2))
|
||||
result.X += quad.Width;
|
||||
else if (origin.HasFlagFast(Anchor.x1))
|
||||
result.X += quad.Width / 2f;
|
||||
|
||||
if (origin.HasFlagFast(Anchor.y2))
|
||||
result.Y += quad.Height;
|
||||
else if (origin.HasFlagFast(Anchor.y1))
|
||||
result.Y += quad.Height / 2f;
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
private static void applyAnchor(Drawable drawable, Anchor anchor)
|
||||
{
|
||||
if (anchor == drawable.Anchor) return;
|
||||
|
Loading…
Reference in New Issue
Block a user