Основы САПР (CAD,CAM,CAE) - (Кунву Ли)(2004) (951262), страница 36
Текст из файла (страница 36)
Таким образом, степень В-сплайна'опреде' дянтсд не числом задающих точек, а значением А, которое должно быть на едини"".цу болыце желаемого значения степегш кривой. Значение А называется порядком '. В-сплайяп (ог!!тег о~ гАе В-зр)зпе сип е). .Чтээбй показать, что любой участок В-сплайна определяется лишь конечным !й(слом задающих точек, рассмотрим сегмент кривой, соответствующий значениям'-параметра из отрезка (г й,!1. Влиять на этот сегмент будут те задающие точки,'функции сопряжения которых (порядка А) отличны от нуля иа отрезке (гь О,!1 Среди функций первого порядка от нуля отлична только зть!(и). Подставив Ф; !(и) в!драную часть формулы (6.32), мы получим ненулевые на рассматриваемом отРЕеке фУнкции !Чьт(и) н Ж, !э(и).
ПеРваа фУнкциЯ полУчаетсЯ подстановкой !Ч, !(и) ф,'первое слагаемое, а вторая функция — подстановкой во второе слагаемое. За,'тем'по ненулевым функциям Жд(и) и Ф, !д(и) мы получаем функции третьего 'порядка н т.д., пока не будут получены функции порядка А. Распространение не:, нулевых значений иллюстрируег рис. 6.5. ' Гаванне отднчие у~лов разных типов состоит в том, 'что перв»!й н:пОследний!не» :А периодические узлы повторяются А раз. Повторение узлов приводит к тому, лто В-сплайн проходит через первую и последнюю задающие точки подобно кривой,:; ";.„ Безье.
В периодическом В-сплайне первая и последняя точки влияют на форму! кривой точно в той же степени, что и все остальные точки, а потому кривая.ие проходит через них. Вообще говоря, функция сопряжения для периодических, узлов повторяется через равные промежутки значений параметра, почему узам и называются периодическими. Непериодические кривые чаще используются в' системах автоматизированного проектирования, поскольку большинству конст'- рукторов привычнее работать с кривыми, проходящими через первую и послед-' -',- ',".-'',' нюю точки. Выражения (6.34) и (6.35) показывают, что расстояние между соседними узлами, 1' всегда одинаково и равно елинице. Такие узлы называются одиородиыии (инфо(л '.',"- АпоВ), как и В-сплайн, через них проходящий.
Однородный В-сплауш может быть.' . как периодическим„так и непериодическим. При изменении формы кривой кон- ': структоры часто добавляют' и удаляют узлы, в результате чего В-сплайн стано-„':. вится неоднородным. Поскольку однородность является частным случаем неод-,', нородности, неоднородные В-сплайны считаются обобщением однородных.
Таким-:,: образом, большинство САПР позволяют создавать и модифицировать неодно-'.,',: —.", родные н непериодические В-сплайны. Приведенные ниже примеры должны прояснить суть описываемых в этом разделе понятий. Пример 6.3 Записать уравнение непериодичного однородного В-сплайна третьего порядка в.,::! полиномиальной форме. Задающие точки кривой: Рь Р! и Рь Решение По формуле (6.35) узлы й имеют следующие значения: Г!! — 0 Г! — 0 Гэ — О„Гэ — 1 Г4 1 Гз — 1 Параметр и меняется от 0 до 1.
Воспользуемся формулой (6.33), чтобы получит» функции сопряжения первого порядка — !Чз!(и): зз < и < г, (и = 0)„ ' Прн создании поверхности нз набора В-спз!зйн!ов неебходнл!о, чтобы узловые значении"";...' всех кривым были одннаковммн. Подробно об этом рассказывается в работе Тилле ' '~ ра (1521. (1 з!'а! (и) = ~ 10 (1 й!!!(и) = ~ 10 (1 ~~2л (и) ~о в противном случае; г! <и <гэ (и 0) в противном случае; г! ~ и ~ гэ (и < 1); в противном случае; ~ 1: л ез '<Й44ФЕ,'.:!(и' ",71);.
Аг -(й)ра (О В 'йрбтпрззЕрзВМ'"СлдрутЧас; 1 Е, ~И6Е '(и 1); 4Л О в противном случае. Мй долзкны выбрать, какая из трех функций А!0 2(и), АЕ! !(и) и А2 2(и) будет иметь 24Ре!)2улевое значение при и = О. Пусть это будет функция А!2 2(и). Аналогично, выберем ту'же функцию А!аз(и) в качестве ненулевой в точке и = 1. Таким образом, '' Йл2(ц) становится единственной ненулевой функцией сопряжения первого по:рядка'для диапазона значений параметра ~0,1), причем на всем этом диапазоне -'ойа постоянна н равна единице.
Теперь получим нетривиальные функции сопряжения второго порядка по формуле (6:32)'! ! ) !,! ( з ) 2,! (1 и)~~~2,1 А! ы(и)= ' + = ' =(1-и); — 1 (и ез)А2л (е4 и)Азл ИАг! Ар () . 4 =и. Ез Ез Е4 Е! 1 Аналогичным образом получим функшзи сопряжения третьего порядка: (и Ею )АЙ! (Ез и)Ц 2 (1 и)АЕ22 Ез Е! Е4 -Ел 1 (и — Е, )А2! (Е, — и)АЕьз Ар !л(и)= ' '~ + '2 =и(1 — и)+(1-и)и =2И(1-и); Ез Е4 Е2 (24 — Ез)А'22 (Ез-И)Арзл 2 А2 зз(и) = ' + =и . Е4 Е2 Ез — Ез Итак, раскрытое в полиномиальной форме уравнение В-сплайна имеет вид: Р(и) =(1-и)'РО + 2и(1 — и)Р, +и'Рз (6.36) Уравнение кривой Беаье с задающими точками РО, Р, и Рз тоже можно записать в полиномиальцой форме: (2'! 0 р(ц) = и'(1-ц)2Р + и'(1-и)'Р, +Ц и'(1 — и)'Рл = =(1 — и) РО +2И(1-И)Р, +и'Р,.
. Сравнивая формулы (6.36) и (6.37), можно прийти к выводу, что непериодический одноролный В-сплайн третьего порядка с задающими точками Ро, Р, н Рз :совпадаег с кривой Безье, определяемой теми же задающими точками. Верно и ., лес общее утверждение: непериодический однородный В-сплайн совпадаег с кривой Б Р й Безье с теми же задающими точками, если порядок 72 совпадаег с количеством задающих точек и + 1. Другими словами, кривая Безье представляет собой частный случай В-сплайна.
3 р, рр,~! р р рр р у». р"""р -. неопределенность вида О/О. ПР04взер 6.4 Записать уравнение непернодичного однородного В сплаина третьего порядка с задающими точками РО, Рь ..., Рз в полиномиальной форме н продемонстри- ровать свойство локальности изменений. Решение По форлзуле (6.35) определяем узловые значения Е,: = О, Е! — - О, Е, = О, Ез = 1, Е, = 2, Е, = 3, ЕО = 4, Е! = 4, Ез = 4.
Параметр и меняется от 0 до 4. Воспользуелзся формулой (6.33) для получения ' функций сопряжения первоп! порялка — Ж 2(и): 11 АЕзл (и) = ~ '(о 4525!(и) = 4 ,0 11 А„( )=1 '(о (1 А2„(и) = ~ '(о 0<и ь1; в противном случае; 1<и <2„ в противном случае; 2<И~3; в противном случае; 3<и <4; в противном случае. Функции Ак!(И) и А2! !(и) мы не рассматриваем, выбирая Жз 2(и) в качестве един- ственной отличной от нуля прп и = О. По той же причине не рассматриваются ':,!.;;:;, Арз 2(и) и А!2 р(и). Теперь вычислим нетривиальные функции сопряжения второго порядка по формуле (6.32): ( — Е,)74Е2, (.з — )7~2, ( ) Ег Ез Е2 (и — Е, )А22л (Е„ -и)А'а, А!22(ц) = ' — "+ " ' '- =ИА22! +(2-И)АЕзл, Ез Ег Ез А!52(и) = ' " + ' — ' =(и -1)А!за +(З-и)А4,; (и-Е!!)АЕз! (Ез — и)А!4! Š— Е4 ( ) — + 5 (и -2)А2 +(4 — А2 5 4 0 5 ( 5) 5Л (2 ) 6! А2,2(и) = — ' + ' =(и — З)АЕ„. Е6 Е5 Е? ЕО Аналогичным образом вычисляются функции сопряжения третьего порядка: (и — ЕО)Ж02 (Ез — И)Хрз 2 А!05(ц)= ' + ' =(1 — и)АЕ!л — -(1-и) М22, Е2 ЕО Ел — Е! (и — е, )АЕ„(е4 -и)А!22 2-и А2„(и) = ' " + — ' ' =ИА262 + — А!22 = «!5ФЮЮЩЩФФ~~" " ' УйзезФФк" " ' %ммФВ~~-',~""ФФ2! ~Ф!~%%а!~~~еухь~Фмйзк664Умем~161 ...""~Фрзр г ~~ 53 +(и — 3)' дг„, р = и(1=и)+к - ~~ьг+ ' г(32:-.'и)й3::г г:,(2-:ц)' ' Юга(й) = ' + ='-йггг + — )тгзг и (и-~г)й~хз (гз -и)Фзг и ' 3-и 34 Гг Гз -гз 2 2 и [и(2-и) (3 — и)(и — 1)~ (3-и)г ( ~3) г'з.г (гб и)~~сг и — 1 4 — и г"т'зт(и)= ' + ' = — Ф + — Л' Гз Гз Гз -г„2 ' 2 (и — 1) ~(и — 1)(3 — и) (4 — и)(и -2)~< (4-и) 2 ' 1 2 й~зз +~ + ы + (и Гл )г гьг (Гт — ИР~зз и -2 ' 73~,3(и)= ' + "' = )у, +(4 и)лг зй = (и -2) Г(и — 2)(4 — и) (и-гз)Жх, (г„-и)йг„ зтзз(и) + ' =(и — 3)гт' =(и — 3)гЖ 1.
гт 15 Гв Гз ,Таким образом, уравнение В-сплайна в раскрытой полиномиальной форме име ет вид: (2 — и" 3 и Ги(2-и) (3-и)(и — 1)1 (3-и)' 2 <(и -2)' Г(и -2)(4-и) + — Ж„+~ +(4 — и)(и — 3) йгх, Р, + Фо м ' рма выражения (6.38) заставляет предположить, что любая задающая точка влияет на форму всей кривой. Олнако если записать это уравнение отдельно для каждого отрезка значений параметра и, станет видно, что на каждый сегмент няег лишь ограниченное подмножество задающих точек всей кривой.
Рассмот отрим отрезок 0 и 1. Пусть Р,(и) обозначает уравнение соответствующего ветка кривой (то есть первого ее сегмента). Для значений параметра и от 0 до 1 , лько одна функция первого порядка будет отлична от нуля и равна единице — )тг . Поэтом е — ги му формулу (6.38) на этом отрезке можно записать следующим образом: Р,( )=( — ) Р, +~ '(1- )' ' — 1Р ' — "'Р," (ом 1).' (689) Г (2кзи)аи1 .: а' Аналогичным образом можно получить Рг(и) для отрезка 1 и 2, оставив'только те слагаемые, в которые входит жза(и): (2-и)г Р < и(2-и) (3 — и)(и — 1)<Р (и — 1)' Тем же способом получим и запишем выражения для участков Рз(и) и Рз(и), со-' ответствующих отрезкам значений параметра 2 и 3 и 3 и 4. Р.
(И) = — Р, + — (-2И +10и — 11)Р, + Р4, (6.41) (3- )' 2 2 2 )г Р (и)= Р + — ( — Зи +20И-32)Р4+(и — 3) Р„. (6.42) Присваивая нужные значения задающим точкам Рв, Ри ..., Рз, мы можем нарисовать все сегменты В-сплайна по формулам (6.39) — (6А2). Один из возможных подходов продемонстрирован на рис. 6.6. Обратите внимание на важные особенности В-сплайнов, проявляющиеся на рис. 6.6. Рис.
В.В. В-сллайн, состоящий из криволинейных сегментов О Любой В-сплайн представляет собой составную кривую, состоящуто из несколь. кнх разных кривых (в нашем примере — Р,(и), Рг(и), Рз(и), Р„(и)). Эти кри вые соединяются в узловых точках параметра. В этом примере в точкад соединения вьпюлияются следующие равенства Р,'(1) = Рг (1), Рг(2) = Р„'(2) н' РДЗ) = Рз(3). Убедитесь в этом, вычислив производные выражений (6.39)- (6.42).
Этп равенства означают непрерывность первой производной в точках:.!:""=:-', кт соединения сепиентов кривой. Тем же методом можно заключить, что непрерывность второй производной в этих точках нарушается. Это следует уже из того, что степень уравнений (6.39)-(6.42) равна 2. Производные В-сплайна непрерывны вплоть до порядка А — 2, потому что степень уравнения каждого сегмента равна 73 — 1. Например, у В-сплайна четвертого порядка непрерывными в точках касания сегментов будут первая и вторая производные.