Исходник программы, показывающей пример построения графиков функций. Она строит одно или два выражения на общем наборе осей X-Y, обрабатывает большинство арифметических, тригонометрических, логарифмических и степенных выражений.
Программа также строит параметрические выражения, например x = sin (t); y = cos (t), для t = от 0 до 360 градусов образует круг с радиусом 1. Или для нефроида Фрита, показанного справа: x = (1 + 2 * sin (T / 2)) * cos (T); у = (1 + 2 * sin (Т / 2)) * sin (Т).
Программа использует компонент TChart для рисования диаграмм. Также используется бесплатный компонент TExParser для анализа и оценки выражений. Я немного изменил его, включив функции arcsin и arccos. Я также изменил имя с исходного TParser на TExParser, поскольку TParser уже существует в Delphi 5.
Самый сложный код заключался в поиске параметрической переменной, которая используется и для вставки множителя PI / 180 внутри триггерных функций, если пользователь установил флажок «Углы в градусах» в диалоговом окне выражения функции. Это необходимо потому, что все триггерные функции в Delphi (как и во всех других языках) ожидают, что по-умолчанию углы будут в радианах.