У меня есть программа на С ++, которую пользователь нажимает на две точки на экране, и я должен создать логарифмическую шкалу из этого ..
10 100 1000 10000
учитывая, что моя первая точка на 10 пикселей 5 и 10000 на 200 пикселей
Итак, как мне рассчитать уравнение, которое заставило бы мою мышь показывать значение журнала, когда оно указывает на экран.
Благодарю.
Все, что вам нужно, это log
функция. Давайте сначала предположим, что нет смещения. Если вам дано значение x
по оси X вы можете получить его лог-значение (например, в базе 10):
log(x) / log(10)
Если ты хочешь x
считать от определенного смещения (скажем, x0
), вы должны настроить x
:
log(x - x0) / log(10)
Если вы хотите, чтобы результирующая точка была смещена в точке (скажем, lx0
), ну просто сделай это
log(x - x0) / log(10) + lx0
Других решений пока нет …