Является ли непоследовательная плотность вершин плохой вещью?

Приведет ли несогласованная плотность вершин к появлению артефактов в отпечатке? Или это нормально, пока это гладкая поверхность?

, 👍5

Обсуждение

Нет, это не так. Посмотрите здесь для небольшого объяснения того, как работает slicer http://3d-printery.ru/topics/1180/do-3d-printers-prefer-particular-topology, @darth pixel

Ссылка относится к треугольникам, в отличие от других многоугольников в модели. Эта модель имеет все треугольники, поэтому я не уверен, что вижу уместность этого вопроса. На этом изображении показаны все треугольники, так что мое обоснованное предположение состоит в том, что он будет печатать нормально. Мы не видим треугольников модели при печати, только линии слоев, если только модель не является низкополигональной конструкцией., @fred_dot_u

@fred_dot_u ссылка дает небольшое объяснение того, как работает slicer. Предполагалось, что проблема, выраженная в вопросе, настолько мала (особенно в красном прямоугольнике), что такого небольшого объяснения будет достаточно. К счастью, Райан Карлайл описал его очень подробно., @darth pixel

Исходя из небольшого размера рассматриваемой области и не малого размера уточняющего ответа, я ожидаю, что результат будет тривиальным с точки зрения слайсера и/или принтера. Конечно, нет никакого масштаба, на котором можно было бы основывать размер модели. Сфера диаметром 50 мм, вероятно, ничего бы не показала, но 5-метровая сфера могла бы прекрасно представить артефакт., @fred_dot_u


1 ответ


Лучший ответ:

4

По большей части точный уровень плотности вершин не имеет большого значения. Но это зависит от слайсера и настроек. Некоторые слайсеры (например, Slic3r) автоматически уничтожают траектории движения инструмента, чтобы гарантировать, что команды скорости перемещения не будут слишком сложными для старых, медленных 8-битных процессоров в большинстве потребительских / любительских 3D-принтеров. Наличие большого количества очень маленьких команд движения может привести к сбоям в работе этих контроллеров движения и вызвать заикание при паузах, что приведет к появлению небольших пятен на отпечатке. Большинство слайсеров просто снижают уровень детализации модели, чтобы обезопасить контроллер движения. Поскольку контуры уменьшены до минимальной длины сегмента перемещения, очень маленькие треугольники модели не имеют отношения к производительности принтера. Самое большее, они могут добавить незначительное количество времени нарезки.

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

В более общем смысле высокополигональные модели значительно сложнее точно воспроизвести на 3D-принтере. Есть две большие проблемы:

  • Каждый сегмент движения требует некоторого процессорного времени для чтения / приема, анализа и выполнения. Но чем короче длина сегментов, тем быстрее принтер проходит через них. Выполнение короткого хода занимает немного времени, но при этом имеет ту же нагрузку на процессор, что и длинный ход. В определенный момент процессор не может идти в ногу со временем, и производительность падает. У принтера может закончиться очередь ходов для выполнения и приостановиться на месте, или он может нарушить ограничения ускорения и сильно врезаться в повороты (или даже потерять позицию), потому что у него не было достаточно времени для повторения вычислений, которые определяют, с какой скоростью он должен двигаться.
  • Алгоритмы, используемые большинством потребительских / любительских прошивок для 3D-принтеров (Marlin, Repetier, Sailfish, Smoothieware и т. Д.), Основаны на GRBL. И, не вдаваясь в математику, GRBL использует резкость углов между сегментами движения, чтобы решить, с какой скоростью проходить поворот. Таким образом, поворот на 90 градусов вызовет значительное замедление, в то время как ряд небольших углов (например, множество небольших сегментов, составляющих изогнутую поверхность) не распознается алгоритмом, и он попытается пройти кривую на полной скорости. На длинных, плавных изгибах это нормально, но высокополигональные жесткие изгибы (такие как скругленный край или органическая деталь модели) проходят слишком быстро, потому что замедление не срабатывает. Это означает, что высокополигональные модели должны печататься с гораздо более низкой скоростью подачи / целевой скоростью, потому что алгоритм ускорения не может определить, когда работать быстро или медленно. Принимая во внимание, что блочная низкополигональная модель может быть напечатана намного быстрее, а код ускорения будет ускоряться и замедляться по мере необходимости для обеспечения хорошего качества.

В первую очередь это проблемы с высокой плотностью вершин по сравнению с низкой плотностью вершин, а не с переменной плотностью. Небольшие участки с высокой детализацией обычно не создают проблем, если они достаточно малы, чтобы очередь планировщика движений (скажем, 16 сегментов) не заполнялась слишком большим количеством очень мелких движений. Несколько маленьких сегментов подряд - это нормально, но несколько десятков - нет.

Эти ограничения заложены в алгоритмы, используемые современными слайсерами и контроллерами движения. В будущем они могут оказаться не такими проблематичными.


,

Это очень хороший ответ. Меня весьма удивляет, что в S3D нет встроенного прореживания., @Tom van der Zanden

Это раздражает многих людей, особенно пользователей смузи, из-за ошибки зависания / зависания, которая может быть вызвана очень маленькими командами движения. S3D gcode необходимо очистить с помощью скрипта постпроцессора, чтобы он был надежным на Smoothieboards. Это имеет некоторый смысл в контексте, хотя, если учесть, что S3D имеет встроенный инструмент ручного прореживания сетки и очень часто используется с прошивками, такими как Sailfish, которые уже включают постпроцессоры, которые отбрасывают движения меньше, чем на один шаг двигателя., @Ryan Carlyle