LINUX.ORG.RU

Генерация файлов для лазерной резки

 ,


0

2

Здравствуйте! Заказчик очень хочет сделать генерацию файлов для лазерной резки в автоматическом режиме. То есть у нас png (можно перейти на svg). Из них нужно делать файлы для лазерного резчика. Примерные требования для финальных файлов. 1. Масштаб 1:1 (размеры в мм есть) 2. плоское 2D-представление. 3. Замкнутые линии (или кривые). 4. Один из форматов CDR, DXF или DWG. Проблема в том, как переводить из png (svg) в эти CDR, DXF или DWG. Пока вижу два варианта решения задачи. Первый, это использовать какую-нибудь библиотеку для ЯП. Сейчас основная часть написана на Python (из-за OpenCV). Второй, это использовать какую-то утилиту и запускать с нужными параметрами при генерации файла. Но на просторах интернета встретил множество возгласов, что различные способы портят модель. То некоторые точки не переносит, то не даёт уверенности в результате то еще что-то. Хотелось бы спросить опыта или возможно каких-то мыслей по этому поводу. Как лучше генерировать файл для лазерной резки? Примерный вид png файла http://i9.pixs.ru/storage/8/6/2/examplepng_9955250_21077862.png Резать будут из оргстекла. Всего около 50 вариантов файлов, но при каждой генерации нужно менять размер и пропорции (ширина/высота). Может, возможно в ручном режиме сделать заготовки? Как бы Вы решали такую задачу? К сожалению, мир моделирования для меня далёк. Спасибо!

Насколько я понимаю, на сегодняшний день наиболее открытым и поддерживаемым из этих трёх форматов является DXF. Из CDR, например, пока только читать научились.

Так как PNG — это растровый формат, то тебе нужен годный трассировщик. Вариантов не так много: Potrace (очень хороший, встроен в Инкскейп) и Autotrace (этим я не пользовался).

Potrace можно установить отдельно от Инкскейпа. Список поддерживаемых им форматов векторки: EPS, PostScript, PDF, SVG, DXF, GeoJSON, PGM, Gimppath, XFig.

Если же твой исходник будет в SVG, то тут, думаю, лучшим вариантом будет pstoedit. На входе у него может быть PS или PDF, а на выходе очень много разных форматов, включая DXF. Получить PDF или PS из SVG помогут Инкскейп, librsvg или cairosvg.

Вообще, самый универсальный формат — PDF. Корел, например, его отлично понимает, а вот инкскейповкий SVG не всегда.

https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Other_2D_formats

Про уверенность в результате всё правильно понял. Её не может быть. Хотя с такими файлами Potrace легко справится:

convert  examplepng_9955250_21077862.png input.bmp
potrace -b pdf input.bmp

Итоговый PDF, открытый в Инкскейпе. DXF не открылся, почему-то. В Potrace можно указывать разрешение, высоту, ширину, масштаб, поворот.

Ещё можно спеца по графике спросить — AP, он точно лучше меня знает.

anonymous ()

Если тебе нужно процедурное генерирование, каждый раз под новые размеры - то тут надо решить, что быстрее, ручками или программировать? У меня был заказ под фрезер, тысячи деталей, однотипные, но каждая уникальна по размерам, каждая с двумя-тремя перестановками в уникальном месте. Я написал шаблон в Либреофисе и генерировал G-code прямо в нём. Но заипался, Хотя по времени вышло намного быстрее чем вручную в солиде рисовать. Тебе решать, кодить или модифицировать шаблон.

В принципе, тут правильно напомнили про OpenSCAD, для таких штук он хорош. Однако можно покопаться и во FrreeCAD, там тоже напитонить можно. Если хотите некоторой автоматизации - этикады для вас.

Про Инккскейп и его трассировщики - всё правильно, если тебе просто векторизировать файл, экспортнуть в DXF, хоть даже из скрипта, самое оно, Инкскейпом можно и подготовить программу для плоттера и эккспортнуть хоть в gcode, хоть в hpgl, ещё чего-то, всё классно. Но процедурное черчение... Не, Инкскейп не для этого.

Deleted ()
Ответ на: комментарий от anonymous

Огромное спасибо! То что нужно!

В итоге как Вы и сказали, png -> bmp -> pdf (тут задаю размеры) -> dxf

Если из bmp сразу в dxf, то да, не открывается.

erlVasya ()
Ответ на: комментарий от erlVasya

Рад помочь :)

Если из bmp сразу в dxf, то да, не открывается.

Странно, конечно. Я думал, что это только у меня так.

Попробовал сейчас в блендере открыть. Он ругнулся на старую версию формата. Я вручную поменял в файле «AC1006» на «AC1009» на десятой строке и о, чудо, всё прекрасно открылось! Может у тебя тот же случай?

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.