Основы САПР (CAD,CAM,CAE) - (Кунву Ли)(2004) (951262), страница 40
Текст из файла (страница 40)
(6.73) Параметры и и в в точке пересечения должны, таким образом, удовлетворять уравнению Ря + и (Р, — Р„) = Щв). (6.74) Умножим левую и правую части уравнения (6.74) скалярно на Р, х Р,: ' (РяхР,) О(п) =О. (6.75) Нелинейное уравнение (6.75) может быть решено относительно о численным методом. Однако здесь нас подстерегают те же проблемы, что и раньше. '.
Вопросы и задачи Чтобы нарисовать эллипс, изображенный на приведенном ниже рисунке, вам придется получить выражения для координат х и у граничных точек парамет- рического уравнения. 1) Получить уравнение эллипса, расположенного в начале координат и направленного таким образом, что его большая ось совпадает с осью х, 2) Применить необходимые преобразования к уравнению, полученному в предыдущем пункте, для вывода уравнения эллипса, показанного иа ри. сунке. 2. Пусть эрмитова кривая, лежащая в плоскости зу, определяется следующими .
геометрическими коэффициентами: Р(0) Р(1) Р'(О) Р'(1) 2 3 4 0 3 2 3 — 4 :'ьч~т!;:: . 1) Найти кривую Безье третьего порядка, максимально точно соответству~ошую этой эрмитовой кривой. Иначе говоря, необходимо определить четыре задающие точки кривой Безье. 2) Раскрыть уравнения обеих кривых в полиномиальпой форме и сравнит.ь их. ,ф~: 3, Кривая Безье с задающими точками Ае, А~ и Аз преобразуется в кривую Безье с задающими точками Вя, В, и Вт (см.
рисунок). Преобразование должно переместить точку Ая в Вя и Ат в Вь Таким образом, это преобразование ':,'"„„~!;,!:,'; '" должно включать в себя масштабирование. 2+ Гз) с, ! Уравнение получается таким, потому что скалярное произведение Ря или Р~ иа равно нулю. лил. 1) Выбрать нужные матрицы преобразования и определить порядок их применения. 2) Определить координаты задающей точки Вь 3) Записать параметрическое уравнение кривой Ст. 4. Найти кривую Безье третьего порядка, аппроксимирующую четверть окружности с центром в точке (О, О).
Концы аппроксимируемой дугш (1, О) и (О, 1). Найти координаты середины кривой Безье и сравнить нх с координатами середины дуги. 5. Изучите кривые Безье, изображенные на рисунке. Кривую 2 необходимо присоединить к кривой 1, переместив точку В к точке С. Нужно также обеспечить непрерывность"'первой производной в точке соединения. Какими будут задающие точки объединенной кривой? Г(5, 1, О) В(1, 1, О) А(0, О, О) С(2, О, О) Р(3, О, О) Е(4, О, О) ;.;.~--."~~К .Непериодический В-сплайн четвертого порядка определен Ро =(О 0 О)' Р =(6 8 О)' Р =(12,8„0дРз =(18,0,0). ~~~~;:,;-:,';::, Что получится, если повернуть эту кривую вокруг оси х на 1 В-сплайн, то каким будет его порядок и какие у него будут зад .".-,. 7.' Непериодический В-сплайн третьего порядка определен зад Рв Рь Ръ Рз.
1) Какими будут узловые значения параметра? 2) Из скольки различных кривых состоит В-сплайн? 3) Раскройте уравнение В-сплайна н получите уравнения дущего пункта. ' .; -1), Представить окружность единичного радиуса с центром в - "!,. кривой ХПКВБ с семью задающими точками (см. рисунок). чить порядок кривой я, узловые значения параметра и одно ты задающих точек(х.гв.у.ге, г.гв, гв).
четырьмя задаю- 80'? Если это будет ающне точки? ающими точками кривых из преды начале координат Вам нужно полу- родные координа- 9. Интерполируйте точки Рз(0, О), Р~(1 2), Рз(3, 2) двумя эрмитовыми крпвыьщ Р~(и) и Рт(и). Считайте, что в точках Рь и Рт концы кривой не закреплены ';,- 10. С помощью любой доступной вам системы автоматизированного проектирования продемонстрируйте: О глобальность изменений для кубических сплайнов и кривых Безье; О локальность изменений для В-сплайнов; О выпуклость оболочки кривых Безье; О влияние дублирования задающих точек на кривые Безье и В-сплайны ':.,'11.
Напишите программу с перечисленными ниже меню и функциями. О Меню ввода задающих точек: позволяет пользователям вводить координаты задающих точек непериодического В-сплайна третьего порядка на плоскости ху. Максимальное количество задающих точек — 10. Задание , ,1 ",:: точек производится маркером, который устанавливается мышью в нужное место, после чего следует нажатие на кнопку мыши (то есть мышь используется в режиме опроса).
О Окончание ввода: выбирается пользователем после указания всех задающих точек. При выборе этого пункта программа должна вывести на экран В-сплайн н задающий многоугольник. О Меню изменения задающих точек: позволяет пользователю изменять положение задающих точек (по одной). Пользователь должен иметь возможность выбрать любую залаюшую точку и перетащить ее в новое место. В процессе перетаскивания система должна динамически пе(юстраивать Л':, ' новый В-сплайн вместе с задающим многоугольником. О Меню удаления: это меню позволяет пользователю удалять В-сплайн щелчком на любом ребре соответствующего задающего многоугольника. О Выход: этот пункт меню завершает работу с п(юграммой. ре,е -„ (7.1) х'+у'+х' -Л' =О (7.2) или ,-*~~* -*г' — „' (7.3) , Представление поверхностей й'работа с ними ~етемам геометрического моделирования приходится хранить уравнения кривых .11рфгаквивалентные характеристические параметры) для всех ребер и уравнения ф()6ф(ивстей (или эквивалентные параметры) для всех граней.
Полезно знать, ((~~вйй-бывают уравнения поверхностей и какими параметрами они характери- ~~1()тйл,;Мы говорили, что для реализации булевских операций необходимо расе)й)э.йд)йть точки пересечения кривых. В системах поверхностного моделирова- ,.41)нь,н'.ч1йй же целью приходится определять кривые, по которым пересекаются шй)вр(1фжти. Например, если поверхность в процессе моделирования птсекается .~~фф~ф.;.;:~цэерхностью, это требует вычисйения кривой, по которой они пересека- . -,~.'',фей' задача требует вычисления координат точек на поверхностях, а также "-'йфд1(З11цд1эых в этих точках. В настоящей главе мы коротко рассмотрим различ'-"ф~~втицй1 уравнений поверхНостей и методы работы с ними: методы вычисления 1п$:"~йинат, дифференцирования и обработки пересечений. Все эти вопросы рассматриааются более подробно в книгах по вычислительной геометрии 19, 49, 48, 1', 1хй,''72, 1121 'У4.
Типы уравнений поверхностей -У(х(анемия поверхностей, как и уравнения кривых, делятся на два основных типа "К'первому типу относятся параметрические уравнения, связывающие значения ,,;";:$6ордннат к, у и з со значениями параметра. Ко второму относятся нвпарамвт- : '1)невские уравнения, связывающие координаты х, у и г непосредственно друг с )(Ругом какой-либо функцией. Поясним эти определения на простом приме1ю.
".:„Рассмотрим сферу радиуса Л с центром в начале координат. Параметрическое " ".,уравнение этой сферы будет иметь вид: Р(ип) = й газ и созп1+ Ля|пи сохо 1+ йз1пи 1с; (О ьи <2я,-к/2 <и ~ к/2), .-'Отде параметр и может рассматриваться как долгота, а о — как широта. .':,''Ту же сферу можно описать и без парамет(юв и и т Уравнение (7.2) называется неявньсч непараметрическим, а уравнение (7.3)-- явным нвпарамвтри чвским У каждого типа уравнений есть свои преимущества и недостатки, по мы будем рассматривать только параметрические уравнения. Как отмечалось в главе 6, параметрическое уравнение позволяет эффективно вычислять точки на поверхности или кривой, отстоящие друг от друга на неболыние расстояния, что облегчает интерактивное отображение объекта н работу с ним.
Это одна из главных причин, по которым параметрические уравнения используются для представления поверхностей в большинстве систем автоматизированного ( проектирования'. ;-' 7.2. Билинейная поверхность -';билинейная поверхность ((п7тваг хит~асс) строится по четырем заданным точкам .'-",::и описывается линейными уравнениями с параметрами и и ц Эти точки ока',!' зываются в углах построенной поверхности. Мы обозначим их буквами Рее, Р,я, ;,::::,'Ррь Ргз (рис. 7.1).
Вывести уравнение билинейной поверхности — это значит ';::, файти выражение для координат произвольной точки по значениям параметров :; "и и о. Пгредположим, что эта точка делит отрезок (РаюР„, ) в отношении и:(1 — и) ~», .(рис. 7.1). Точки Р и Р, делят отрезки РьрРю и Р,рРгз соответственно в отно;; шепни ж(1 — и). Определенная таким образом точка Р(и.п) будет перемешаться '.по всей поверхности при изменении параметров и и о от О до 1. С учетом сделан„'-",.':ных предположений координаты точек Р „и Р,„, запишутся следующим образом: Ро, = (1 о)Роо + оРоз (7А) Р„, =(1-о)Р,е +пРы (7.5) Рис.
т.т. Билинейная поверхность и ее опорные точки 1 Кривые, по которым пересекаются поверхности, е яекоторых случаях бывает удобно рас':-'.:, считывать, представляя одну иэ этях поверхностей параметрическим уравнением, а другую — иеяараметряческям. Поэтому е векоторых системах могут использоваться я яевараметрическпе уравнения поеерхяостсй, хотя я ве ках основной тип уранпспяй ляя $: хранения сведений о кривых. В этом случае возникает потребность в пропслуре преобра-, зования иэ параметрической формы в неяарамегрячсскую я обратна.