Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Разбиение графика на прямоугольники равной площади


Автор: HarleyDav 10.4.2014, 11:14
Добрый день!

Если не сложно, подскажите, пожалуйста, алгоритм, по которому можно разбить область под графиком(x,y). График задается таблично.

user posted image

Автор: PointerToNil 10.4.2014, 12:45
1) для конкретного решения не хватает данных - нужны либо площадь прямоугольника, либо их количество на данном отрезке значений х - во втором случае понадобится интеграл функции на данном отрезке (элементарно вычислить методом трапеций)
2) наиболее точная гистограмма получится, если площади прямоугольников будет равны интегралам функции на соответствующих отрезках значений х (т.е. площадям именно ПОД графиком, кускам тех же трапеций) - но конкретно задача могла быть и по-другому сформулирована
3) для моего (точного) варианта - составь формулу, находящую ширину куска, который нужно отрезать слева от трапеции (заданной четырьмя точками) чтобы получить заданную площадь (либо сигнализирующую о невозможности этого)
4) алгоритм должен проходить в цикле по трапециям слева направо, отрезая от них куски (а в случаях, когда остатка очередной трапеции (или всей её) не хватает для (до)заполнения площади очередного прямоугольника - переходить на следующую)

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