Геометрические основы компьютерной графики
Система координат (СК)
Системы координат
Размерность пространства
Геометрия на плоскости
Декартовы и полярные координаты
Точки и линии на плоскости
Координатная и векторная формы
Расстояние между точками
Способы описания линии
Уравнение прямой
Уравнение прямой
Параметрическая функция прямой
Связь нормали и направляющего вектора
Отрезки и лучи
Линеаризация кривой
Уравнение касательной
Неявное уравнение касательной
Параметрическая функция касательной
Способы описания кривых
Способы описания кривых
Параметрические кривые
Параметрические кривые
Параметрические кривые
Параметрические кривые
АФФИННЫЕ ПРЕОБРАЗОВАНИЯ
СК в компьютерной графике
МСК и OСК в 2D-пространстве
Сцена
Координаты точки в МСК и ОСК
Обратное преобразование
Интерпретация преобразований
Интерпретация преобразований
Аффинное преобразование
Условие обратимости
Базовые преобразования
Преобразование поворота
Преобразование растяжения
Преобразование отражения
Преобразование переноса
Общее преобразование
Однородные координаты
Однородные координаты
Однородные координаты
Матрицы преобразований
Конец лекции
311.00K

Геометрические основы компьютерной графики

1. Геометрические основы компьютерной графики

Лекция 3

2. Система координат (СК)

Для перехода от зрительных
геометрических образов к
математическому описанию формы
объектов и их взаимного расположения
необходимо выполнить арифметизацию
пространства
Это достигается путем введением системы
координат
10/12/16
Геометрические основы
2

3. Системы координат

Введение системы координат сводится к
установлению способа сопоставления
каждой точке пространства набора
вещественных чисел – координат этой
точки
Точка пространства Набор
вещественных чисел (координат точки)
10/12/16
Геометрические основы
3

4. Размерность пространства

Число координат в таком наборе
определяется размерность пространства
Обычно рассматривают двумерные (2D)
пространства на различных поверхностях
и трехмерное (3D) пространство
10/12/16
Геометрические основы
4

5. Геометрия на плоскости

10/12/16
В 2D-пространствах графическими
элементами являются точки и линии, в
3D-пространствах к ним добавляются
поверхности
Простейшей формой поверхности
является плоскость. Для описания
геометрических объектов на плоскости
используют декартову и полярную
системы координат
Геометрические основы
5

6. Декартовы и полярные координаты

Координаты (x,y) и (r, ) в этих системах
связаны соотношениями:
10/12/16
x r cos( ),
y r sin( )
2
2
r x y ,
y
tg ( ) .
x
Геометрические основы
6

7. Точки и линии на плоскости

Введем обозначение для точки на
плоскости:
p = (x, y) (r, )
Взаимосвязь между координатами точек
линии может быть задана в виде
10/12/16
неявного уравнения f(p)=0
параметрической функции p(t)
Геометрические основы
7

8. Координатная и векторная формы

Эти соотношения могут быть записаны в
координатной или в векторной форме
Векторная форма записи более компактна,
а координатная более удобна для
проведения вычислений
10/12/16
Геометрические основы
8

9. Расстояние между точками

Расстояние d между двумя точками p1 и p2в
декартовых координат выражается
формулой:
2
2
d p2 p1 ( x2 x1 ) ( y2 y1 )
В полярных координатах это расстояние
определяется формулой:
10/12/16
Геометрические основы
9

10. Способы описания линии

Уравнение линии в неявной форме имеет
вид:
f ( x, y ) 0
Параметрическая функция для линии:
p (t ) x(t ), y (t )
10/12/16
Геометрические основы
10

11. Уравнение прямой

Для прямой линии неявное уравнение
имеет вид:
A * x B * y D 0,
где коэффициенты A и B одновременно
не равны 0
Прямая может быть задана координатами одной из своих точек p0 и вектором
нормали N N , N
10/12/16
x
y
Геометрические основы
11

12. Уравнение прямой

В этом случае неявное уравнение прямой
записывается в нормальной форме:
N x * ( x x0 ) N y * ( y y0 ) 0.
Для задания прямой вместо вектора
нормали можно использовать вектор,
направленный вдоль прямой - направляющий вектор
V [Vx , V y ]
10/12/16
Геометрические основы
12

13. Параметрическая функция прямой

