Матричные преобразования трехмерного пространства

Содержание

Слайд 2

Проекции

преобразуют точки из координатной системы размерности n в точки координатной системы размерности

Проекции преобразуют точки из координатной системы размерности n в точки координатной системы размерности меньше n.
меньше n.

Слайд 3

Проекции

строятся с помощью прямых линий – проекторов (лучи проекции), пересекающих поверхность проекции;
оперируют

Проекции строятся с помощью прямых линий – проекторов (лучи проекции), пересекающих поверхность
с плоскими проекциями, т.е. поверхность проекции – плоскость (2D-проекции);
используют геометрические проекции, т.е. проекторы - прямые лучи.
Исключение – Image-based rendering.
Под проекциями будем подразумевать геометрические плоские проекции.

Слайд 4

Классификация проекций

ПРОЕКЦИИ

одноточечные
двухточечные
трёхточечные

Параллельные проекции

Ортогональные

Аксонометрические

изометрия
диметрия
триметрия

Косоугольные
изометрия
диметрия

Planar Geometric Projections

Parallel

Perspective

Центральные проекции

3 point

2 point

1 point

Oblique

Cabinet

Cavalier

Axonometric

Top

Side

Front

Isometric

вид сверху
вид слева
фронтальный

Orthographic

Классификация проекций ПРОЕКЦИИ одноточечные двухточечные трёхточечные Параллельные проекции Ортогональные Аксонометрические изометрия диметрия

Слайд 5

Центральные проекции

Центральные проекции

Слайд 6

Центральные проекции

Определяются плоскостью проекции и центром проекции.
Визуальный эффект – перспективное искажение (перспектива).
Размер

Центральные проекции Определяются плоскостью проекции и центром проекции. Визуальный эффект – перспективное
проекций объектов сцены обратно пропорционален расстоянию между объектом и центром проекции.
Изображение реалистично.
Центральная проекция не используется для измерений:
параллельные линии не параллельны в проекции;
углы сохраняются на плоскостях, параллельных плоскости проекции;
расстояния не сохраняются.

Слайд 7

Перспектива (Perspective)

Первое изображение
с перспективой –
 "Троица" Мазаччо, 1427г.

Перспектива (Perspective) Первое изображение с перспективой – "Троица" Мазаччо, 1427г.

Слайд 8

Центральные проекции

Центральные проекции любой совокупности параллельных прямых, не параллельные проекционной плоскости,

Центральные проекции Центральные проекции любой совокупности параллельных прямых, не параллельные проекционной плоскости,
будут сходиться в центре проекции (точке схода, vanishing point). 
Центральные проекции классифицируют в зависимости от количества точек схода:
1-точечная проекции,
2-точечная проекции,
3-точечная проекции.
Количество осей,
пересекающих проекцию,
соответствует количеству
центров проекции.
Линии параллельны главной
оси.

Центр
проекции

Слайд 9

1-точечная проекция

Плоскость проекции пересекается только с одной осью.

Точка схода в однородных координатах

1-точечная проекция Плоскость проекции пересекается только с одной осью. Точка схода в
имеет w = 0 (x,y,0).

Площадь святого Марка (Венеция), Canaletto 1735

Слайд 10

2-х точечная проекция

Edward Hopper The Mansard Roof 1923 г.

2-х точечная проекция Edward Hopper The Mansard Roof 1923 г.

Слайд 11

3-х точечная проекция

Georgia O'Keefe «City Night»,1926 г.

3-х точечная проекция Georgia O'Keefe «City Night»,1926 г.

Слайд 12

Центральные проекции

3-х точечная

2-х точечная

1- точечная

Центральные проекции 3-х точечная 2-х точечная 1- точечная

Слайд 13

Параллельные проекции

Параллельные проекции

Слайд 14

Ортогональные проекции

Строится параллельным проецированием на плоскость отображения.
Проецирующие лучи перпендикулярны к плоскости проекций.
Обычно

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

Направление обзора

Пример

Слайд 15

Множественные проекции (Multiple Projections)

Ортогональные проекции часто используются для построения множественных проекций объекта:
вид

Множественные проекции (Multiple Projections) Ортогональные проекции часто используются для построения множественных проекций
сверху или план (plan (top) view),
фронтальный вид (front view),
вид слева (left or right side).

Front

Right

Top

Ортогональные проекции

Слайд 16

Проекционные плоскости не перпендикулярны осям координат.
Одновременно видны несколько поверхностей объекта.
Используется для измерений:
углы

