Программный комплекс математического графопостроителя MGraph (далее просто графопостроитель), разработан на основе технологии межплатформенного проектирования приложений (cross-platform application) под операционные системы MS Windows 9x/NT/2000 и Linux SlackWare/Red Had. Не смотря на существенные различия этих операционных систем, графопостроитель не обращается к обособленным технологическим решениям (например, Реестр), не использует предкомпиляцию в ПИ-код (как, например Java-аплеты) и полностью собирается в каждой операционной системе отдельно: в MS Windows при помощи Delphi 6, а в Linux используется Kilix. Рабочая область (окно) графопостроителя условно разбито на три области:
Меню и кнопки инструментов используют стандартный интерфейс любой современной программы и не вызовут особых
понятийных затруднений (возможность распечатки на принтере построенного графика и сохранения на диске в
формате графических файлов доступна только в окончательной версии). Область параметров включает четыре панели: Dimension, Multiple, Axis и Axis divisions.
Первая (Dimension) задает границы области определения функциональной или математической зависимости для построения
графика. Вторая
Числовые параметры панелей Dimension и Multiple обрабатываются, используя алгоритм разложения, поэтому в них можно задавать математические константы (например, pi или e), алгебраические операции (сложение, вычитание, произведение и т.д.) и даже функциональные выражения. Однако следует помнить, что здесь разрешено использование только константных выражений и нельзя указывать переменные области определения (например, x или y). Кнопки Set Font на панелях Axis и Axis divisions вызывают стандартное диалоговое окно выбора шрифтов и таким образом позволяют определить размеры, цвет, начертание шрифтов для отображения заголовков координатных осей и числовых подписей к осям.
Для определения функциональной или математической зависимости при построении графика следует помнить "правило одной строки" используемое в языках программирования, то есть, например дробные выражения записываются при помощи знака "/" (слеш), а степень при помощи знака "^". Порядок алгебраических операций задается, используя круглые скобки. Также круглые скобки используются для определения аргументов функций. Для простых аргументов их можно опускать, например: вместо Sin(x) можно пользоваться Sinx, но нельзя Sin2x вместо Sin(2*x), то есть, знаки алгебраических операций опускать нельзя: сложение (знак "+"), вычитание (знак "-"), умножение (знак "*") и т.д. Регистр символов не учитывается: записи ArcScHy и arcschy считаются одинаковыми. Координатные оси не являются исключением: записи X*x и x*x одинаково определяют функцию квадрата x. Знак минус ("-") обозначает как вычитание, так и унарную операцию отрицательного числа. Символ пробела допустим в любом месте, за исключением названия функции.
Построение трехмерных поверхностей доступно только в окончательной версии. Однако алгоритм разложения понимает также и координатную ось y в чем можно убедиться, протестировав, например функции CosY или ArcCosY (вместо значения координатной оси y всегда подставляется нуль).