Gcodetools - plug-in Inkscape для экспорта в Gcode

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Nick »

Сгенерированный Gкод в EMC2 (620875 просмотров) <a class='original' href='./download/file.php?id=507&mode=view' target=_blank>Загрузить оригинал (21.99 КБ)</a>
Сгенерированный Gкод в EMC2
ТипРасширение векторного
графического редактора Inkscape
РазработчикКоманда разработчиков Gcodetools
Написана наPython
ОСКроссплатформенное программное
обеспечение (Windows, Linux,
MacOS)
Версия1.7 от 01.07.2010
ЛицензияGNU GPL
Количество загрузок7800+

Gcodetools - CAM расширение для Incscape

Gcodetools это расширение векторного редактора Inkscape, которое позволяет подготавливать и экспортировать векторную графику в Gкод.

Gcodetools и Inkscape распространяются под лицензией GNU GPL, т.е. бесплатно, в т.ч. для коммерческого использования. Обе программы кросплатформенные, есть дистрибутивы под Windows, Linux и MacOS.
Для оформления темы нам нужны скриншоты и фотографии Ваших работ, публикуйте Ваши фотографии в этой теме.
Возможности Gcodetools (для просмотра содержимого нажмите на ссылку)

Возможности новой версии Gcodetools 1.6

Экспорт в Gcode
Screqnshot.png (624117 просмотров) <a class='original' href='./download/file.php?id=123&mode=view' target=_blank>Загрузить оригинал (154.76 КБ)</a>
Gcodetools cnc обработка площади (616997 просмотров) <a class='original' href='./download/file.php?id=771&mode=view' target=_blank>Загрузить оригинал (147.75 КБ)</a>
Gcodetools cnc обработка площади
Gcodetools CAM для токарных станков с чпу (618636 просмотров) <a class='original' href='./download/file.php?id=643&mode=view' target=_blank>Загрузить оригинал (21.98 КБ)</a>
Gcodetools CAM для токарных станков с чпу
Gcodetools гравировка от Rene (618746 просмотров) <a class='original' href='./download/file.php?id=632&mode=view' target=_blank>Загрузить оригинал (233.84 КБ)</a>
Gcodetools гравировка от Rene
Bears by Durachko (589979 просмотров) <a class='original' href='./download/file.php?id=5430&mode=view' target=_blank>Загрузить оригинал (89.93 КБ)</a>
Bears by Durachko
  • Экспорт кривых в Gcode
  • Аппроксимация с использованием круговой интерполяции (G02 и G03)
  • Автоматическое разбиение кривых для достижения заданной степени точности
  • Обработка со сменой инструментов
  • Экспорт Gкода в параметрической или обычной формах
  • Добавление собственных заголовков и окончаний
  • Выбор единиц измерения
  • Многопроходная обработка
  • Автоматическое добавление цифрового суфикса к назваию сохраняемого файла
Обработка на токарном станке
  • Создание траекторий для обработки детали на токарном станке
  • Расчет чистового прохода
  • Задание заглубления при чистовом проходе
  • Задание количества чистовых проходов
  • Два различных метода вычисления чистовых проходов
  • Замена стандартных осей
Обработка площади контуров
  • Создание траекторий для обработки площади контуров
  • Возможность коррекции созданных траекторий
Гравировка фигурными фрезами
  • Создание траекторий для обработки контуров фигурной фрезой
  • Задание произвольной формы фрезы
Библиотека инструментов
  • Здание различных параметров инструмента и обработки (диаметр инструмента, скорость обработки, заглубление за проход, скорость заглубления, задание произвольного кода перед/после заглубления, форма инструмента, произвольный код смены инструмента)
  • Возможность копирования инструментов
  • Возможность обработки со сменой инструмента
Система ориентирования
  • Задание масштабирования по всем осям
  • Задание поворотов в плоскости ХY
  • Задание смещения по всем осям
  • Ориентация по произвольным точкам
Постпроцессор
  • Создание произвольной программы постпроцессора или выбор из стандартного набора
  • Масштабирование и смещение Gcode
  • Произвольная замена команд (в том числе одновременная замена)
  • Параметризация Gcode
  • Округление длинны дробной части чисел в Gкоде
Предварительная проверка рисунка
  • Выделение маленьких контуров (возможных артефактов area)
  • Проверка принадлежности инструментов
  • Проверка порядка обработки
Плоттерная резка
  • Экспорт в Gкод для плоттера с тангенциальным ножом. Четвертая ось A - угол наклона ножа.
Общие
  • Проверка наличия обновлений.

