Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка целая.docx
Скачиваний:
82
Добавлен:
12.11.2019
Размер:
5.04 Mб
Скачать

§ 3. Кривые и поверхности

3.1. Математическое представление. Кривые и по­верхности образуют основу большинства вспомогатель­ных устройств компьютера и графического математиче­ского обеспечения. Возможны различные математические описания одной и той же геометрической формы; неко­торые из них обсуждались и доступны с точки зрения приложений.

Если I R — интервал, то через ϰ n обозначим мно­жество всех отображений класса C1:

c : I →R n,

причем c' ≠ 0 на I. На ϰ n определим отношение ~ сле­дующим образом. Пусть

c1 : I1→R n, c2 : I2→R4;

тогда c1 ~ c2 , если существует отображение φ : I1I2 из класса С1 такое, что c1 = c2 ◦ φ и φ' ≠ 0 на I1.

Предложение. Отношение ~ является отноше­нием эквивалентности на ϰ n. //

Доказательство оставляем в качестве упражнения. Пусть ϐ n обозначает классы эквивалентности ϰ n / ~. Определение. Кривой в R n называется элемент ϐ n . //

Если c∈ ϰ n и c : IR n, то I называют параметриче­ским пространством c, а t — параметром или координа­той c. График c (graph c) определяют как множество то­чек

{c(t) : t ∈ I}.

Если c ∈ x n и c : IR n обозначает класс эквивалентности c в ϐ n то для всех имеем

graph с1 = graph с,

так что разумнее говорить о графике кривой [c]. Обрат­ное неверно; мы можем иметь соотношение graph [c1] = graph [c2], но при этом [c1] ≠ [c2]. Отношение эквива­лентности ~ группирует вместе элементы ϰ n , которые параметризуются «аналогичным» образом.

Для вычислительных целей выберем элемент c ∈ [c] и назовем кривую также с, хотя с точки зрения терми­нологии это неправильно. Это возможно при условии, что мы понимаем разницу и проявляем осторожность, когда это необходимо. График кривой в ϐ 2 является множест­вом точек, которые мы видим отображенными на графи­ческом терминале. Тогда ϐ 3 — множество плоских кри­вых, а элементы — множество пространственных кри­вых. ϐ 3 и ϐ 3 важны для приложений, однако, где легко провести рассуждения в более общем случае, будем это делать.

В литературе по компьютерной графике употребляют термины «параметрический», «явный», «неявный» по от­ношению к различным методам определения кривых. Ес­ли (ξ1 ,…, ξn ) — система координат в R n и элемент c ∈ ϰ n определен при помощи n функций t ξi (t) ( 1 i n ), то такое задание кривой называют явным параметрическим описанием. Иногда выделяют два ти­па— «симметричный» и «несимметричный». Описание не­симметрично, если параметр является одной из коорди­нат, т. е. t = ξ1 для некоторого i, 1 i n . Следователь­но, несимметричные описания имеют вид

( ξi, ( ξ1 i), ξ2 ( ξi ),…, ξi ,…, ξn( ξi ))), ξiI ;

в случае ϐ 2 и декартовых координат эта запись имеет знакомый вид

(x, (x, у(x))),x ∈ [ х0 , xi ] и кривую определяют, задавая явно у как функцию от х. С другой стороны, мы можем описать кривую в R n, определяя подходящую функцию f : R n → R. Для фикси­рованного a R функция f определяет кривую с гра­фиком

f-1(a)={( ξ1, …, ξn ) : f ( ξ1 , …, ξn )= а};

f ( ξ1 , …, ξn ) называют уравнением кривой (строго гово­ря, следовало бы назвать графиком кривой). В принципе уравнению такого типа можно придать явную форму, хотя в общем случае это сделать достаточно сложно. Го­ворят, что кривые, определяемые такими уравнениями, описаны неявно.

Заметим, что не все отображения f : Rn R будут за­давать кривые описанным выше способом. Например, по­стоянное отображение задает все Rn. Далее функция f : Rn R может для одних значений постоянной а зада­вать кривую, а для других — нет, как мы это увидим ниже.

Плоская кривая, заданная неявно уравнением вида

,

называется квадратичной кривой (кривой второго по­рядка) .

Пусть c1 : [a , b]R n и c2 : [c , d]R n , где а<b= c < d и c1(b) = c2 (b). Тогда c1 ˅ с2 определяют следую­щим образом :

