Формат файла аддитивного производства

редактировать
Формат аддитивного производства
Формат файла аддитивного производства (значок).png Значок AMF
Расширение имени файла .amf
Тип Интернет-носителя application / x-amf
РазработаноASTM / ISO
Первоначальный выпуск2 мая 2011 г. (2011-05-02)
Последняя версия выпуск 1.2
Стандарт ISO / ASTM52915 - 16

Формат файлов аддитивного производства (AMF ) - это открытый стандарт для описания объектов для аддитивное производство такие процессы, как 3D-печать. Официальный ISO / ASTM 52915: 2016 стандарт - это формат на основе XML, предназначенный для обеспечения любого автоматизированного проектирования программное обеспечение для описания формы и состава любого 3D объекта, который будет изготовлен на любом 3D-принтере. В отличие от своего предшественника формата STL, AMF имеет встроенную поддержку цвета, материалов, решеток и созвездий.

Содержание
  • 1 Структура
    • 1.1 Базовая структура файла
    • 1.2 Спецификация геометрии
    • 1.3 Спецификация цвета
      • 1.3.1 Текстурные карты
    • 1.4 Спецификация материала
      • 1.4.1 Смешанный, градуированные, решетчатые и случайные материалы
    • 1.5 Распечатка созвездий
    • 1.6 Метаданные
    • 1.7 Необязательные изогнутые треугольники
    • 1.8 Формулы
    • 1.9 Сжатие
  • 2 Рекомендации по проектированию
  • 3 История
  • 4 Пример файла
  • 5 См. Также
  • 6 Примечания
  • 7 Внешние ссылки
Структура

AMF может представлять один объект или несколько объектов, расположенных в созвездие. Каждый объект описывается как набор неперекрывающихся томов. Каждый объем описывается треугольной сеткой, которая ссылается на набор точек (вершин). Эти вершины могут быть разделены между объемами, принадлежащими одному объекту. В файле AMF также можно указать материал и цвет каждого объема, а также цвет каждого треугольника в сетке. Файл AMF сжимается с использованием формата сжатия zip, но расширение файла «.amf» сохраняется. Реализация минимального средства чтения AMF должна иметь возможность распаковывать файл AMF и импортировать хотя бы геометрическую информацию (игнорируя кривизну).

Базовая структура файла

Файл AMF начинается со строки объявления XML, в которой указывается версия и кодировка XML. Остальная часть файла заключена между открывающим элементом и закрывающим элементом . Также можно указать систему единиц (миллиметр, дюйм, фут, метр или микрометр). При отсутствии спецификации единиц измерения принимаются миллиметры.

