меня как то это не парит. я стараюсь ими не познаваться, закрываю отверстия, делаю ребра для протяжки мостов и тд. я поддержки ставлю когда мне пофигу на то что под поддержками, а с этим он нормально справляется...
утилита командной строки https://github.com/FormerLurker/ArcWelderLib/releases конвертирует g0/g1 в g2/g3
установка в prusaslicer - суем путь до файла ArcWelder в Print Settings > Output options > Post-processing script.
так же можно создать отдельный профиль и в "Output filename format" добавить префикс:
Это всего лишь навсего ускоренный ход, чтобы выйти в заданную точку без экструзии.
ну по идее при дуговом движения головка может перемещаться быстрее чем просто множество g0. так как разрешения дуги сам принтер контролирует, а не слайсер...
ну по идее при дуговом движения головка может перемещаться быстрее чем просто множество g0
G0 это не рабочая подача, это ускоренный ход, он не используется больше ни для чего, кроме как для максимально быстрого перемещения, у нее даже нет параметра F, т.к. он ей не нужен, используется максимальная скорость. А вот G1 это как раз рабочая подача с линейной интерполяцией. И вот ее действительно имеет смысл преобразовать в круговую интерполяцию если дуга обрисована прямыми отрезками.
Лично я даже не могу представить себе ситуацию, когда бы понадобилось НЕ рабочий ход G0 преобразовывать в дуги...
Лично я даже не могу представить себе ситуацию, когда бы понадобилось НЕ рабочий ход G0 преобразовывать в дуги...
есть у g0 F. g1 инструмент работает - платите деньги. g0 - перемещения происходит без работы инструмента.
тут в другом прикол, как правило g0 это просто прямая (от дочки А до точки Б), в таких движениях очень редко бывают дуги. g0 требуется преобразования в g2/g3 только когда в слайсере включены всякие условия типа "avoid crossing perimeters", только тогда это будет выполнено.
установка в prusaslicer - суем путь до файла ArcWelder в Print Settings > Output options > Post-processing script.
если добавить ключ "-z" то так же будет в режиме вазы работать.
Спойлер
Where:
-l=<NOSET|VERBOSE|DEBUG|INFO|WARNING|ERROR|CRITICAL|>,
--log-level=<NOSET|VERBOSE|DEBUG|INFO|WARNING|ERROR|CRITICAL|>
Sets console log level. Default Value: INFO
-p, --hide-progress
If supplied, prevents progress updates from being displayed.
-g, --g90-influences-extruder
If supplied, G90/G91 influences the extruder axis. Default Value: 0
-z, --allow-3d-arcs
(experimental) - If supplied, 3D arcs will be allowed (supports spiral
vase mode). Not all firmware supports this. Default Value: 0
-s=<float>, --mm-per-arc-segment=<float>
The mm per arc segment as defined in your firmware. Used to
compensate for firmware without min-arc-segments setting. Requires
that min-arc-segments be set. Default Value: 1000000.00000
-a=<int>, --min-arc-segments=<int>
The minimum number of segments in a full circle of the same radius as
any given arc. Can only be used if --mm-per-arc-segment is also set.
Used to compensate for firmware without min-arc-segments setting.
Default: 0
-m=<float>, --max-radius-mm=<float>
The maximum radius of any arc in mm. Default Value: 1000000.00000
-t=<float>, --path-tolerance-percent=<float>
This is the maximum allowable difference between the arc path and the
original toolpath. Since most slicers use interpolation when
generating arc moves, this value can be relatively high without
impacting print quality. Expressed as a decimal percent, where 0.05 =
5.0%. Default Value: 0.05000
-r=<float>, --resolution-mm=<float>
The resolution in mm of the of the output. Determines the maximum
tool path deviation allowed during conversion. Default Value: 0.05000
--, --ignore_rest
Ignores the rest of the labeled arguments following this flag.
--version
Displays version information and exits.
-h, --help
Displays usage information and exits.
<path to source gcode file>
(required) The source gcode file to convert.
<path to target gcode file>
The target gcode file containing the converted code. If this is not
supplied, the source path will be used and the source file will be
overwritten.
Вот что заметил из хорошего.
Лучше слайсит некачественные меши... т. е., если где-то в меше есть пересечение, то нормально слайсит.
Ну, по сравнению со старой Курой... С ней процесс был более итеративный и неприятный: сделал свгшный контур, импортнул его в Блендер, сделал ему бевел с заданным контуром, нарезал, если в местах пересечений хрень получилась - правь контур и начинай сначала...
RepRap "Кухня3D" - в процессе, но уже печатает...
https://3deshnik.ru/forum/viewforum.php?f=34
Лучше слайсит некачественные меши... т. е., если где-то в меше есть пересечение, то нормально слайсит.
то что cura не может исправить легко исправлял PrusaSlicer, а то что cura легко правила PrusaSlicer делал чушь. у меня так обычно было. но я все косячные модели просто кидаю на https://service.netfabb.com/. в Browse results находятся файлы которые уже обработались, можно загрузить на сервер и не ждать...
С ней процесс был более итеративный и неприятный: сделал свгшный контур, импортнул его в Блендер, сделал ему бевел с заданным контуром, нарезал, если в местах пересечений хрень получилась - правь контур и начинай сначала...
ну там есть модификатор Weld (Деструктивно M->By Distance), есть модификатор Decimate (Деструктивно X->Limited Dissolve). Select->Select All by_Trait - выделения проблемных мест (к примеру внутри mesh есть face). так же есть плагин уже в Blender - 3d printer. он показывает косяки в модели (check all), показывает где слайсер в итоге будет ставить поддержки. может исправлять косяки (Clean up>make manifold). так же желательно поставить в настройках Shading галку backface culling (что бы постоянно не тыкать face orientation)