Проекционные плоскости не перпендикулярны осям координат. Одновременно видны несколько поверхностей объекта. Используется
изменяются;
сохраняется параллельность прямых.
Расстояния можно измерить вдоль каждой из координатных осей (с учётом масштабирующих коэффициентов).

Направление обзора

Аксонометрические проекции

Ортогональные проекции

Слайд 17

Основная теорема аксонометрии:
теорема Польке: «три отрезка произвольной длины, лежащие в 1-й плоскости

Основная теорема аксонометрии: теорема Польке: «три отрезка произвольной длины, лежащие в 1-й
и выходящие из одной точки под произвольными
углами друг к
другу, представляют
собой параллельную
проекцию трех равных
отрезков, отложенных
на координатных осях
от начала координат».

Ортогональные проекции

Аксонометрические проекции

Слайд 18

Согласно этой теореме:
любые три прямые в плоскости, исходящие из одной точки и

Согласно этой теореме: любые три прямые в плоскости, исходящие из одной точки
не совпадающие между собой, можно принять за аксонометрические оси;
любые отрезки произвольной длины на этих прямых, отложенные от точки их пересечения, можно принять за аксонометрические масштабы.
Эта система аксонометрических осей и масштабов является параллельной
проекцией некоторой
прямоугольной системы
координатных осей и натуральных
масштабов.

Ортогональные проекции

Аксонометрические проекции

Слайд 19

Отношение единичных отрезков на аксонометрических осях к единичным отрезкам на координатных осях

Отношение единичных отрезков на аксонометрических осях к единичным отрезкам на координатных осях
называется коэффициентом искажения (коэффициентом масштабирования) по аксонометрическим осям.
Коэффициенты искажения:
Кх = Lx0 /Lx = p,
Кy = Ly0 /Ly = q,
Кz = Lz0 /Lz = r.
Существует много вариантов
аксонометрических проекций, отличающихся направлениями аксонометрических осей и величин искажения по данным осям.

Ортогональные проекции

Аксонометрические проекции

Слайд 20

Если коэф. искажения по всем трём осям не равны
p≠q≠r, то проекция называется

Если коэф. искажения по всем трём осям не равны p≠q≠r, то проекция
триметрической.
Если коэф. искажения по двум осям равны
p=r, q=1/2p, то проекция называется диметрической.
Если коэф. искажения по всем 3 осям равны
p=q=r , то проекция является изометрической.
В практике построения аксонометрических изображений применяют определенные комбинации направлений аксонометрических осей и аксонометрических масштабов: прямоугольная изометрия, прямоугольная диметрия.

Проекция является изометрической, если плоскость проекции пересекает оси на одинаковом расстоянии от центра координат.

Ортогональные проекции

Аксонометрические проекции

Слайд 21

p≠q ≠ r ,
триметрическая проекция
p=r, q=1/2p,
диметрическая проекция
p=q=r , изометрическая проекция

p≠q ≠ r , триметрическая проекция p=r, q=1/2p, диметрическая проекция p=q=r ,

Ортогональные проекции

Аксонометрические проекции

Слайд 22

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

Наиболее распространенный случай аксонометрических проекций.
Нормаль плоскости проекции образует равные углы

Изометрическая прямоугольная проекция Наиболее распространенный случай аксонометрических проекций. Нормаль плоскости проекции образует
с каждой из координатных осей – описывается вектором (dx,dy,dz), где |dx| = |dy|=|dz|
Коэффициенты масштабирования по осям одинаковы: p=q=r.
Измерения можно проводить по всем осям с одинаковым коэффициентом (изометрия).
Существует 8 направлений, удовлетворяющих данным условиям.

Ортогональные проекции

Аксонометрические проекции

Слайд 23

Коэффициенты искажения:

По теореме синусов:
sin2 α +sin2 β +sin2 γ =1
sin2

Коэффициенты искажения: По теореме синусов: sin2 α +sin2 β +sin2 γ =1
α =1-cos2 α
1-cos2α+1-cos2β+1-cos2 γ =1,
откуда
cos2 α +cos2 β +cos2 γ =2

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

p2 + q2 + r2 =2

Ортогональные проекции

Аксонометрические проекции

Слайд 24

p2+q2+r2=2 – для прямоугольной аксонометрии
сумма квадратов коэффициентов искажения = 2.
Установим численные

p2+q2+r2=2 – для прямоугольной аксонометрии сумма квадратов коэффициентов искажения = 2. Установим
значения коэффициентов искажения для прямоугольной изометрии: p=q=r; 3p2=2; p=q=r=0.82

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

