Алгоритм с линейками

Kabbalah 25.03.2004 - 15:05 | Есть график, который отображает некоторый сигнал. Нужно нарисовать горизонтальную и вертикальную шкалу с рисками. На уровне интерфейса и прорисовки все сделал. Нехватает простой вещи, а именно идеи, как перерисовывать шкалу на линейках, при изменении размера формы и соответсвенно графика. Т.е. при уменьншении - часть рисок должна, пропадать, а при увеличении соответсвенно появляться. Ковыряюсь уже с утра и все фигня какая-то получается, коллеги, кто делал, что-либо подобное, посоветуйте.
Наф 1 - 25.03.2004 - 15:13 | Вариант сдлеать число видимых рисок на линейки параметром, со значением по умолчанию скажем 10. Таквот при изменении размера число видимых рисок остается постоянным, просто "масштабная длина" между ними скажем в одном масштабе 1, в более мелком 0.1, а более крупном - 10
Bronya 2 - 25.03.2004 - 15:21 | Хочу еще добавить к словам Наф-а Когда сделаешь, так, как он советует, делай это "число видимых рисок" динамическим, т.е. когда расстояние между рисками увеличивается на некоторое "пороговое значение", то общее количество рисок, например, удваивается... (соответственно все наоборот при уменьшении)
yaro1st 3 - 29.03.2004 - 10:54 | Задаться длиной dx на линейке, соответствующей 1x10^n ед. параметра (исходя из высоты шрифта и количества маркированных меток, например), к которому линейка прикладывается, и соответсвующее значение диапазона значений параметра dp. Посчитать шаг следования маркированных меток (каждая 10-я): dp10=10^ceil(log10(dp)). Каждая 1-я метка соответсвенно с шагом dp1=dp10/10. И прорисовать в нужном интервале от dp10*floor(st_p/dp10) до dp10*ceil(fn_p/dp10). На картинке - куда попадет, но с гарантией, что метки не неложатся одна на другую для любого порядка чисел.
leschakon2003 4 - 29.03.2004 - 13:48 | Какие линейки то нужны. Лагорифмическая или обычная?
leschakon2003 5 - 29.03.2004 - 14:03 | Мы такую штуку 15 лет назад делали. Если ось координат десятичнай то для нее мы заводили массив шагов делений 1, 1.5, 2, 2.5, 3 , 5 Потом исходя из пределов измерений выбирали нужный шаг сетки и рисовали ось. Также вычислялась степень числа 10 , чтобы указать на оси. Пока помню только это... Не помню как , но шаг сетки, пределы и степень 10 были связаны вместе. Будут новости напишу.

>>