Кривые и поверхности в компьютерной геометрии, I
Деление рациональной кривой Безье
Для заданного из интервала требуется построить два новых набора опорных точек и весов и так, чтобы кривые Безье, построенные по этих новым наборам, совпали бы (как геометрическое место точек) соответственно с двумя дугами исходной кривой Безье, на которые она разбивается точкой
Данная задача имеет важное значение в теории кривых Безье. Необходимость деления кривых Безье возникает в тех случаях, когда требуется изменить какую-то часть кривой, оставляя некоторую другую ее часть неизменной. Поскольку смещение любой опорной точки кривой Безье меняет всю ее в целом, возникает необходимость разбивать кривую Безье на несколько частей. Это дает возможность менять только одну из получившихся частей исходной кривой Безье (ставших уже самостоятельными кривыми Безье), не трогая остальные части исходной кривой.
Деление рациональной кривой Безье сводится к делению обычной кривой Безье, которая порождает данную рациональную кривую.
Рассмотрим рациональную кривую Безье, построенную по опорным точкам с весами Обозначим ее через Как мы знаем, эта кривая порождается обычной кривой Безье, построенной по вспомогательным опорным точкам которые зависят от выбора начала координат. При этом начало координат необходимо выбирать так, чтобы оно не совпадало ни с одной из опорных точек Обозначим построенную таким образом вспомогательную обычную кривую Безье через Разделим вспомогательную кривую в точке в отношении как это делалось выше. Таким образом, возникает три вспомогательные (обычные) кривые Безье:
- это кривая Безье, построенная по опорным точкам
- это кривая Безье, построенная по опорным точкам
- это кривая Безье, построенная по опорным точкам p Здесь
( 5.28) |
Кривые Безье и порождают две рациональные кривые Безье и по следующему правилу:
- рациональная кривая Безье, построенная по опорным точкам с весами
- рациональная кривая Безье, построенная по опорным точкам с весами где
( 5.29) |
( 5.30) |
Из формул (5.28), (5.29) и (5.30) следует, что
( 5.31) |
Равенства (5.31) означают, что кривые Безье и соответствуют рациональным кривым Безье и с весами и соответственно.
Лемма 5.3. Кривые и делят кривую в точке в отношении
Доказательство см. в [1].
Увеличение числа опорных точек рациональной кривой Безье
Операция увеличения числа опорных точек рациональной кривой Безье сводится к уже известной нам операции увеличения числа опорных точек обычной кривой Безье в пространстве и применению отображения Более подробно, алгоритм состоит в следующем.
- По данной рациональной кривой Безье определяемой опорными точками и весами строим обычную кривую Безье в пространстве определяемую опорными точками Тогда
-
Увеличиваем число опорных точек обычной кривой Безье на единицу способом, описанным в разделе 3.6. А именно, строим новые опорные точки по формуле
Точки и можно определить произвольно, т. к. они входят в правую часть последней формулы с нулевыми коэффициентами.
-
Применяем к новым опорным точкам преобразование Поскольку кривая Безье определяемая опорными точками - это та же самая кривая, что и то Но одновременно по определению рациональной кривой Безье имеем: где - рациональная кривая Безье, определяемая опорными точками и весами где -е компоненты точек в
Окончательные формулы имеют вид
где - исходные опорные точки и веса данной рациональной кривой Безье i а - новые опорные точки и веса той же кривой, но - с увеличенным на единицу количеством опорных точек (и, соответственно, с большим на единицу количеством весов).