вверх
Лицензия (для просмотра содержимого нажмите на ссылку)

Лицензия

Gcodetools выпускается под лицензией GNU GPL. Эта лицензия дает Вам следующее права:
  • запуска программы, с любой целью;
  • изучения того, как программа работает, и её модификации (предварительным условием для этого является сохранение лицензии GNU GPL);
  • распространения копий;
  • улучшения программы, и выпуска улучшений в публичный доступ (предварительным условием для этого является сохранение лицензии GNU GPL).
Подробнее см здесь: http://ru.wikipedia.org/wiki/GPL
вверх
Установка (для просмотра содержимого нажмите на ссылку)

Установка

Windows
Распакуйте архив и скопируйте все файлы в каталог Program Files\Inkscape\share\extensions\
Linux
Распакуйте архив и скопируйте все файлы в каталог /home/<имя пользователя>/.config/inkscape/extensions/
или /usr/share/inkscape/extensions/ и перезапустите inkscape
вверх
Видео уроки (для просмотра содержимого нажмите на ссылку)

Видео уроки

Русский язык

Видео уроки от Steel.ne на русском языке: Gcodetools - plug-in Inkscape для экспорта в Gcode #403

Английский язык

Видео уроки от Bitviper (на форуме Fizgig) (англ.):
http://www.youtube.com/watch?v=yUTVOTDbDRI
http://www.youtube.com/watch?v=zMQplyEo9Bc
Еще один видео урок на английском:
http://www.youtube.com/watch?v=4jYKMAjzK3A
Пример использования Gcodetools за 1 минуту от Stirlingengr:
http://www.youtube.com/watch?v=aflrnD9OEvA
Использование и уроки (для просмотра содержимого нажмите на ссылку)

Использование и уроки

Документация: Gcodetools документация [В разработке] #23
Tutorial гравировке узоров от Dormouse ver 1.5b: http://kalyaev.com/2010/20100402/tut01/tut01.html
Tutorial по обработке площади контура ver 1.2: Gcodetools - plug-in Inkscape для экспорта в Gcode #10
Tutorial по созданию шестеренок ver 1.2: http://www.cnc-club.ru/forum/viewtopic. ... art=0#p154
Manual для версии 1.2 в этом посте:Gcodetools - plug-in Inkscape для экспорта в Gcode #9
Подробное описание для версии 1.1 в этом посте: http://www.cnc-club.ru/forum/viewtopic. ... rt=40#p100

Справка по пре- и пост-процессорам Gcodetools - пре- и пост-процессоры #1
Загрузить последнюю версию (для просмотра содержимого нажмите на ссылку)

Загрузить последнюю версию

Последняя стабильная версия Gcodetools 1.7
gcodetools.tar.gz
Gcodetools 1.7
(75.25 КБ) 29672 скачивания
Предыдущие версии(ver 1.6)
gcodetools-1.6.tar.gz
Gcodetools 1.6
(56.6 КБ) 9461 скачивание
(ver 1.5)
gcodetools.tar.gz
Gcodetools 1.5
(21.32 КБ) 7904 скачивания
(ver 1.4)
gcodetools.tar.gz
(14.72 КБ) 7922 скачивания
(ver 1.2)
extensions.tar.gz
(9.01 КБ) 7642 скачивания

Dev версия

Вы можете опробовать версию, находящуюся в разработке, загрузив ее с github
Через веб интерфейс: https://github.com/cnc-club/gcodetools
Или через git командой git clone git@github.com:cnc-club/gcodetools.git

Перед работой необходимо создать файлы inx путем запуска скрипта python create_inx.py
Благодарности (для просмотра содержимого нажмите на ссылку)

Благодарности

Разработчики:
  • Николай Дробченко (Nick)
  • Владимир Каляев (Dormouse)
  • Henry Nicolas (Alfcnc)
  • Chris Lusby Taylor (ChrisInNewbury)
Переводчики:
  • John Brooker (greybeard из cnczone.com)
вверх
Помощь в разработке (для просмотра содержимого нажмите на ссылку)

Помощь в разработке

На данный момент в разработке находятся:
  • Расширение для плазменной резки
  • Расширение для токарных станков
  • Расширение для плоттеров
Вы можете помочь улучшить Gcodetools создавая новые уроки и описания, давая советы, делая отчеты об ошибках, помогая разрабатывать новые функции.
Вы можете:
  • Написать отчет об использовании
  • Улучшить справку и уроки
  • Опубликовать Gкод / SVG / или программный код
  • Загрузить фото/видео готовых работ или опубликовать историю разработки
  • Написать отчет об ошибках
  • Помочь в разработке новых функций
  • Помочь в написании уроков и справки
  • Предложить новые функции