Для простоты ГОСТ 2317-69
предлагает использовать
коэффициенты искажения: p=r=q=1.
Получается проекция, увеличенная в 1.22 раза.

Ортогональные проекции

Аксонометрические проекции

Слайд 25

Треугольник следов – равносторонний.
Угол между высотами в равностороннем треугольнике = 120°.
Ось

Треугольник следов – равносторонний. Угол между высотами в равностороннем треугольнике = 120°.
z располагается вертикально.

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

Ортогональные проекции

Аксонометрические проекции

Слайд 26

Треугольник следов – равнобедренный.
Приближённо аксонометрические
оси диметрической
проекции можно
построить, если принять

Треугольник следов – равнобедренный. Приближённо аксонометрические оси диметрической проекции можно построить, если
tg 7°10'=1/8, а tg 41°25'=7/8.

Для изометрии p2 + q2 + r2 =2.
Значения коэффициентов искажения для диметрии: p=r=2q; 2p2+p2/4=2; p=r=0.94; q=0.47

Диметрическая прямоугольная проекция

Оси координат прямоугольной диметрической проекции.

Ортогональные проекции

Аксонометрические проекции

Слайд 27


На практике используют приведённые коэффициенты искажения  
p=r=1; q=0,5.
Тогда
получается
проекция,

На практике используют приведённые коэффициенты искажения p=r=1; q=0,5. Тогда получается проекция, увеличенная

увеличенная в 1,06 раза.

Диметрическая прямоугольная проекция

Ортогональные проекции

Аксонометрические проекции

Слайд 28

Косоугольные проекции

Нормаль плоскости
параллельна оси X

Лучи составляют с плоскостью проекции угол

Косоугольные проекции Нормаль плоскости параллельна оси X Лучи составляют с плоскостью проекции угол до 90°.
до 90°.

Слайд 29

Косоугольные проекции

Нормаль плоскости проекции не совпадает с направлением проецирующих лучей.
Плоскость проекции перпендикулярна

Косоугольные проекции Нормаль плоскости проекции не совпадает с направлением проецирующих лучей. Плоскость
одной из осей координат.
Результат проецирования фронтальной плоскости объекта позволяет проводить измерения углов и расстояний без искажений.
По проекциям других плоскостей можно измерять расстояния (с учётом коэффициента искажения, если он есть), но не углов!

Слайд 30

Косоугольная фронтальная диметрия (Cabinet)

p = r = 1.0; q = 0.5;
β

Косоугольная фронтальная диметрия (Cabinet) p = r = 1.0; q = 0.5;
= γ =135 ; α =90

Слайд 31

Косоугольная горизонтальная изометрия (Cavalier)


p = r = q = 1.0;
=

Косоугольная горизонтальная изометрия (Cavalier) p = r = q = 1.0; =
γ =120 ; α =90

Слайд 32

Проекции в однородных координатах

Проекции в однородных координатах

Слайд 33

Аксонометрические проекции могут реализовываться с помощью 2-х поворотов объекта и ортогонального проецирования

Аксонометрические проекции могут реализовываться с помощью 2-х поворотов объекта и ортогонального проецирования
(переноса) на плоскость, что аналогично повороту в пространстве относительно произвольной оси:
а) поворот относительно одной оси,
б) поворот относительно другой оси
в) параллельная (ортогональная) проекция вдоль третьей оси.

Аксонометрические проекции

Слайд 34

Аксонометрические проекции

Аксонометрические проекции

Слайд 35

Единичный вектор OX: [1001], если его повернуть:
Единичный вектор OY: [0101], если

Единичный вектор OX: [1001], если его повернуть: Единичный вектор OY: [0101], если
его повернуть:
Координаты вектора единичной нормали являются ее направляющими косинусами.
Длины проекции вектора на плоскость:
Проецируем на плоскость XY.
Для совмещения произвольной оси вращения с осью z выполним поворот вокруг оси x и вокруг оси y – перемножение матриц:

Аксонометрические проекции

Плоскость задается единичным вектором нормали N.

Слайд 36

Для изометрии справедливо p=r=q, 3p2=2.
Тогда:
Для диметрии справедливо: p=r=2q; 2p2 + p2/4

Для изометрии справедливо p=r=q, 3p2=2. Тогда: Для диметрии справедливо: p=r=2q; 2p2 +
= 2.
Тогда

Аксонометрические проекции

Слайд 37

Точка P=(0,0,1) проецируется в точку P’.
Плоскость проекции совпадает с XOY.
Направление проецирования задаётся:

