Divided rectangle utils

This commit is contained in:
2021-11-25 20:03:36 -05:00
parent 09ab66cfb5
commit ecf2e62963
3 changed files with 128 additions and 52 deletions

View File

@ -61,60 +61,40 @@ void MixerDroplet::Draw() {
default:
case DropletState::kFull:
divider = (GetScreenMax()-GetScreenMin())/5.5;
DrawSolidRect(Patch(),
GetScreenMin(),
GetTitleHeight()*(1.0f-mix[0].Process()),
divider,
GetTitleHeight()-1,
true);
DrawSolidRect(Patch(),
GetScreenMin()+divider,
GetTitleHeight()*(1.0f-mix[1].Process()),
GetScreenMin()+divider*2,
GetTitleHeight()-1,
true);
DrawSolidRect(Patch(),
GetScreenMax()-divider*2,
GetTitleHeight()*(1.0f-mix[2].Process()),
GetScreenMax()-divider,
GetTitleHeight()-1,
true);
DrawSolidRect(Patch(),
GetScreenMax()-divider,
GetTitleHeight()*(1.0f-mix[3].Process()),
GetScreenMax(),
GetTitleHeight()-1,
true);
DrawFourDividedRectangles(Patch(),
divider,
GetScreenMin(),
GetScreenMax(),
GetTitleHeight()*(1.0f-mix[0].Process()),
GetTitleHeight()-1,
GetTitleHeight()*(1.0f-mix[1].Process()),
GetTitleHeight()-1,
GetTitleHeight()*(1.0f-mix[2].Process()),
GetTitleHeight()-1,
GetTitleHeight()*(1.0f-mix[3].Process()),
GetTitleHeight()-1);
break;
case DropletState::kLeft:
divider = (GetScreenMax()-GetScreenMin())/4.5;
DrawSolidRect(Patch(),
GetScreenMin(),
GetTitleHeight()*(1.0f-mix[0].Process()),
GetScreenMin()+divider,
GetTitleHeight()-1,
true);
DrawSolidRect(Patch(),
GetScreenMax()-divider,
GetTitleHeight()*(1.0f-mix[1].Process()),
GetScreenMax(),
GetTitleHeight()-1,
true);
DrawTwoDividedRectangles(Patch(),
divider,
GetScreenMin(),
GetScreenMax(),
GetTitleHeight()*(1.0f-mix[0].Process()),
GetTitleHeight()-1,
GetTitleHeight()*(1.0f-mix[1].Process()),
GetTitleHeight()-1);
break;
case DropletState::kRight:
divider = (GetScreenMax()-GetScreenMin())/4.5;
DrawSolidRect(Patch(),
GetScreenMin(),
GetTitleHeight()*(1.0f-mix[2].Process()),
GetScreenMin()+divider,
GetTitleHeight()-1,
true);
DrawSolidRect(Patch(),
GetScreenMax()-divider,
GetTitleHeight()*(1.0f-mix[3].Process()),
GetScreenMax(),
GetTitleHeight()-1,
true);
DrawTwoDividedRectangles(Patch(),
divider,
GetScreenMin(),
GetScreenMax(),
GetTitleHeight()*(1.0f-mix[2].Process()),
GetTitleHeight()-1,
GetTitleHeight()*(1.0f-mix[3].Process()),
GetTitleHeight()-1);
break;
}
DrawName("Mixer");