В скобках AMF есть пять элементов верхнего уровня. Для полнофункционального файла AMF требуется только один элемент объекта.

  1. Элемент объекта определяет объем или объемы материала, каждый из которых связан с идентификатором материала для печати. В файле должен присутствовать хотя бы один элемент объекта. Дополнительные объекты не являются обязательными.
  2. Необязательный элемент материала определяет один или несколько материалов для печати с соответствующим идентификатором материала. Если элемент материала не включен, предполагается один материал по умолчанию.
  3. Дополнительный элемент текстуры определяет одно или несколько изображений или текстур для отображения цвета или текстуры, каждое из которых имеет связанный идентификатор текстуры.
  4. Необязательный элемент созвездия иерархически объединяет объекты и другие комбинации в относительный образец для печати. ​​
  5. Необязательный элемент метаданных указывает дополнительную информацию об объекте (ах) и элементах, содержащихся в файле.
  6. Спецификация геометрии

    Формат использует Грань-вершина макет полигональной сетки. Каждый элемент верхнего уровня указывает уникальный id. Элемент также может дополнительно указывать материал. Вся геометрия сетки содержится в одном элементе mesh. Сетка определяется с использованием одного элемента и одного или нескольких элементов . В обязательном элементе перечислены все вершины, которые используются в этом объекте. Каждой вершине неявно присваивается номер в том порядке, в котором она была объявлена, начиная с нуля. Требуемый дочерний элемент задает положение точки в трехмерном пространстве с помощью элементов , и . После информации о вершине должен быть включен хотя бы один элемент . Каждый том инкапсулирует замкнутый объем объекта. В одном объекте можно указать несколько томов. Тома могут иметь общие вершины на интерфейсах, но не могут иметь перекрывающегося объема. В каждом томе дочерний элемент используется для определения треугольников, которые создают мозаику на поверхности объема. Каждый элемент будет перечислять три вершины из набора индексов ранее определенных вершин, заданных в элементе . Индексы трех вершин треугольников указываются с помощью элементов , и . Порядок вершин должен соответствовать правилу правой руки, чтобы вершины указывались в порядке против часовой стрелки, если смотреть снаружи. Каждому треугольнику неявно присваивается номер в том порядке, в котором он был объявлен, начиная с нуля.

    Спецификация цвета

    Цвета вводятся с помощью элемента путем указания красного, зеленого, синего и альфа-каналов (прозрачность ) в sRGB цветовое пространство в виде чисел в диапазоне от 0 до 1. Элемент может быть вставлен на уровне материала, объекта, объема, вершины или треугольника и имеет приоритет в обратном порядке (треугольник цвет имеет высший приоритет). Канал прозрачности указывает, в какой степени смешивается цвет нижнего уровня. По умолчанию все значения установлены на ноль.

    Цвет также можно указать, обратившись к формуле, которая может использовать множество функций, зависящих от координат.

    Текстурные карты

    Текстурные карты позволяют назначать цвет или материал поверхности или объему, заимствуя идею наложения текстуры в графике. Элемент сначала используется для связывания идентификатора текстуры с конкретными данными текстуры. Данные могут быть представлены как двумерный или трехмерный массив, в зависимости от того, нужно ли сопоставить цвет или материал на поверхности или объему. Данные представлены в виде строки байтов в кодировке Base64, один байт на пиксель, определяющий уровень градаций серого в диапазоне 0–255.

    После назначения идентификатора текстуры на данные текстуры можно ссылаться в формуле цвета, как в примере ниже.

    Однако обычно скоординированные координаты не используются напрямую, как показано выше, а сначала преобразуются, чтобы привести их из координат объекта в координаты текстуры. Например, tex (1, f1 (x, y, z), f2 (x, y, z), f3 (x, y, z))где f1 (), f2 (), f3 ()- некоторые функции, обычно линейные.

    Спецификация материалов

    Материалы вводятся с помощью элемента . Каждому материалу присваивается уникальный идентификатор. Геометрические объемы связаны с материалами путем указания идентификатора материала в элементе .

    Смешанные, градиентные, решетчатые и случайные материалы

    Новые материалы можно определить как составы других материалов. Элемент используется для указания пропорций композиции в виде константы или формулы в зависимости от координат x, y и z. Постоянная пропорция смешивания приведет к получению однородного материала. Композиция, зависящая от координат, может привести к дифференцированному материалу. Более сложные пропорции, зависящие от координат, могут привести к нелинейным градиентам материала, а также к периодическим и непериодическим субструктурам. Формула пропорции может также относиться к карте текстуры с помощью функции tex (textureid, x, y, z). Ссылка на идентификатор материала «0» (пусто) зарезервирована и может использоваться для определения пористых структур. Ссылка на функцию rand (x, y, z)может использоваться для указания псевдослучайных материалов. Функция rand (x, y, z)возвращает случайное число от 0 до 1, которое является постоянным для этой координаты.

    Созвездия печати

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

    Если указано несколько созвездий верхнего уровня или если указано несколько объектов без созвездий, каждый из них будет импортирован без данных относительного положения. Затем программа импорта может свободно определять относительное позиционирование.

    Мета-данные

    Элемент может дополнительно использоваться для указания дополнительной информации об определяемых объектах, геометрии и материалах. Например, эта информация может указывать имя, текстовое описание, авторство, информацию об авторских правах и специальные инструкции. Элемент может быть включен на верхнем уровне, чтобы указать атрибуты всего файла, или внутри объектов, томов и материалов, чтобы указать атрибуты, локальные для этой сущности.

    Необязательные изогнутые треугольники

    Патч изогнутого треугольника. Нормали в вершинах используются для рекурсивного разделения треугольника на четыре подтреугольника

    Для повышения геометрической точности формат позволяет изгибать участки треугольника. По умолчанию все треугольники считаются плоскими, и все ребра треугольников считаются прямыми линиями, соединяющими их две вершины. Тем не менее, криволинейные треугольники и криволинейные кромки могут быть дополнительно указаны, чтобы уменьшить количество элементов сетки, необходимых для описания криволинейной поверхности. Было показано, что информация о кривизне снижает ошибку сферической поверхности в 1000 раз по сравнению с поверхностью, описываемой таким же количеством плоских треугольников. Кривизна не должна создавать отклонение от плоскости плоского треугольника, превышающее 50% наибольшего размера треугольника.

    Чтобы указать кривизну, вершина может дополнительно содержать дочерний элемент , чтобы указать желаемую нормаль к поверхности в местоположении вершины. Нормаль должна быть единичной длины и направлена ​​наружу. Если указана эта нормаль, все ребра треугольника, пересекающиеся в этой вершине, изогнуты так, что они перпендикулярны этой нормали и находятся в плоскости, определяемой нормалью и исходной прямой кромкой. Когда кривизна поверхности в вершине не определена (например, в острие, углу или ребре), элемент может использоваться для указания кривизны одного нелинейного ребра, соединяющего две вершины. Кривизна задается с использованием векторов касательного направления в начале и конце этого ребра. Элемент будет иметь приоритет в случае конфликта с кривизной, подразумеваемой элементом .

    Если задана кривизна, треугольник рекурсивно разбивается на четыре подтреугольника. Рекурсия должна выполняться на глубину пяти уровней, чтобы исходный изогнутый треугольник в конечном итоге был заменен 1024 плоскими треугольниками. Эти 1024 треугольника генерируются «на лету» и временно сохраняются только в то время, когда слои, пересекающие этот треугольник, обрабатываются для изготовления.

    Формулы

    В элементах и вместо констант можно использовать зависимые от координат формулы. В этих формулах могут использоваться различные стандартные алгебраические и математические операторы и выражения.

    Сжатие

    AMF может быть сохранен как обычный текст или как сжатый текст. Если сжат, сжатие выполняется в формате ZIP-архив. Размер сжатого файла AMF обычно составляет примерно половину размера эквивалентного сжатого двоичного файла STL. Сжатие можно выполнить вручную с помощью программного обеспечения для сжатия, такого как WinZip, 7-Zip, или автоматически с помощью программного обеспечения для экспорта во время записи. И сжатые, и несжатые файлы имеют расширение AMF, и программа синтаксического анализа должна определить, сжат файл или нет, и, если да, выполнить распаковку во время импорта.

    Соображения по дизайну

    Когда подкомитет ASTM Design начал разработку спецификаций AMF, опрос заинтересованных сторон показал, что ключевым приоритетом для нового стандарта было требование непатентованного формат. Проблемы с модулями и возможностью сборки возникли из-за проблем с форматом STL. Другими ключевыми требованиями были возможность указывать геометрию с высокой точностью и небольшими размерами файлов, несколько материалов, цвета и микроструктуры. Чтобы добиться успеха в области аддитивного производства, этот формат файла был разработан для решения следующих проблем

    1. Технологическая независимость : Формат файла должен описывать объект в общем виде, чтобы любая машина могла его построить. в меру своих возможностей. Он не зависит от разрешения и толщины слоя и не содержит информации, относящейся к какому-либо производственному процессу или технологии. Это не отменяет включение свойств, которые поддерживают только некоторые современные машины (например, цвет, несколько материалов и т. Д.), Но они определены таким образом, чтобы избежать исключительности.
    2. Простота : файл формат должен быть простым для реализации и понимания. Формат должен быть читаемым и редактируемым в простой программе просмотра текста, чтобы способствовать пониманию и принятию. Не следует хранить идентичную информацию в нескольких местах.
    3. Масштабируемость : формат файла должен хорошо масштабироваться с увеличением сложности и размера детали, а также с улучшением разрешения и точности производственного оборудования. Это включает в себя возможность обрабатывать большие массивы идентичных объектов, сложные повторяющиеся внутренние элементы (например, сетки), гладкие изогнутые поверхности с высоким разрешением печати и несколько компонентов, расположенных в оптимальной упаковке для печати. ​​
    4. Производительность : файл формат должен обеспечивать разумную продолжительность (интерактивное время) для операций чтения и записи и разумные размеры файла для типичного большого объекта.
    5. Обратная совместимость : Любой существующий файл STL должен быть преобразован непосредственно в допустимый файл AMF без какой-либо потери информацию и не требуя дополнительной информации. Файлы AMF также легко конвертируются обратно в STL для использования в устаревших системах, хотя расширенные функции будут потеряны.
    6. Совместимость в будущем : чтобы оставаться полезными в быстро меняющейся отрасли, этот формат файла должен легко расширяться, в то время как остается совместимым с более ранними версиями и технологиями. Это позволяет добавлять новые функции по мере достижения технологических достижений, при этом безупречно работая с простой однородной геометрией на самом старом оборудовании.
    История

    С середины 1980-х годов STL Формат файлов был де-факто отраслевым стандартом для передачи информации между программами проектирования и оборудованием для аддитивного производства. Формат STL содержал только информацию о поверхностной сетке и не имел условий для представления цвета, текстуры, материала, субструктуры и других свойств изготовленного целевого объекта. По мере того как технология аддитивного производства эволюционировала от производства однородных форм в основном из одного материала к производству полноцветных геометрических форм из нескольких материалов с функционально дифференцированными материалами и микроструктурами, возникла растущая потребность в стандартном формате файла обмена, который мог бы поддерживать эти функции. Вторым фактором, положившим начало разработке стандарта, было улучшение разрешения технологий аддитивного производства. Поскольку точность процессов печати приближалась к разрешению в микронном масштабе, количество треугольников, необходимое для описания гладких изогнутых поверхностей, привело к недопустимо большим размерам файлов.

    В течение 1990-х и 2000-х годов различные компании использовали ряд проприетарных форматов файлов для поддержки определенных функций своего производственного оборудования, но отсутствие общеотраслевого соглашения препятствовало широкому распространению какого-либо единого формата.. В январе 2009 года был учрежден новый комитет F42 ASTM по аддитивным технологиям производства, а также был сформирован подкомитет по дизайну для разработки нового стандарта. В конце 2009 года был проведен опрос, в результате которого новый стандарт обсуждался более года. Получившаяся первая редакция стандарта AMF стала официальной 2 мая 2011 г.

    Во время июльских 2013 г. совещаний комитетов F42 ASTM и TC261 ISO в Ноттингеме (Великобритания) был одобрен Совместный план разработки стандартов аддитивного производства. С тех пор стандарт AMF находится в ведении ISO и ASTM.

    Образец файла
    Объект, созданный образцом кода AMF

    Ниже приведен простой файл AMF, описывающий пирамиду из двух материалов, адаптированный из учебника AMF (сжато 548 байтов). Чтобы создать этот файл AMF, скопируйте и вставьте текст под текстом в текстовый редактор или редактор xml и сохраните файл как «pyramid.amf». Затем сожмите файл с помощью ZIP и переименуйте файл с расширением с «.zip» на «.zip.amf».

    Разделенная пирамидаДжон Смит0001000101100,50,51Твердая сторона210014412042Мягкая сторона231134432421Твердый материал0,10,10,1Мягкий материал00,90,9 0,5 
    См. Также
    Примечания
    Внешние ссылки
    • AMF Wiki : репозиторий ресурсов AMF, примеров файлов и исходного кода
    Последняя правка сделана 2021-06-10 00:17:13
    Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
    Обратная связь: support@alphapedia.ru