sunLoadingImage
whowedImag
decoration left 1
decoration left 2
transhome
transprojects
transgallery
transarticles
decoration rigth
English
Українська
Show/Hide search bar
black cat logo variable logo
[02 Лис 2012]

Вектори в 3D графіці

Вектори

Вектори мають напрям та числове значення. Кількість компонентів у векторі відповідає розмірності простору. Скаляр може розглядатися як відстань чи швидкість, а вектор - як зсув чи швидкість з напрямом. Залежно від потреб, вектор можна записати у формі рядка чи в формі стовбця (наприклад, для множення на матрицю):

Вектор записаний як рядок              Вектор записаний як стовпець. Вектор-стовпець записується як транспонований вектор-рядок

Довжина вектора:

Довжина вектора

Нормалізовний вектор (вектор одиничної довжини):

Нормалізований вектор

Величина різниці векторів:

Величина різниці векторів

Скалярний добуток векторів

Скалярний (внутрішній) добуток векторів – одна з найбільш часто вживаних операцій в комп'ютерній графіці. Скалярний добуток двох векторів є сумою множення відповідних компонентів цих векторів. Результатом є скаляр:

Скалярний добуток векторів

Скалярний добуток можна інтерпретувати як косинус кута між векторами, або як проекцію одного вектора на інший вектор. Ці інтерпретації є пов'язаними. Розглянемо вектори a та b:

Геометрична інтерпретація скалярного добутку

Косинус кута між векторами та сам кут визначаються як:

Косинус кута між не нормалізованими векторами
Косинус кута між нормалізованими векторами
Кут між векторами

Довжина проекції одного вектора на інший, та вектор проекції рівні:

Довжина проекції вектора а на вектор b
Вектор e

Властивості скалярного добутку:

  • скалярний добуток має більший пріоритет виконання ніж додавання та віднімання
  • Якщо скалярний добуток рівний 0, то вектори перпендикулярні
  • Якщо скалярний добуток рівний 1, то вектори паралельні і мають однаковий напрямок
  • Якщо скалярний добуток рівний -1, то вектори паралельні, але мають протилежний напрямок
  • Якщо скалярний добуток більший за 0, то кут між векторами менший за 90 градусів
  • Якщо скалярний добуток менший за 0, то кут між векторами більший за 90 градусів
  • Скалярний добуток вектора з самим собою є квадратом довжини вектора
  • Результат не залежить від порядку векторів
  • Домноження на скаляр
  • Розкриття дужок

Векторний добуток векторів

Векторний добуток вживається так само часто як і скалярний добуток векторів. Результатом цієї операції є вектор, який перпендикулярний до двох вхідних векторів. Ця властивість застосовується для розрахунку нормалей поверхні і тп. Розглянемо вектори а та b:

Векторний добуток векторів

Вектор с рівний:

Розрахунок скалярного добутку

Вектори a ти b не повинні обов'язково бути перпендикуларними. Довжина вектора с рівна площі паралелограма S, який утворенй векторами a та b. Якщо початкові вектори є нормалізованими, то довжина вектора c рівна сінусу кута між векторами a та b.

Площа паралелограма
Сінус між векторами

Напрям результуючого вектора c залежить від порядку векторів при векторному добутку. Наприклад, в правосторонній системі координат, напрям вектора с визначається за правилом правої руки. Вказівний палець кразує напрям вектора а, середній - напрям вектора b, і тоді великий палець буде вказувати напрям вектора с. Для лівосторонньої системи координат можна аналогічно використати ліву руку. Якщо змінити порядок векторів у векторному добутку, то вектор с змінить напрям на протилежний.

По пріоритету операцій векторний добуток виконується перед додаванням, відніманням та скалярним добутком. Векторний добуток векторів є визначеним тільки для 3D векторів і не є комутативним.

Інші властивості векторного добутку:

  • Зміна порядку векторів у добутку, змінює напрям результату на протилежний

  • Дистрибутивності векторного добутку
  • Відсутність асоціативності
  • Векторний добуток вектора з самим собою рівний 0
  • Векторний добуток паралельних векторів рівний 0

Скалярний мішаний добуток векторів

Мішаний добуток векторів рівний об'ємy паралелограма, який утворений векторами a, b та с.

Мішаний добуток векторів
Мішаний добуток рівний обєму паралелограма, який утворений трьома векторами. Результат потрібно взяти до модуля.

Також мішаний добуток рівний детермінанту матриці, побудованої з векторів a, b та с.

Розрахунок мішаного добутку, як детермінант матриці

Властивості мішаного добутку:

  • Якщо два вектори (з a, b та c) паралельні, то результат рівний 0.
  • Якщо вектори a, b та с лежать на одній площині, то мішаний добуток рівний 0.



Sun and Black Cat- Ігор Дихта (igor dykhta email) © 2007-2014