В этом случае для описания прямой
удобно использовать параметрическую
функцию, которая имеет вид:
x(t ) x0 V x * t ,
y (t ) y 0 V y * t.
Направляющий вектор начинается в точке
p0 и направлен в сторону увеличения
значений параметра t
10/12/16
Геометрические основы
13

14. Связь нормали и направляющего вектора

Из условия ортогональности векторов N
и V следует, что
N x * V x N y * V y 0.
Компоненты нормали и направляющего
вектора можно выразить через
коэффициенты неявного уравнения
прямой:
N [ A, B]
10/12/16
V [ B, A]
Геометрические основы
14

15. Отрезки и лучи

Параметрическая функция удобна для
построения частей прямой – отрезков и
лучей
10/12/16
(- < t < ), протяженность прямой не
ограничена;
( t≥ 0), луч, выходящий из точки p0 в
направлении вектора V;
(t1 t t2),, отрезок прямой между точками
p0+V*t1 и p0+V*t2.
Геометрические основы
15

16. Линеаризация кривой

Для произвольной линии на плоскости в
любой регулярной (гладкой и
некратной) точке
p0 [ x0 , y0 ] p0 (t )
возможна линеаризация, т.е. построение
касательной прямой
10/12/16
Геометрические основы
16

17. Уравнение касательной

Уравнение касательной удобно записать в
нормальной форме c компонентами
вектора нормали вычисленными как
частные производные от функции в левой
части неявного уравнения:
df ( x, y )
Nx
dx
10/12/16
df ( x, y )
Ny
x0 , y 0 ,
dy
Геометрические основы
x0 , y 0
17

18. Неявное уравнение касательной

Такое уравнение имеет вид:
df ( x, y )
dx
df ( x, y )
x0 , y0 *( x x0 )
dy
x0 , y 0
* ( y y0 ) 0
Вектор нормали ортогонален касательной
и направлен в ту сторону, где f(x,y)>0
10/12/16
Геометрические основы
18

19. Параметрическая функция касательной

Для линии, заданной параметрически,
можно построить параметрическую
функцию касательной с компонентами
направляющего вектора:
dx(t )
dy (t )
Vx
t0 , V y
t0 .
dt
dt
10/12/16
Геометрические основы
19

20. Способы описания кривых

10/12/16
Выбор между описанием линии с
помощью уравнения или с помощью
параметрических функций определяется
характером решаемой задачи
При построении линий удобно
использовать их параметрическое
представление, либо, явную форму
уравнения y = f(x)
Геометрические основы
20

21. Способы описания кривых

10/12/16
Анализ свойств кривых и вычисление
координат точек их пересечения удобно
проводить с использованием явных и
неявных уравнений
В целом же параметрическое описание
является более универсальным и для
большого класса кривых оно является
единственно возможным
Геометрические основы
21

22. Параметрические кривые

Такие кривые называются параметрическими
Примеры параметрических кривых:
фигуры Лиссажу
x = cos(wx*t+wx0), y = sin(wy*t+wy0);
спираль Архимеда
x = (r0+r1*t) * cos(wx*t+wx0),
y = (r0+r1*t) * sin(wy*t+wy0);
10/12/16
Геометрические основы
22

23. Параметрические кривые

спираль Бернулли
x = r0*exp(r1*t) * cos(wx*t+wx0),
y = r0*exp(r1*t) * sin(wy*t+wy0);
параболическая спираль
x = (r0+r1*sqrt(t)) * cos(wx*t+wx0),
y = (r0+r1*sqrt(t)) * sin(wy*t+wy0);
10/12/16
Геометрические основы
23

24. Параметрические кривые

циклоида
x = r0*exp(r1*t) * cos(wx*t+wx0),
y = r0*exp(r1*t) * sin(wy*t+wy0);
улитка Паскаля
x=(r0*cos(t)+r1) * cos(wx*t+wx0),
y=(r0*cos(t)+r1) * sin(wy*t+wy0);
10/12/16
Геометрические основы
24

25. Параметрические кривые

трисектрисса
x = (r0*cos(t)-r1/cos(t)) * cos(wx*t+wx0),
y = (r0*cos(t)-r1/cos(t)) * sin(wy*t+wy0);
10/12/16
Геометрические основы
25

26. АФФИННЫЕ ПРЕОБРАЗОВАНИЯ

10/12/16
Геометрические основы
26

27. СК в компьютерной графике

