PLY

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук


Polygon File Format
Розширення файлу: .ply
MIME-тип: text/plain
Магічне число: PLY
Розробник: Грег Тюрк[en], Stanford University
Рік випуску: 1994[1]
Тип формату: Формат 3D-моделі

PLY — формат комп'ютерних файлів для опису геометрії, відомий також як Polygon File Format і Stanford Triangle Format. Він був розроблений, головним чином, для зберігання тривимірних даних 3D сканерів. Формат підтримує відносно простий опис об'єкта як списку плоских полігонів. PLY може зберігати безліч властивостей об'єкта, що включає: колір і прозорість, нормальний до поверхні, текстурні координати і т. д. Формат дозволяє мати різні властивості передньої і задньої грані полігону. Існує 2 версії формату файла PLY: ASCII і в вигляді бінарного файлу.

The Digital Michelangelo Project at Stanford University used the PLY format for an extremely high resolution 3D scan of the Michelangelo «David» sculpture.

Опис формату[ред.ред. код]

Файли скаладаються з заголовка, в якому визначаються елементи полісеток і їх типи, і наступного за ним списку самих елементів. Елементи — це зазвичай вершини і межі, але можуть включаться інші сутності, такі як ребра або смуги трикутників (triangle strips). Заголовок і для ASCII, і для бінарного файлу є ASCII текстом. Тільки чисельні дані, які стоять після заголовка, розрізняються між версіями. Заголовок завжди починається з «магічного числа[en]», рядка, що містить слово

ply

що ідентифікує PLY формат файлу. Другий рядок відображає, який варіант PLY формату використовується:

format ascii 1.0
format binary_little_endian 1.0
format binary_big_endian 1.0

На даний момент 1.0 — єдина версія формату, яка використовується. Коментарі можуть бути розміщені в заголовку з використанням слова comment на початку рядка. Весь рядок після цього слова при імпорті буде проігнорований:

comment This is a comment!

Ключове слово element вводить опис того, який конкретнийо елемент даних зберігається в файлі, а також кількість цих елементів. У прикладі нижче описано, що файл містить 12 вершин, кожна з яких представлена у вигляді трьох чисел з плаваючою точкою:

element vertex 12
property float x
property float y
property float z

Рядки, що починаються зі слова property, вказують тип інформації про вершини. Існує 2 варіанти типів, що залежать від джерела ply файлу. Тип може бути одним з char uchar short ushort int uint float double або одним з int8 uint8 int16 uint16 int32 uint32 float32 float64. Грані об'єкта можуть бути описані в такий спосіб:

element face 10
property list uchar int vertex_indices

Слово list показує, що дані представлені у вигляді списку значень, перше з яких — це кількість елементів списку (представлене типом uchar в даному випадку), а кожне входження списку має тип int. Для звичайного property list … уявлення полігонів перше число для цього елемента — це число вершин полігону, і числа, які залишилися, — це індекси в попередньому списку вершин. В кінці заголовка розташовується рядок, що позначає його кінець:

end_header

ASCII або бінарний формат[ред.ред. код]

В ASCII версії формату кожна вершина і грань описується одним рядком чисел, розділених пробілами. У бінарної версії формату дані упаковуються один біля одного в порядку байтів, котрий встановлений у заготівці, і типом, зазначеним в property.

Історія[ред.ред. код]

Формат PLY був розроблений в середині 90-х Грегом Тюрком[en] і іншими співробітниками Stanford graphics lab під керівництвом Marc Levoy. Його дизайн був натхненний форматом Wavefront .obj, але формат Obj не володіє розширюваністю довільними свойствами і групами даних, для чого були введені ключові слова property і element, узагальнюючі нотацію вершин, граней, асоційованих даних і т. д.

Див. також[ред.ред. код]

  • obj, формат файлу визначення 3D геометрії з розширенням «.obj»
  • Mathematica Технічна обчислювальна система, яка може працювати з файлами PLY.

Посилання[ред.ред. код]

Посилання[ред.ред. код]