Loading AI tools
З Вікіпедії, вільної енциклопедії
3D проєкція — це будь-який спосіб відображення тривимірних точок на двовимірній площині. Оскільки більшість сучасних методів для відображення графічних даних базуються на планарних (піксельна інформація з декількох бітових площин) двомірних середовищах, використання цього типу проєкції широко поширене, особливо в галузі комп'ютерної графіки, інженерії та креслення.
Ця стаття містить правописні, лексичні, граматичні, стилістичні або інші мовні помилки, які треба виправити. |
Коли людське око дивиться на сцену, віддалені об'єкти виглядають меншими, ніж об'єкти поруч. Ортогональна проєкція нехтує цим ефектом, що дозволяє створювати креслення в масштабі для будівництва і машинобудування.
Ортогональна проєкція — це невеликий набір перетворень, який часто використовується, щоб показати профіль, деталі або точні розміри тривимірного об'єкта.
Якщо нормаль площини перегляду (напрямок камери) паралельна одній з координатних осей (тобто, , або осі ), то математичне перетворення виглядає наступним чином; Для проєктування 3D-точки , , на 2D точку , ортогональною проєкцією, яка паралельна осі Y (вид профілю), то можна використати наступні рівняння:
де вектор s — довільний масштабний коефіцієнт, а c являє собою довільне зміщення. Ці константи не є обов'язковими, і можуть бути використані, щоб правильно вирівняти вікно перегляду. При використанні матричного множення, рівняння мають такий вигляд:
У той час як орфографічно проєктовані зображення являють собою тривимірну природу проєктованого об'єкта, вони не уявляють об'єкт, як це було б записано фотографічно або, як це сприймається глядачем, який безпосередньо спостерігає за ним. Зокрема, паралельні довжини у всіх точках на ортогонально проєктованому зображенні одного і того ж масштабу, незалежно від того, чи є вони далеко або близько до віртуального перегляду. В результаті, довжини біля до глядача не малюються в ракурсі, як вони б виглядали в перспективному проєктуванні.
«Слабка» перспективна проєкція використовує ті ж принципи ортогональної проєкції, але вимагає коефіцієнт масштабування, який необхідно вказати, таким чином гарантуючи, що ближчі об'єкти здаються більшими в проєкції, і навпаки. Це можна розглядати як гібрид між ортогональною і перспективною проєкціями, і описується або як перспективна проєкція з окремими глибинами точки заміненими середнім постійним глибини ,[1] або просто як ортогональна проєкція з масштабуванням.[2]
Таким чином, слабко-перспективна модель апроксимує перспективну проєкцію, використовуючи простішу модель, схожу на чисту (немасштабовану) ортогональну проєкцію. Це розумне зближення, коли глибина об'єкта уздовж лінії візування мала в порівнянні з відстанню від камери, а поле зору маленьке. При цих умовах можна припустити, що всі точки на 3D-об'єкті знаходяться на однаковій відстані від камери, без суттєвих помилок у проєкції (в порівнянні з повною перспективною моделлю).
Коли людське око бачить сцену, об'єкти на відстані здаються менше, ніж об'єкти поруч — це відомо як перспектива. У той час як ортогональна проєкція ігнорує цей ефект, щоб дозволити точні вимірювання, перспективна проєкція показує, що віддалені об'єкти менше, щоб забезпечити додатковий реалізм.
Перспективна проєкція вимагає більш активну участь визначення в порівнянні з ортогональною проєкцією. Концептуальною допомогою у розумінні механіки цієї проєкції є уявлення 2D проєкції, ніби об'єкт або об'єкти в цей час розглядається через видошукач камери. Положення камери, орієнтація і поле зору управління поведінкою перетворення проєкції. Наступні змінні визначені для опису цієї трансформації:
Що призводить до:
Коли та 3D-вектор проєктується на 2D вектор .
В іншому випадку, для обчислення ми спочатку визначимо вектор як положення точки стосовно системи координат, визначеній камерою, з початком в , і повернутої на відносно початкової системи координат. Це досягається шляхом віднімання матриці з і потім застосування обертання по . Це перетворення часто називають перетворенням камери, і воно може бути виражене, висловлюючи обертання в термінах обертань навколо осей , , і (ці розрахунки мають на увазі те, що осі впорядковані як лівостороння система осей): [4] [5]
Це уявлення відповідає обертанню на три кута Ейлера, використовуючи конвенцію , яку можна інтерпретувати як «обертання навколо зовнішніх осей (осі сцени) в порядку , , (читання справа наліво)» або «поворот навколо власних осей (осі камери) в порядку , , (читання зліва-направо)». Зверніть увагу, що якщо камера не повертається (), то матриці випадають (як тотожності), і це зводиться до простого зрушення:
Як альтернатива, без використання матриць:
Це перетворення точки потім може проєктуватися на 2D площині, використовуючи формулу (тут x/у, використовується як площина проєкції; у літературі також може використовуватися x/z):[6]
Або в матричній формі з використанням однорідних координат, система
в поєднанні з аргументами, використання подібних трикутників призводить до поділу однорідними координатами, даючи
Відстань від поверхні дисплея до глядача, , безпосередньо пов'язана з полем зору, де це розглянутий кут.
Наведені вище рівняння можна переписати таким чином:
В якому — розмір дисплея, — розмір робочої поверхні диска (наприклад CCD), відстань від поверхні запису центру камери, та це відстань, від 3D точки проєктування, до ока користувача.
Подальші операції відсікання і масштабування можуть бути необхідними для відображення 2D площини на будь-якому дисплеї.
Для того, щоб визначити, який x-координатний екран відповідає точці, в помножимо координати точки на:
де
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.