10.7. ВОСПРОИЗВЕДЕНИЕ ПРЯМЫХ ЛИНИЙ И КРИВЫХ
В общем случае математическое описание кривой, заданной на плоскости, может быть представлено или с помощью параметрического представления
или уравнения
Обычно при воспроизведении кривых удобнее пользоваться первым способом представления: в качестве параметра
берется последовательность значений
и воспроизводятся пикселы, координатами которых служат округленные значения
Получаемое таким образом отображение может состоять как из отдельных пикселов, так и соединяющих их линий. Решающее значение имеет выбор числа отображаемых точек. Если точки отстоят друг от друга слишком далеко, то воспроизводимая кривая будет иметь вид пунктирной линии (если воспроизводятся только отдельные точки) или многоугольника (если точки соединены линиями). Если точки расположены слишком близко друг к другу, то это может привести не только к излишним вычислениям, но и к такой кривой, отдельные части которой будут выглядеть слишком толстыми. Расстояние
между воспроизводимыми точками, соответствующими значениям
отличающимся друг от друга на
приближенно определяется формулой
где
— производные
по параметру
Таким образом, в различных частях кривой значения
должны выбираться по-разному. К сожалению, не всегда просто вычислить значения
с помощью уравнения (10.40). Например, в случае многочленов Безье в это уравнение приходится подставлять члены уравнения (10.14). При соединении точек линиями следует избегать возникновения острых углов, что зависит от кривизны. Последняя же обратно пропорциональна расстоянию
, следовательно, может потребоваться иная стратегия определения расстояния между точками. Совершенно очевидно, что воспроизведение гладкой кривой, проходящей через множество точек, не сводится исключительно к отысканию уравнения, описывающего такую кривую.
Пример 10.5. Требуется воспроизвести параболу
Вначале вычисляется расстояние между парой точек как функция параметра
Итак,
В таком случае расстояние
будет определяться как
т.е. оно прелставляет собой возрастающую функцию параметра
Отметим, что в промежуточной точке сумма
равна
. Если воспроизводятся только точки, то шаг по параметру
следует выбирать обратно пропорциональным значению