OpenCTM - OpenCTM

OpenCTM
Разработчики)Маркус Гилнард
изначальный выпуск2009
Стабильный выпуск
1.0.3 / 15 января 2010 г. (2010-01-15)
Написано вC
Операционная системаWindows, Mac OS X, Linux, так далее.
Тип3D компьютерная графика
Лицензиялицензия zlib
Интернет сайтhttp://openctm.sourceforge.net/

OpenCTM представляет собой технологию трехмерной геометрии для хранения сеток на основе треугольников в компактном формате.

Обзор

OpenCTM - это проект с открытым исходным кодом, который развился вокруг технологии сжатия 3D треугольные сетки. Технология разделена на три части:

  • Открытый, двоичный формат файла.
  • An Открытый исходный код программная библиотека для чтения и записи файлов OpenCTM.
  • Набор программных инструментов для преобразования и просмотра файлов OpenCTM.

Структура данных треугольной сетки, которую использует OpenCTM, напрямую совместима с высокопроизводительными конвейерами рендеринга графики, такими как OpenGL, что делает его пригодным для интерактивных компьютерных графических приложений. Другие типы приложений, например CAD /CAM инструменты, обычно необходимо преобразовать данные сетки в пользовательский формат сетки для более эффективной обработки данных.

OpenCTM использует массив индексов треугольника для представления треугольника информация о подключении, и несколько массивов для представления вершина данные (координаты вершины, нормали, УФ-координаты и настраиваемые атрибуты вершин).

Формат файла

Формат файла, который двоичный, использует 32-битный прямой порядок байтов формат для всех целочисленных полей и 32-битный двоичный IEEE 754 формат для всех полей с плавающей запятой (также с прямым порядком байтов).

Файл начинается со специального целочисленного идентификатора 0x4D54434F, который, если его интерпретировать как четыре символа ASCII, образует строку «OCTM». После идентификатора следует целое число, указывающее версию формата файла (последняя официальная версия формата файла - 5).

Остальная часть файла, описанная в спецификации формата файла,[1] содержит информацию о треугольной сетке. Это включает в себя сжатый массив индексов треугольников и сжатые массивы вершин (по одному массиву для каждого атрибута вершины).

Из-за множества этапов обработки данных, необходимых для реализации сжатия, прямое взаимодействие с форматом файла обычно более сложно, чем взаимодействие с другими несжатыми форматами файлов треугольной сетки (например, STL и PLY ).

Сжатие

Сжатие основано на уменьшении энтропии без потерь посредством различных операций дифференцирования с последующим энтропийным кодированием без потерь с использованиемLZMA библиотека сжатия.

Смотрите также

использованная литература

внешние ссылки