и называют объединением функций с1 и с2 . Для симмет­ричных описаний, если c b, с2 может быть параметризовано таким образом, чтобы это условие выполнялось. Это означает, что мы можем построить такое, что интервал для начинается с b. Следовательно, при условии c1 ( b ) = c2 ( b ) объединение c1 ˅ с2 имеет смысл, но может не быть, строго говоря, кривой. Проблема со­стоит в том, что c1 ˅ с2 может не принадлежать С1.

Пример 3.1. Прямолинейная кривая (прямая) может быть опреде­лена в R2 обычным обра­зом как

𝑦𝑥=𝑚𝑥+𝑐,

где m — наклон прямой, а с — точка пересечения с осью O y (рис. 10.22). В на­ших обозначениях это будет

Рис. 10.22

mиc могут быть заданы непосредственно, однако более естественно использовать концы r0 = (х0, y0) и r1 = (x1,y1) откуда

m = (y1y0)/(xix0), с = y1 — тх1 .

Проблема, возникающая в несимметричных описаниях, теперь очевидна. Эта форма не описывает вертикальную линию (когда x0 = x1 ). Если вместо этого воспользовать­ся неявной формой

( yy0 )( x1x0 ) – ( y1y0 ) ( xx0 ) = 0 , x0 x x1

то при x1 = x0 получим уравнение вертикальной линии x = x0. Неявное уравнение прямой линии в общем слу­чае имеет вид

ах + by + с = 0,

и вертикальные линии описываются этим уравнением при b = 0.

Обычное симметричное описание может быть записа­но в векторной форме:

где — единичный вектор, .

Рассмотренные выше примеры приводят к общим на­блюдениям о природе кривых, определенных несиммет­ричным способом. Перед тем как обсуждать это, дадим несколько необходимых определений.

Определение. Говорят, что плоская кривая (и, (x (и), у(и))), u ∈ [u A, u B] является:

  • однозначной, если для всех u1, u2I имеем

x (u1)=x (u2) ⇒ y (u1) = y(u2);

  • многозначной, если предыдущее условие не вы­полнено;

  • замкнутой, если . // На рис. 10.23 проиллюстрированы все три случая.

Очевидно, что замкнутая кривая является многозначной. Несимметричное описание (x, (x , у(x))), может определять только однозначную кривую. Это по­тому, что у является функцией от x и, следовательно,

x1 = х2 y(xi) = у(х2).

Вертикальная линия является многозначной кривой. Многие приложения в компьютерной графике требу­ют, чтобы замкнутые и многозначные кривые были вклю­чены в описания. Единственный путь достижения этого — объединять кривые, как это описывалось ранее. При ис­пользовании несимметричных форм это не очень удобно

Рис. 10.23

и редко применяется на практике. Симметричные описа­ния не имеют этого ограничения и, следовательно, явля­ются более удобными для таких приложений. Несиммет­ричные формы обычно исполь­зуют, когда требуется одно­значная кривая.

Пример 3.2. Окружность является примером замкнутой кривой. Рассмотрим окружность в R2 радиуса а с центром в на­чале координат (рис. 10.24).

Чтобы записать окружность в несимметричной форме, необ­ходимы две кривые: y1(x)=(a2-x2)1/2 a ⩽x⩽ a в квадрантах 1 и 2 и y2(x) в квадрантах 3 и 4. Уравне­ние окружности в неявной форме имеет вид

х2 + у2 а2 = 0

или же в векторных обозначениях, ∥r∥-a=0.

Рис. 10.24

Это уравнение описывает всю окружность; оно может быть записано в симметричной параметрической форме

t .

Возможно бесконечное число других симметричных форм, выбор которых зависит от приложений. Для выполнения рисунков более предпочтительной является параметриза­ция с относительно постоянным изменением r(t). Мате­матически это означает, что величина ∥r′(t)∥ приблизи­тельно постоянна на I. Несимметричное представление в большинстве случаев является неудобным, так как тре­буется проверка, на какой ветви кривой мы сейчас на­ходимся. //

Примерами кривых второго порядка являются эллипс, гипербола и парабола.

Если G — группа преобразований R n , тогда G преоб­разует ϐn естественным образом. Если c кривая

c = (t,r(t)), t I,

и g G, то определим кривую gc следующим образом:

gc = (t,gr(t)), t .

Н апример, когда G = SO(2) и c , то график W(θ) c является графиком с, повернутым на угол в (рис. 10.25).

Рис. 10.25

