Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Алгоритмы > Формула для увеличения отличия чисел с сохранением


Автор: manking 26.10.2018, 01:23
Добрый день. 

Нужно увеличить различия двух столбиков, при этом,сохранив позицию текста.

Дано: A = 52, B = 48, C = 104. Это высота элементов.

Нужно маштабировать элементы A и B на коэффициент Q, чтобы визуально они сильно отличались, сохранив позиции точки C.

То есть A2 может быть равно 74, B2 = 51, а С2 = 130. В итоге визуально, A2 будет казаться больше B2, а С2 будет располагаться над B2

Вот картинка
https://ibb.co/e02XBV

Автор: Akina 26.10.2018, 08:15
Код

A1 = (A+B) * IIF(A>B, 2/3, 1/3)
B1 = (A+B) * IIF(A<B, 2/3, 1/3)

Само собой, константы 1/3 и 2/3 - не догма... главное, чтобы их сумма была равна единице (0.4 и 0.6, к примеру, тоже ничего...). 

Вот только я не понимаю, как "сохранив позиции точки C" соотносится с "A = 52, B = 48" (сумма 100) плюс "A2 может быть равно 74, B2 = 51" (сумма ни хрена не 100)...

Автор: manking 26.10.2018, 08:22
Цитата(Akina @ 26.10.2018,  08:15)

Вот только я не понимаю, как "сохранив позиции точки C" соотносится с "A = 52, B = 48" (сумма 100) плюс "A2 может быть равно 74, B2 = 51" (сумма ни хрена не 100)...

Ну сохранив позицию С пропорционально столбику. Имеется ввиду С2 будет уже 74 + 51 = 125

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)