Страница 1 из 1
Рисование точек в наилучшем масштабе
Добавлено: 07 апр 2005, 00:01
BUFFER90
Задали написать программу, которая бы читала из файла точки и выводила их в самом удобном масштабе. То есть если точки лежат только в первой и четвертой четвертях, то рисовать только ту часть графика, в которой находятся точки (1 и 4 четверти). Есть ли какой -нибудь более простой алгоритм, чем рассмотрение случаев расположения точек в лоб?
Помогите,пожалуйста! Заранее огромное спасибо!
Добавлено: 07 апр 2005, 11:53
Romeo
Заводим матрицу 3 на 3. Каждый элемент хранит количество точек в определённой области декартовой плоскости.
Код: Выделить всё
|
|
(0,0) (0,1) (0,2)
|
--(1,0)---------(1,1)------------(1,2)--
|
(2,0) (2,1) (2,2)
|
|
Т.е. угловые элементы матрицы отвечают за координатные четверти, элемент (1,1) - за начало координат, а все остальные элменты матрицы - за координатные полуоси.
Теперь пробегаем по всем данным точкам и анализируем их координаты (>0, <0 или =0) и инкрементрируем соответствующий элемент матрицы.
После окончания цикла достаточно проанализировать элементы матрицы. Если мы имеем все нули в любой крайней строке или в любом крайнем столбце (крайний - это первый или последний), то соответствующую полуплоскость можно не рисовать.
Добавлено: 10 апр 2005, 14:49
BUFFER90
У тебя кода случайно не найдется? Мне алгоритм как-то не очень понятен.
Добавлено: 11 апр 2005, 14:42
Romeo
Конечно же готового кода у меня нет, а реализовывать алгоритм, к сожалению, нет времени. Лучше спроси, что именно не понятно в алгоритме. Отвечу с удовольствием. Старался описывать алгоритм предельно ясно, честное слово, специально не использовал никаких computer science терминов - лишь элементарные термины школьной геометрии и алгебры первого курса иниверситета.
Re: Рисование точек в наилучшем масштабе
Добавлено: 12 апр 2005, 08:48
Hup
BUFFER90 писал(а):То есть если точки лежат только в первой и четвертой четвертях, то рисовать только ту часть графика, в которой находятся точки (1 и 4 четверти). Есть ли какой -нибудь более простой алгоритм, чем рассмотрение случаев расположения точек в лоб?
Можно еще считать угл... ИМХО не сложно
Добавлено: 19 апр 2005, 20:44
BUFFER90
Спасибо большое. Все это навело меня на очень даже неплохие мысли. Очень даже неплохо вышло.