Точка P=(0,0,1) проецируется в точку P’. Плоскость проекции совпадает с XOY. Направление
(Lcosα, Lsinα,-1),L=1/tan(β);
β – угол между нормалью плоскости проекции и направлением лучей;
α - определяет горизонтальный угол.

Косоугольные проекции

β

Матрица косоугольного проецирования
(в формате вектора-столбца)

P=(0,0,1) проецируется в P’=(lcosα, lsinα, 0),
а произвольная точка P(x,y,z) – в P’(xp,yp,0), где

Слайд 38

Матрица косоугольной проекции для случая проецирования в плоскость Z = 0, выполняет:

Матрица косоугольной проекции для случая проецирования в плоскость Z = 0, выполняет:

плоскости с заданной координатой Z0 переносятся вдоль оси X на Z0·L·cosα и вдоль оси Y на Z0·L·sinα;
производится проецирование в плоскость Z = 0.
Варианты параллельных проекций формируются из полученной подстановкой значений L и углов α и β. Для фронтальной косоугольной диметрии L = ½, угол β = 63.4°, угол α = 45° (можно 30° и 60°).

Косоугольные проекции

Слайд 39

Более сложные!
Для построения учитываются:
ракурс;
перспективы;
объём видимости (в виде
усечённой пирамиды) или
угол

Более сложные! Для построения учитываются: ракурс; перспективы; объём видимости (в виде усечённой
обзора (по 2 координатам).

Центральные проекции

Параметры:
центр проекции (centre of projection - COP);
углы обзора (q, f);
направление проецирования (нормаль к плоскости проекции);
вертикаль, параллельная плоскости проекции (up direction).

Слайд 40

Если поместить центр проекции в центр координат и
направление взгляда ориентировать по

Если поместить центр проекции в центр координат и направление взгляда ориентировать по
положительному направлению оси –z, плоскость проекции разместить на оси z в точке с координатой z = -d, то:

y

yp

-z

d

Аналогичное выражение имеет место и для xp, соответственно ⇒

Центральные проекции


d

Слайд 41

Отражение оси z для перехода в левую систему координат ⇒ увеличение z

Отражение оси z для перехода в левую систему координат ⇒ увеличение z
подразумевает увеличение расстояния до наблюдателя.

Центральные проекции

Слайд 42

В зависимости от приложений могут использоваться различные механизмы для задания перспективных искажений:
углы

В зависимости от приложений могут использоваться различные механизмы для задания перспективных искажений:
обзора (field of view) могут быть получены из расстояния до плоскости проекции;
направление обзора может быть получено, если точка сцены задаётся как точка наблюдения.
OpenGL предлагает несколько различных методов для задания перспективных проекций:
gluLookAt,
glFrustrum,
gluPerspective.

Центральные проекции

Слайд 43

glFrustrum(xmin, xmax, ymin, ymax, zmin, zmax);

Центральные проекции

glFrustrum(xmin, xmax, ymin, ymax, zmin, zmax); Центральные проекции

Слайд 44

glFrustrum

Все точки на линии задаваемой COP и координатами(xmin,ymin,-zmin)будут спроецированы в нижнюю левую

glFrustrum Все точки на линии задаваемой COP и координатами(xmin,ymin,-zmin)будут спроецированы в нижнюю
точку устройства вывода.
Все точки на линии COP (центр проекции) и (xmax,ymax,-zmin)будут соответствовать верхнему правому углу устройства вывода.
Направление наблюдения (viewing direction) всегда соотвествует полуоси -z.
Отпадает необходимость строить симметричную пирамиду (раструб камеры):
zmin и zmax определяются как положительные расстояния вдоль полуоси -z.

glFrustrum(-1.0,1.0,-1.0,1.0,5.0, 50.0);

Слайд 45

gluPerspective(fov, aspect, near, far);

Центральные проекции

gluPerspective(fov, aspect, near, far); Центральные проекции

Слайд 46

gluPerspective

Предназначение функции упростить определение перспективных проекций.
Позволяет создавать симметричные раструбы камеры (symmetric frustrums).
Точка

gluPerspective Предназначение функции упростить определение перспективных проекций. Позволяет создавать симметричные раструбы камеры
наблюдения – в начале координат направление взгляда – вдоль -z полуоси.
Угол обзора (field of view), fov, должен быть в пределах [0..180].
apect позволяет создавать объём видимости (view frustrum), который подгоняется под соотношение сторон (aspect ratio) устройства вывода, чтобы ликвидировать искажения.

Слайд 47

gluPerspective

gluPerspective
Имя файла: Матричные-преобразования-трехмерного-пространства.pptx
Количество просмотров: 32
Количество скачиваний: 0