Модель круглая, а на печати — многогранник: цилиндр в гайках, «шестигранное» отверстие, ступенчатая галтель. Первая мысль — принтер плохой или слайсер кривой. Почти всегда дело не в них: грани появились ещё при экспорте, задолго до печати, и печатается ровно то, что вы отдали.
Разбираем, откуда берутся грани, каким числом они задаются, какие настройки крутить в КОМПАСе, SolidWorks и Fusion и когда гранёность вообще не важна.
Откуда берутся грани
В CAD цилиндр — это уравнение поверхности: ось, радиус, границы. Круг там идеальный, у него нет ни одной грани. Но формат STL, который вы отдаёте слайсеру, уравнений не умеет — в нём только треугольники. При экспорте CAD обязан заменить гладкую поверхность многогранником, и вопрос лишь в том, насколько мелким.
Управляет этим не «качество: высокое/низкое», а конкретная величина — хордовое отклонение (chord height, «отклонение от поверхности»): максимальный зазор между настоящей дугой и заменившей её прямой хордой. Рядом обычно стоит второй параметр — угловое отклонение, ограничивающее излом между соседними треугольниками.
Сколько это в миллиметрах
Величина считается точно, и её полезно один раз увидеть числами. Для круга радиуса R, разбитого на N сегментов, отклонение равно R · (1 − cos(180°/N)):
| Диаметр | 24 сегмента | 48 сегментов | 96 сегментов | 180 сегментов |
|---|---|---|---|---|
| Ø10 | 0,043 мм | 0,011 мм | 0,003 мм | 0,001 мм |
| Ø50 | 0,214 мм | 0,054 мм | 0,013 мм | 0,004 мм |
| Ø100 | 0,428 мм | 0,107 мм | 0,027 мм | 0,008 мм |
Отсюда видно главное: гранёность зависит от диаметра. Одна и та же настройка «побольше треугольников» на Ø10 даёт незаметные сотки, а на Ø100 — почти полмиллиметра, и это уже видно и пальцем, и штангенциркулем. Поэтому настройка «число сегментов на окружность» хуже, чем настройка «отклонение в миллиметрах»: первая не знает про размер детали, вторая знает.
Обратный счёт, если хочется держать конкретный допуск: чтобы уложиться в 0,01 мм, кругу Ø10 хватит 50 сегментов, Ø50 нужно уже 112, а Ø100 — 158.
Какое отклонение ставить
Ориентир простой: отклонение должно быть меньше того, что вы собираетесь мерить, и заметно меньше разрешения самой печати.
- 0,05 мм — годится для корпусов, кожухов, декоративных деталей. Грань на глаз не видна, файл лёгкий.
- 0,01–0,02 мм — для посадочных мест, отверстий под подшипник и втулку, резьбы. Здесь гранёность начинает влиять на реальный зазор.
- Меньше 0,005 мм — почти всегда бессмысленно: сопло 0,4 мм и слой 0,2 мм такую разницу не воспроизведут, а файл распухает и слайсер тормозит.
Угловое отклонение обычно оставляют 5–10°: оно спасает мелкие галтели и скругления, где хордовый критерий один даёт слишком грубую сетку.
Где эта настройка лежит
- КОМПАС-3D. При сохранении в STL — кнопка настроек в диалоге сохранения: точность аппроксимации и максимальное отклонение. Ползунок «грубо/точно» — это оно и есть; при ответственных размерах лучше переключиться на числовой ввод.
- SolidWorks. Сохранить как STL → «Параметры»: разрешение Custom, ползунки Deviation (отклонение) и Angle (угол). Preview показывает получившуюся сетку до сохранения — им стоит пользоваться.
- Fusion 360. При экспорте в STL — Refinement: Low / Medium / High и режим Custom с полями Surface Deviation и Normal Deviation.
- FreeCAD. В настройках Mesh — Surface deviation и Angular deviation при сеточной триангуляции.
Если модель пришла к вам уже в STL, отклонение назад не отыгрывается: треугольники стали данными, гладкой поверхности за ними больше нет. Пересохранить нужно из исходной CAD-модели. Про границы обратного пути — как конвертировать STL в STEP.
Не отдавайте STL, если можно не отдавать
Самый надёжный способ не иметь проблемы с гранями — не создавать её. Многие слайсеры (PrusaSlicer, Orca, Bambu Studio, Cura с плагином) принимают 3MF и STEP. При импорте STEP слайсер сам триангулирует поверхность и делает это по своим настройкам — обычно мельче, чем ползунок «среднее» в CAD.
У 3MF есть и второй плюс: он несёт единицы, ориентацию и настройки печати одним файлом, а не полагается на договорённость «у нас всё в миллиметрах» (про эту ловушку — единицы в STEP).
Когда гранёность вам не мешает
Отдельно стоит сказать, чего не надо чинить. Гранёность — геометрическая величина, а на печати есть эффекты крупнее неё:
- ширина экструзии. Сопло 0,4 мм кладёт нитку конечной ширины; отверстие Ø5 почти всегда выходит меньше номинала на 0,1–0,3 мм — это на порядок больше, чем 0,01 мм гранёности;
- усадка материала. У ABS и нейлона она измеряется процентами и полностью перекрывает вопрос сегментов;
- слоистость по вертикали. Наклонная поверхность «лесенкой» — это высота слоя, а не триангуляция, и лечится она ориентацией детали, а не экспортом.
Поэтому порядок действий такой: сначала поставьте вменяемое отклонение (0,01–0,05 мм), а дальше занимайтесь допусками печати и подготовкой в слайсере — там лежит основная точность.
Как проверить за минуту
- Откройте STL во вьювере и посмотрите на самый крупный цилиндр детали — гранёность видна именно на нём, а не на мелких отверстиях. Чем открыть — здесь.
- Померьте диаметр по граням и по вершинам. Разница между вписанным и описанным диаметром — это удвоенное отклонение.
- Посмотрите на вес файла. Деталь средней сложности в 300 КБ — нормально, 50 КБ — сетка слишком грубая, 80 МБ — вы переусердствовали и слайсер будет думать минутами.
Коротко
- Грани появляются при экспорте в STL, а не при печати.
- Управляет ими хордовое отклонение в миллиметрах, а не абстрактное «качество».
- Одна и та же настройка на Ø10 и Ø100 даёт разный результат — величину надо задавать в миллиметрах, а не в сегментах.
- Рабочий диапазон 0,01–0,05 мм; мельче 0,005 мм принтер уже не покажет.
- Лучше вообще отдать слайсеру 3MF или STEP и не решать этот вопрос.
В каком формате сохранять модель, чтобы круг был без граней?
Полностью без граней — только в форматах с точной геометрией: STEP или 3MF (если слайсер их принимает). В STL круг всегда многоугольник, вопрос лишь в мелкости: ставьте отклонение 0,01–0,05 мм, и грани перестанут быть видны.
Сколько сегментов нужно на окружность?
Зависит от диаметра. Чтобы удержать 0,01 мм, кругу Ø10 хватит 50 сегментов, Ø50 нужно 112, Ø100 — 158. Поэтому правильнее задавать не число сегментов, а отклонение в миллиметрах: тогда CAD сам подберёт число под каждый диаметр.
Можно ли убрать грани из уже готового STL?
Полноценно — нет: гладкой поверхности в файле больше нет, есть треугольники. Сглаживание сетки скруглит форму, но не вернёт точный диаметр. Правильный путь — пересохранить из исходной CAD-модели; про границы обратного преобразования — STL в STEP.
Почему отверстие печатается меньше, чем в модели?
Это уже не про грани. Причины — ширина экструзии, усадка материала и «эффект слона» на первых слоях; на Ø5 суммарно 0,1–0,3 мм. Гранёность при разумной настройке даёт сотые доли. Компенсация зазоров разобрана в статье про допуски FFF-печати.
Не лучше ли просто поставить максимальное качество?
Обычно нет. Отклонение мельче 0,005 мм принтер не воспроизведёт, а файл вырастает в десятки раз: слайсер дольше режет, вьювер тормозит, сетку тяжелее чинить. Разумный компромисс — 0,01–0,02 мм для посадочных мест и 0,05 мм для всего остального.