OpenCTM
В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
Разработчик(и) | Маркус Гилнард |
---|---|
Первоначальный выпуск | 2009 |
Стабильная версия | 1.0.3 / 15 января 2010 г. |
Написано в | С |
Операционная система | Windows , Mac OS X , Linux и т. д. |
Тип | 3D компьютерная графика |
Лицензия | лицензия zlib |
Веб-сайт | http://openctm.sourceforge.net/ |
OpenCTM — это технология трехмерной геометрии для хранения данных на основе треугольников.сетки в компактном формате.
Обзор
[ редактировать ]OpenCTM — это проект с открытым исходным кодом, который развивался вокруг технологии сжатия трехмерных треугольных сеток . Технология разделена на три части:
- Открытый двоичный формат файла.
- Программная библиотека с открытым исходным кодом для чтения и записи файлов OpenCTM.
- Набор программных инструментов для преобразования и просмотра файлов OpenCTM.
Структура данных треугольной сетки, которую использует OpenCTM, напрямую совместима с высокопроизводительными конвейерами рендеринга графики, такими как OpenGL , что делает ее подходящей для приложений интерактивной компьютерной графики. Другие типы приложений, такие как инструменты CAD / CAM , обычно требуют преобразования данных сетки в пользовательский формат сетки для более эффективной обработки данных.
OpenCTM использует массив индексов треугольников для представления информации о связности треугольников и несколько массивов для представления вершин данных (координаты вершин, нормали , UV-координаты и пользовательские атрибуты вершин).
Формат файла
[ редактировать ]формат файла Двоичный использует 32-битный формат с прямым порядком байтов для всех целочисленных полей и 32-битный двоичный формат IEEE 754 для всех полей с плавающей запятой (также с прямым порядком байтов).
Файл начинается со специального целочисленного идентификатора 0x4D54434F, который, если его интерпретировать как четыре символа ASCII , образует строку «OCTM». После идентификатора следует целочисленное значение, указывающее версию формата файла (последняя официальная версия формата файла — 5).
Остальная часть файла, описанная в спецификации формата файла, [1] содержит информацию о треугольной сетке. Сюда входит сжатый массив индексов треугольников и сжатые массивы вершин (по одному массиву для каждого атрибута вершины).
Из-за множества этапов обработки данных, необходимых для реализации сжатия, непосредственное взаимодействие с форматом файла обычно более сложное, чем взаимодействие с другими несжатыми форматами файлов треугольной сетки (например, STL и PLY ).
Сжатие
[ редактировать ]Сжатие основано на уменьшении энтропии без потерь с помощью различныхоперации дифференцирования с последующим энтропийным кодированием без потерь с использованием LZMA Библиотека сжатия .
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Спецификация формата OpenCTM , версия 5