вверх
Протестировано на или системные требования (для просмотра содержимого нажмите на ссылку)

Протестировано на

Linux
Ubuntu 9.10 - Ubuntu 14.04 и далее + inkscape 0.48, inkscape 0.47, inkscape 0.46
FreeBSD 9, FreeBSD 10 + Inkscape 0.48.2.
Windows
Windows XP, Windows Vista, Windows 7 + inkscape 0.46, inkscape 0.47, inkscape 0.48
MacOS
Есть сообщения о работоспособности на MacOS.
вверх
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Nick »

Ок добавлю.... если не успею сегодня, то уже не раньше пятницы, сегодня сваливаю в Москву на металлообработку!
Аватара пользователя
bsam
Почётный участник
Почётный участник
Сообщения: 108
Зарегистрирован: 16 май 2012, 15:31
Репутация: 0
Откуда: Москва
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение bsam »

Сегодня не надо! Прочитай мой пост, код почему-то НЕ работает.
Halk 4060 Table, NCStudio 5.5.60.0
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Nick »

Это я понял, проблему решим :).
Аватара пользователя
bsam
Почётный участник
Почётный участник
Сообщения: 108
Зарегистрирован: 16 май 2012, 15:31
Репутация: 0
Откуда: Москва
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение bsam »

По мотивам моей первой работы.

Результат полностью совпадает с тем, что проектировалось. То есть в двух выделенных местах (см. рисунок), а именно: вертикальная ножка стола и горизонтальный низ стола, получились именно так, как на рисунке. Заполнение в gcodetools было Fill area, спираль.

Пожелание: хотелось бы, чтобы перепад в прямой линии был бы менее заметен.

Теоретически я представляю, что расчёт Fill area существенно усложнится (и растянется по времени), но на то он и компьютер, чтобы считать.
Вложения
Неровности прямых линий (3680 просмотров) <a class='original' href='./download/file.php?id=5687&mode=view' target=_blank>Загрузить оригинал (22.87 КБ)</a>
Неровности прямых линий
Halk 4060 Table, NCStudio 5.5.60.0
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Nick »

Решение такое: в заключении пройтись по самому контуру, тогда проблема исчезнет.
При этом лучше контуру заранее сделать offset на радиус фрезы. В будущем планирую это добавить в автоматическом режиме, когда оффсет до ума доведу...
Аватара пользователя
bsam
Почётный участник
Почётный участник
Сообщения: 108
Зарегистрирован: 16 май 2012, 15:31
Репутация: 0
Откуда: Москва
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение bsam »

Nick писал(а):Решение такое: в заключении пройтись по самому контуру, тогда проблема исчезнет.
При этом лучше контуру заранее сделать offset на радиус фрезы.
Перед выполением Fill area я сделал вытягивание <Ctrl + )>на радиус фрезы. Это тоже самое, что и offset? В установках gcodetools я видел offset только для оси Z.
Halk 4060 Table, NCStudio 5.5.60.0
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Nick »

bsam писал(а):Перед выполением Fill area я сделал вытягивание <Ctrl + )>на радиус фрезы.
Вот и если по этому отступленному контуру еще раз пройтись фрезой, то все неровности должно срезать.
Аватара пользователя
bsam
Почётный участник
Почётный участник
Сообщения: 108
Зарегистрирован: 16 май 2012, 15:31
Репутация: 0
Откуда: Москва
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение bsam »

OK, вроде понял.

Теперь такое дело. Похоже на баг-репорт. Создаю заглавную букву "O", шрифт Dejavu Serif, кегль 72 в квадрате 25х25 мм. Обрабатываю (svg файл прикреплён). Пытаюсь сделать Area fill в gcodetools. Результат на рисунках.

Тестировал на gcodetools 1.7 и -dev (версию не знаю, в самом файле, похоже, никаких ident нет), но размер 309338. Данные по системе и софту:

Код: Выделить всё

