Уменьшение области со сменой цвета градиента

174
27 октября 2021, 14:30

Есть переменная:

int liquid = 150;

Мне нужно, чтобы по этому принципу работала заливка.
То есть 150 это 100%.
К примеру взяли 6 - осталось 144 - это значит 144*100/150=96%.

Значит область заливки должна быть уже 96%, ну я мог бы сделать это через filAmount у изображения и сделать по принципу ((144*100)/150)/100 = 0.96 , но к сожалению fillAmount - это не то, что нужно и градиент там не поддерживается и без указания на само изображение, он не будет работать.

При этом всем, мне нужно делать смену цвета, самой заливки, от яркого и постепенно менять цвет до нужного крайнего.

Кто-то сталкивался, с такой задачей?

Answer 1

Если кому-то интересно будет, сделал через Button.

float pin = Mathf.PingPong(Time.time / 4, 1);
Button b = but.GetComponent<Button>();
ColorBlock cb = b.colors;
cb.normalColor = Color.Lerp(Color.red, Color.green, pin);
b.colors = cb;
b.GetComponent<Image>().fillAmount = pin;
b.GetComponentInChildren<Text>().text = ((int)(pin * 100)).ToString() + "%";
READ ALSO
Update и открытые методы

Update и открытые методы

Может кто-то объяснить, можно ли делать так:

90
Вывод данных из БД в DataGridView

Вывод данных из БД в DataGridView

не смог найти тему с ответом на мой вопросЕсть база данных на локальном сервере MySql

131
Сonversion failed when converting date and or/time from a character to string c# Помогите Решить [дубликат]

Сonversion failed when converting date and or/time from a character to string c# Помогите Решить [дубликат]

Никак не могу решить проблему с конверсиейВ БД значение столбцов : date и time, использую DateTimePicker в WinForms и создаю новые переменные в которые записываю...

111
Валидация кода на C#

Валидация кода на C#

Есть файлы расширения cs, которые генерируются утилитойМне необходимо программно проверять на корректность сгенерируемые файлы программно

123