Уравнения обычно описывают кривые в «стандартном» положении, когда ось ОХ является осью симметрии. Чтобы получить уравнение геометрически эквивалентной кривой в некотором другом положении и ориентации в пространстве, надо просто применить подходящий элемент группы E(2) к уравнению.

В качестве примера выведем уравнение эллипса с графиком e, изображенным на рис. 10.26. В стандартном положении (изображенном штриховой кривой на рисунке).

Рис. 10.26

следовательно, кривая с графиком е имеет вид

Неявные уравнения для кривых в нестандартном поло­жении могут быть получены аналогично.

Перед тем как перейти к дру­гой теме, упомянем один интерес­ный факт, проверка которого осу­ществляется довольно легко, ког­да кривые заданы неявными урав­нениями. Пусть f(x , y) = 0 — урав­нение плоской кривой, которая делит плоскость R2 на три части, тогда, если (x', у') — произвольная точка пространства., то знак f (x', у') определяет область, в которой лежит (x', у'). Например, возьмем уравнение окружности

f(x, у) = х2 + у2 — а2 = 0;

тогда

f(x', у')>0⇒( x', у') лежит за пределами круга,

f(x', у')=0⇒( x', у') лежит на окружности,

f(x', у')<0⇒( x', у') лежит внутри круга.

Проверки такого типа используют в трехмерных слу­чаях в алгоритмах удаления невидимых линий с изобра­жений. Исследование поверхностей может быть проведе­но по аналогии с исследованием кривых. Методы пред­ставления имеют те же самые преимущества и недо­статки.

Поверхности двумерны и имеют пространство пара­метров вида , где I1 , I2 ⊆ R — интервалы. Парамет­рическое представление в общем случае имеет вид

Неявное уравнение поверхности записывается в виде f (x,y,z) = 0, а поверхностью второго порядка является поверхность, определяемая уравнением

,

где a, b, c, d, e, f, g, h, i, j R

Пример 3.3. Пусть — множество линейно независимых векторов. Тогда

Есть симметричное описание плоскости P, проходящей через точки D (рис.10.27).

Рис. 10.27 Рис. 10.28

тогда — единичный вектор, ортогональный P (называемый нормалью). Таким образом, r∈P тогда и только тогда, когда (r – r0) ∙ = 0, или

(xx0)n1 + y0) n2+(z z0)п3 = 0.

Это является неявным представлением Р. //

Пример 3.4. Пусть S — сфера в R3 радиуса а с центром в начале координат. Очевидно, что r∈S тогда и только тогда, когда ∥r∥ = а, или же

x2 + y2 + z2a2 = 0.

Сферические координаты дают симметричное представ­ление

//

Пример 3.5. Пусть С —цилиндр радиуса а с осью симметрии OZ. В этом случае ( x, y, z) ∈ C тогда и толь­ко тогда, когда

х2 + у2 — а2 = 0.

Используя цилиндрические координаты, получаем сим­метричную форму

.

Обычно рассматривают «конечный» цилиндр (рис. 10.28). Для него уравнение будет иметь вид

//

Относительно уравнений поверхностей, находящихся в нестандартном положении, можно сделать те же заме­чания, что и для случая кривых; надо лишь Е(2) заме­нить на Е(3).

3.2. Геометрия плоских кривых. Целью данного раз­дела является определение понятий длины, касательной и кривизны плоских кривых. На рис. 10.29 изображена плоская кривая

.

Р — произвольная точка на c, являющаяся концом век­тора r(t), а Р' — конец вектора r( tt), δt R\{0}..

Пусть δr (t) обозначает вектор '. Тогда, очевидно,

есть длина отрезка РР'.

Если разбить интервал [t A , t B ] на много маленьких интервалов равной длины

= , то можно образовать сумму

где ,

которая равна длине ломаной линии вдоль c. Интуитивно ясно, что мы получаем аппро­ксимацию кривой SAB между r ( t A ) и r ( t B ). Приближение будет тем лучше, чем больше число разбиений отрезка [ t A , t B ] . Эти интуитивные понятия приводят нас к опре­делению длины кривой SAB :

С вычислительной точки зрения эта формула трудна для использования. Поэтому мы перепишем ее в более удобном виде:

где . Но это по определению интеграл

следовательно,

Если , то формула принимает вид