В компьютерной графике используются
три системы координат:
неподвижная мировая система координат
(МСК);
подвижная объектная система координат
(ОСК), связанная с объектом;
экранная система координат (ЭСК).
10/12/16
Геометрические основы
27

28. МСК и OСК в 2D-пространстве

Y
Y’
X’
X
10/12/16
Геометрические основы
28

29. Сцена

Сценой называется система объектов,
изображение которой должно быть
воспроизведено средствами компьютерной
графики
Сцена является ограниченной областью
пространства
10/12/16
Геометрические основы
29

30. Координаты точки в МСК и ОСК

Пусть некоторой точке P сцены в МСК
соответствуют координаты (x,y), а в ОСК –
координаты (x ,y )
Если угол поворота ОСК относительно
МСК равен φ, а начало ОСК расположено
в точке (x0,y0), то
x ( x x0 ) * cos( ) ( y y0 ) * sin( ),
y ( x x0 ) * sin( ) ( y y0 ) * cos( )
10/12/16
Геометрические основы
30

31. Обратное преобразование

Обратное преобразование имеет вид:
x x * cos( ) y * sin( ) x0 ,
y x * sin( ) y * cos( ) y0
В общем случае, переход от МСК к ОСК
включает в себя два действия – поворот на
угол и сдвиг в направлении вектора
(x0,y0).
10/12/16
Геометрические основы
31

32. Интерпретация преобразований

Эти преобразования можно
интерпретировать двояко:
10/12/16
как изменение координат некоторой
фиксированной точки сцены при изменении
системы координат;
как изменение точки сцены, находящейся в
данной точке пространства, при
использовании фиксированной системы
координат
Геометрические основы
32

33. Интерпретация преобразований

В первом случае говорят об изменении
координат данной точки сцены
Во втором случае – о перемещении
объекта, приводящем к появлению в
данной точке пространства другой его
точки
10/12/16
Геометрические основы
33

34. Аффинное преобразование

В любом случае это отображение является
линейным и может быть обобщено
следующим образом:
x * x * y ,
y *x * y
10/12/16
Геометрические основы
34

35. Условие обратимости

Для обеспечения обратимости аффинного
преобразования его коэффициенты должны
быть связаны соотношением:
10/12/16
0,
Геометрические основы
35

36. Базовые преобразования

Теорема. Любое аффинное
преобразование можно представить как
суперпозицию поворота, растяжения,
отражения и переноса
Перечисленные преобразования являются
базовыми и могут быть представлены
соответствующими матрицами
10/12/16
Геометрические основы
36

37. Преобразование поворота

Имеет вид
x x * cos( ) y * sin( ),
y x * sin( ) y * cos( )
Задается матрицей
cos( ) sin( )
R
sin( ) cos( )
10/12/16
Геометрические основы
37

38. Преобразование растяжения

Имеет вид
x * x,
y *y
Задается матрицей
0
S
0
10/12/16
Геометрические основы
38

39. Преобразование отражения

Имеет вид (относительно оси абсцисс)
x x,
y y
Задается матрицей
1 0
F
0 1
10/12/16
Геометрические основы
39

40. Преобразование переноса

Имеет вид
x x ,
y y
Задается вектором
T
10/12/16
Геометрические основы
40

41. Общее преобразование

Произвольное аффинное преобразование
можно представить в виде:
p p*M T,
где p = [x, y] – векторное представление
точки
10/12/16
Геометрические основы
41

42. Однородные координаты

Данное преобразование является
неоднородным, т.к. преобразование
переноса выполняется аддитивно
Для обеспечения его однородности вводят
однородные координаты точки
10/12/16
Геометрические основы
42

43. Однородные координаты

Однородными координатами точки
p = [x, y] называется такая тройка чисел x1,
x2, x3, что
и x3 ≠ 0
10/12/16
x1
x2
x ,y
x3
x3
Геометрические основы
43

44. Однородные координаты

Обычно полагают x3 = 1, и тогда в
однородных координатах вектор точки
имеет вид:
p = [x, y, 1]
10/12/16
Геометрические основы
44

45. Матрицы преобразований

cos( ) sin( ) 0
R sin( ) cos( ) 0
0
0
1
1 0 0
F 0 1 0
0
10/12/16
0
1
Геометрические основы
0 0
S 0 0
0 0 1
1
0
0
T 0
1
0
1
45

46. Конец лекции

10/12/16
Геометрические основы
46
English     Русский Правила