Jump to content

PLY (формат файла)

(Перенаправлено с PLY )
Формат файла многоугольника
Расширение имени файла
.ply
Тип интернет-СМИ
текстовый/обычный
Введите код ASCII / двоичный файл
Магическое число сгибать
Разработано Грег Терк , Стэнфордский университет
Первоначальный выпуск 1994 [ 1 ]
Тип формата 3D model format

PLY — это компьютерный формат файлов, известный как формат файла многоугольника или формат Стэнфордского треугольника . В основном он был разработан для хранения трехмерных данных от 3D-сканеров. Формат хранения данных поддерживает относительно простое описание отдельного объекта как списка номинально плоских многоугольников. Могут быть сохранены различные свойства, включая цвет и прозрачность, нормали поверхности, координаты текстуры и значения достоверности данных. Формат позволяет иметь разные свойства для передней и задней части многоугольника.

Существует две версии формата файла : одна в ASCII , другая в двоичном формате .

Формат файла

[ редактировать ]

Файл Ply начинается с атрибута «header», который определяет элементы сетки и их типы, за которым следует сам список элементов. Элементами обычно являются вершины и грани, но они могут включать и другие объекты, такие как ребра, образцы карт диапазонов и полоски треугольников.

Заголовок как ASCII, так и двоичных файлов представляет собой текст ASCII. В двух версиях различаются только числовые данные, следующие за заголовком. Заголовок всегда начинается с « магического числа », строки, содержащей:

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!

The element Ключевое слово представляет описание того, как хранятся некоторые конкретные элементы данных и сколько их. Следовательно, в файле, содержащем 12 вершин, каждая из которых представлена ​​в виде тройки с плавающей запятой (X,Y,Z), можно было бы ожидать увидеть:

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

Другой property линии могут указывать на то, что цвета или другие элементы данных хранятся в каждой вершине, и указывать тип данных этой информации. Что касается типа данных, существует два варианта в зависимости от источника файла 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_index

Реализации PLY сильно различаются по именам свойств. vertex_indices используется чаще, чем vertex_index, например в Blender и VTK . В расширенной спецификации перечислены «Основной список (обязательный)», «Второй список (часто используемый)» и «Третий список (предлагаемые расширения)» имен свойств. [ 2 ]

Слово list указывает, что данные представляют собой список значений, первое из которых — это количество записей в списке (в данном случае представлено как «uchar»). В этом примере каждая запись списка представлена ​​как «int». В конце заголовка всегда должна быть строка:

end_header

ASCII или двоичный формат

[ редактировать ]

В версии формата ASCII каждая вершина и грань описываются по одной строке с числами, разделенными пробелами. В двоичной версии данные просто плотно упаковываются друг в друга. endianness указанные в заголовке и с типами данных, указанными в property записи. Для общего property list... представление многоугольников, первое число этого элемента — это количество вершин, которые имеет многоугольник, а остальные числа — это индексы этих вершин в предыдущем списке вершин.

Формат PLY был разработан в середине 90-х годов Грегом Тёрком и другими сотрудниками Стэнфордской графической лаборатории под руководством Марка Левоя. Его дизайн был вдохновлен форматом Wavefront .obj . Однако формату Obj не хватало возможности расширения для произвольных свойств и группировок, поэтому property и element ключевые слова были разработаны для обобщения понятий вершин, граней, связанных данных и других групп.

Пример файла

[ редактировать ]

Ниже приведен полный пример файла PLY, описывающего сетку куба, экспортированную из Blender версии 4.0.2:

ply
format ascii 1.0
comment Created in Blender version 4.0.2
element vertex 14
property float x
property float y
property float z
property float nx
property float ny
property float nz
property float s
property float t
element face 6
property list uchar uint vertex_indices
end_header
1 1 1 0.5773503 0.5773503 0.5773503 0.625 0.5
-1 1 1 -0.5773503 0.5773503 0.5773503 0.875 0.5
-1 -1 1 -0.5773503 -0.5773503 0.5773503 0.875 0.75
1 -1 1 0.5773503 -0.5773503 0.5773503 0.625 0.75
1 -1 -1 0.5773503 -0.5773503 -0.5773503 0.375 0.75
-1 -1 1 -0.5773503 -0.5773503 0.5773503 0.625 1
-1 -1 -1 -0.5773503 -0.5773503 -0.5773503 0.375 1
-1 -1 -1 -0.5773503 -0.5773503 -0.5773503 0.375 0
-1 -1 1 -0.5773503 -0.5773503 0.5773503 0.625 0
-1 1 1 -0.5773503 0.5773503 0.5773503 0.625 0.25
-1 1 -1 -0.5773503 0.5773503 -0.5773503 0.375 0.25
-1 1 -1 -0.5773503 0.5773503 -0.5773503 0.125 0.5
1 1 -1 0.5773503 0.5773503 -0.5773503 0.375 0.5
-1 -1 -1 -0.5773503 -0.5773503 -0.5773503 0.125 0.75
4 0 1 2 3
4 4 3 5 6
4 7 8 9 10
4 11 12 4 13
4 12 0 3 4
4 10 9 0 12

Файл начинается с заголовка, который определяет файл в формате ASCII. Всего 14 вершин (6 граней * 4 вершины — 10 вершин сохранено из-за слияния) и всего 6 граней. После заголовка перечислены данные вершин и граней. Список вершин содержит положение (x,y,z), нормали (nx,ny,nz) и координаты текстуры (s,t) для каждой из 14 вершин. Список граней содержит количество вершин (4) и индексы вершин для каждой из 6 четырехугольных граней.

См. также

[ редактировать ]

Программное обеспечение с открытым исходным кодом

[ редактировать ]
  • CloudCompare фокусируется на облаках точек с некоторыми дополнительными функциями для сеток.
  • Программная среда GigaMesh : численные вычисления на сетках в PLY (или OBJ).
  • MeshLab : универсальное приложение для визуализации, обработки и преобразования трехмерных сеток в формат файла PLY или из него.
  1. ^ Грег Терк. «Формат файла многоугольника PLY» . Архивировано из оригинала 4 декабря 2016 г.
  2. ^ Грег Терк. «Формат файла полигона PLY (расширенный)» (PDF) .
[ редактировать ]


Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 9cbd119ea5d8816dfb0580c1cf12d769__1721453220
URL1:https://arc.ask3.ru/arc/aa/9c/69/9cbd119ea5d8816dfb0580c1cf12d769.html
Заголовок, (Title) документа по адресу, URL1:
PLY (file format) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)