Интуитивно ясно, что линия наклона (на рис. 10.29 это QQ′) к кривой c является прямой, касающейся этой кривой и имеющей тот же самый наклон, что и c, в точ­ке P. Пусть θ — это угол между отрезком РР' и каса­тельной QQ'. Тогда при δ t0 следует ожидать, что θ0. Это означает, что направление δr(t) или же δr ( t ) /δt стремится к направлению QQ' при δt0. Дру­гими словами, вектор

параллелен QQ′ . Если

тогда в принципе все кривые могут быть выражены в терминах параметра длины дуги (s, r(s)), s е [0, SAB]. Из определения длины дуги получаем

дифференцируя обе части по s, имеем

Другими словами, d r / d s — единичный вектор, параллель­ный касательной линии к r(s). Это вызывает следующее определение.

Определение. Пусть (s, r(s)), s ∈ [0, SAB],— кри­вая с длиной дуги в качестве параметра. Определим единичный вектор касательной Т (s) к кривой в точке s как

,

а нормальный вектор (s) к кривой как

.//

Базис ( ) образует правостороннюю систему коор­динат в R2. Если кривая не параметризуется в терминах длины дуги, то выражение для (см. упражнение 10.2) будет иметь вид

Эти формулы неявно предполагают условия на s. В действительности знак не образует класса эквива­лентности, инвариантного на ϐ2, а является функцией выбранного параметрического представления. Даже если параметризация осуществлена с помощью параметра — длины дуги, она зависит от того, с какого конца мы начинаем измерять s. Касательное пространство к точке кривой является классом, инвариантным на ϐ2, где

касательное пространство к [с] в точке P имеет вид {a : a ∈ R, где — касательный вектор в P для неко­торого с∈[с]}.

Из упражнений к § 4 гл. 5 следует, что ортого­нален к ; следовательно, существует функция ϰ:

[o, SAB] →R такая, что называют кривизной кривой r(s),

а 1/ϰ(s) – радиусом кривизны r(s).

Упражнение 10.2.

  1. Получить в R2 явное уравнение прямой, проходя­щей через точки (—1, 3) и (2, —1). Определить еди­ничный вектор, параллельный этой прямой, и написать уравнение в параметрической векторной форме. ___

  2. Определить касательный и нормальный векторы и и кривизну ϰ следующих плоских кривых:

а) окружности — , 0⩽θ<2π;

б) эллипса — , 0⩽φ⩽2π;

в) параболы — , —∞<t<∞) где

a > 0 и b > 0 действительные.

  1. Плоская кривая определена формулой

где a > 0 и b > 0 действительные.

а) Показать, что касательный вектор к кривой задается формулой

б) Начертить кривую в интервале 0 ⩽u2π.

в) Найти нормаль к кривой.

  1. Начертить кривую , —∞<u<∞, и найти выражение для касательного век­тора .

  2. Пусть (x, (x, y(x))), x , описывает пло­скую кривую. Показать, что касательный вектор (x) может быть записан как

и, следовательно, кривизна ϰ(х) в точке x имеет вид

  1. Получить формулы, аналогичные полученным в п. 5, для симметричного представления

( u , ( x ( u ), y ( u ))),u

  1. Найти симметричное параметрическое уравнение плоскости P, проходящей через точки (0, 1, 0), (3, —2, 0) и (1, 3, 4) в R3. Показать, что нормальный вектор будет параллелен (—4, —4, 3), и использовать этот факт для вывода неявного уравнения для P.

  2. Поверхностью вращения называется поверхность, являющаяся результатом вращения плоской кривой во­круг некоторой фиксированной оси в R3.

а) Показать, что если плоская кривая

, u

делает поворот па угол 2π вокруг оси OZ, то соответст­вующая поверхность вращения описывается уравнением

где ⩽u⩽ , 0⩽φ<2π.

б) Использовать результаты задачи 8, а) для получе­ния симметричных параметрических представлений сле­дующих поверхностей:

— цилиндра; — конуса; — тора.

  1. Цилиндр С1 длины 2l определяется уравнением x2 + z2 = b2, — lуl, и пересекается с цилиндром C2 длины h, который определяется уравнением у2 + (z — а) 2 = a3 , 0⩽xh, где 0 < а < b, h > b.

Используя параметрические координаты

{(x, 0): 0⩽xh , 0⩽θ<2π) на С2,

показать, что кривая, являющаяся пересечением С1 и С2 , может быть записана как (θ, r(θ)), 0⩽θ<2π, где

Показать также, что единичный касательный вектор к кривой в точке θ = 0 задается формулой

12