% uname -srm
FreeBSD 10.0-CURRENT i386
% pkg_info -Ix inkscape
inkscape-0.48.2_2   A program seeks to become a full featured open source SVG editor
Вложения
o-in-square.svg
Исходный файл
(28.58 КБ) 901 скачивание
Gcode -&gt; площадь -&gt; Fill area -&gt; Спираль (3659 просмотров) <a class='original' href='./download/file.php?id=5720&mode=view' target=_blank>Загрузить оригинал (12.19 КБ)</a>
Gcode -> площадь -> Fill area -> Спираль
Gcode -&gt; площадь -&gt; Fill area -&gt; Zig zag (3659 просмотров) <a class='original' href='./download/file.php?id=5721&mode=view' target=_blank>Загрузить оригинал (12.46 КБ)</a>
Gcode -> площадь -> Fill area -> Zig zag
Последний раз редактировалось bsam 06 июн 2012, 11:56, всего редактировалось 1 раз.
Halk 4060 Table, NCStudio 5.5.60.0
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Nick »

точно какой-то баг.... будем разбираться...
Аватара пользователя
bsam
Почётный участник
Почётный участник
Сообщения: 108
Зарегистрирован: 16 май 2012, 15:31
Репутация: 0
Откуда: Москва
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение bsam »

Добавил в свой баг репорт сведения о системе и софте. Nick, у тебя проблема воспроизводится?
Halk 4060 Table, NCStudio 5.5.60.0
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Nick »

Да, тоже самое...
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Serg »

Взялся за освоение этого инструмента, а по сути получается за освоение inkscape.
Возник вопрос: как управлять последовательнотью обработки?
Возьмём для примера пример с шестерёнкой - формируемый g-код режет сначала зубья, а потом внутренности. Но в реальной жизни если резать такую шестерёнку из листового материала, то при резке внутренностей заготовка окажется не закреплена. Правильней будет резать сначала внутренности, а потом внешний контур. Как этим можно управлять?
Попробовал менять очерёдность создания контуров в inkscape - не помогло.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Nick »

В inkscape надо расположить одни контуры надо другими (PageUp/PageDown или Home/End) и в парметрах Path-to-Gcode поставить do not sort paths.
В крайнем случае можно контуры по слоям раскидать.

ЗЫ какая версия?
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Serg »

Inkscape 0.48.1 r9760
gcodetools 1.7
Упростил пример до предела:
Рисуем два прямоугольника (без обводки) один внутри другого, больший опускам вниз, делаем вычитание (Ctrl--), получаем единый объект в виде прямоугольного бублика. Задача: сначала вырезать внутреннюю дырку бублика, а потом сам бублик.

Видимо я ещё не понимаю всех понятий inkscape, но это буду навёрстывать на работе, а пока рядом со станком захотелось чего-то практического. :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Nick »

Вычитание просто не делай и все. Как только делаешь вычитание контур объединяется и порядок обработки становится неконтроллируемым.

Если у тебя уже есть сложный контур, то разбить его а части можно при помощи Ctrl+Shift+K = Контур-Разбить
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Serg »

Ага, получилось. Но логичным назвать это не могу. :)

Может можно сложный контур, состоящий из нескольких замкнутых контуров упорядочивать например по граничным размерам по осям по возрастанию или по убыванию на выбор.
Возвращаясь к шестерёнке, здесь помогло-бы упорядочивание по возрастанию - более мелкие контуры по определению находятся внутри больших (ну или просто в стороне).
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Nick »

Такой дубовый способ очень много где не пройдет....
Я все думаю сделать упорядочивание изнутри наружу, но там тоже есть свои трудности... поэтому пока так.

ЗЫ Может знаешь какой-нибудь хороший алгоритм?
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Serg »

А можно пример, где не пройдёт?
Учитывается ведь не длина контура (периметр), а как-бы "размах". Т.е. у контура есть набор координат по X/Y, таким образом размах будет:
dX = max(X) - min(X)
dY = max(X) - min(X)
Сортируем по f(dX,dY). По определению контур с большим размахом не может оказаться внутри контура с меньшим, контуры не могут пересекаться (разве что касаться). Вроде должно получится.
Для попробовать можно принять f(dX,dY) как dX+dY.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Nick »

Т.е. если на пересечения нам наплевать... блин мне казалось к этому есть простой контр-пример :)...
Steel.ne
Почётный участник
Почётный участник
Сообщения: 112
Зарегистрирован: 21 апр 2012, 22:52
Репутация: 5
Контактная информация:

Re: Gcodetools - plug-in Inkscape для экспорта в Gcode

Сообщение Steel.ne »

Nick писал(а):Т.е. если на пересечения нам наплевать... блин мне казалось к этому есть простой контр-пример :)...
В контрпримерах с пересечениями уж совсем наплевать, какую первой обрабатывать.
Можно по площади (если есть быстрая функция поиска площади контура) иди уже тогда по площади описанного прямоугольника - тоже даст нормальное приближение.
Ответить

Вернуться в «LinuxCNC»