Разработка Gcodetools - плагин Inkscape для экспорта в Gкод

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.

Следующее направление разработки

Можно выбрать до 5 вариантов ответа

 
 
Результаты голосования

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

Разработка Gcodetools - плагин Inkscape для экспорта в Gкод

Сообщение Nick »

Разработка Gcodetools

Screenshot-output.ngc - AXIS-4.png (182952 просмотра) <a class='original' href='./download/file.php?id=348&mode=view' target=_blank>Загрузить оригинал (31.64 КБ)</a>
Эта ветка посвящена разработке Gcodetools, плагина для векторного редактора Inkscape, позволяющего конвертировать кривые из Inkscape в Gкод, используя круговую и линейную интерполяцию.

Описание работы, установка, помошь и уроки по плагину можно найти в теме: Gcodetools - plug-in Inkscape для экспорта в Gcode

На данный момент ведется работа над Gcodetools 1.7

Что мы хотим увидеть в новой версии:
  • Улучшение расширения для плазменной резки
  • Добавление дополнительных опций экспорта:
  • Улучшение функции обработки площади
  • Угол заглубления
  • Расширение для сверловки

Требуются

  • Тестеры
  • Разработчики
  • Помощь в технических аспектах по работе станков и обработке материалов
  • Новые идеи

Последняя версия

Исходный код находится на launchpad.net. Получить последнюю версию при помощи bazaar можно так:

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

bzr branch lp:gcodetools
Последнюю версию можно загрузить через web-интерфейс: http://bazaar.launchpad.net/~gcodetools ... lope/files

Установка

1. Загрузите последнюю ревизию, из указанных выше мест.
2. Выполните "python create_inx.py" в директории с загруженными файлами.
3. Скопируйте все созданные файлы с расширением *.inx и файл gcodetools-dev.py в каталог:
Linux: /usr/share/inkscape/extensions/ и перезапустите inkscape
Windows: Program Files\Inkscape\share\extensions\
4. Перезапустите Inkscape

Последняя версия может быть не рабочей! Для получения стабильной рабочей версии зайдите сюда Gcodetools - plug-in Inkscape для экспорта в Gcode или загрузите предыдущие ревизии.
Аватара пользователя
dormouse
Мастер
Сообщения: 334
Зарегистрирован: 27 фев 2010, 09:55
Репутация: 15
Заслуга: Developer
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение dormouse »

Очень странная нумерация у него. Я уже делал "Ревизия N54", там добавил опцию "auto_select_paths". Она в текущей ревизии N54 тоже есть :shock:
Сейчас делаю простенький туториал и добавлю файл default.svg для mm.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение Nick »

Это из-за того, что я лоханулся и сделал merge :oops: , когда у меня была ревизия 52. Базаар скинул все твои ревиззи в номера 51.1.1-51.1.3 их можно увидеть вот здесь:
http://bazaar.launchpad.net/~gcodetools ... ges/51.1.3 .
Аватара пользователя
dormouse
Мастер
Сообщения: 334
Зарегистрирован: 27 фев 2010, 09:55
Репутация: 15
Заслуга: Developer
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение dormouse »

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

http://kalyaev.com/2010/20100423/gcodetools.html - новая страничка где вкратце "всё-всё-всё" (туториалы, FAQ, e.t.c.)

gcodetools tutorial 02: Mill a spiral in 7 clicks!
http://kalyaev.com/2010/20100423/tut02/tut02.html

мелкие todo:
1. Поставить опцию "generate not parametric g-code" to TRUE by default (упростить для туториалов и для совместимости)
2. разобраться почему отваливается при "авто выборе всех контуров" в режиме p-t-g (в режиме Area - всё ок!)

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

No paths are selected! Trying to work on all available paths.
Orientation points have not been defined! A default set of orientation points have been automaticaly added.

No paths are selected! Trying to work on all available paths.

Cutting tool have not been defined! A default tool have been automaticaly added.

No paths are selected! Trying to work on all available paths.

Selection is empty! Will compute whole drawing.

Traceback (most recent call last):

  File "C:\Program Files\Inkscape\share\extensions\gcode_tools-develope.py", line 1749, in <module>
    e.affect()					
  File "C:\Program Files\Inkscape\share\extensions\inkex.py", line 207, in affect
    self.effect()
  File "C:\Program Files\Inkscape\share\extensions\gcode_tools-develope.py", line 1738, in effect
    self.path_to_gcode()		
  File "C:\Program Files\Inkscape\share\extensions\gcode_tools-develope.py", line 1082, in path_to_gcode
    biarc_group = inkex.etree.SubElement( self.selected[self.options.ids[0]].getparent(), inkex.addNS('g','svg') )
IndexError: list index out of range
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение Nick »

2. в этой строке biarc_group = inkex.etree.SubElement( self.selected[self.options.ids[0]].getparent(), inkex.addNS('g','svg') )
вместо
"self.selected[self.options.ids[0]].getparent()"
должно быть что-то вроде "self.selected_paths.keys()[0] if len(self.selected_paths.keys())>0 else self.layers[0]".
Я пишу все здесь, могут быть маленькие ошибки.

ЗЫ туториал просто супер!

PSS теперь
http://cnc-club.ru/gcodetools
http://cnc-club.ru/gcode
http://cnc-club.ru/gct переводят в англ. форум
а
http://cnc-club.ru/gcodetoolsru
http://cnc-club.ru/gcoderu
http://cnc-club.ru/gctru в русский
Аватара пользователя
dormouse
Мастер
Сообщения: 334
Зарегистрирован: 27 фев 2010, 09:55
Репутация: 15
Заслуга: Developer
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение dormouse »

Исправил, push'нул. всё ОК теперь. Прямые новые ссылки добавил на свою страницу.
Аватара пользователя
dormouse
Мастер
Сообщения: 334
Зарегистрирован: 27 фев 2010, 09:55
Репутация: 15
Заслуга: Developer
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение dormouse »

Полагаю, что название rev55=1.5 RC1 адекватно и можно в среду сделать это релизом.
в релиз включаем: 4 туториала, хелп (устаревший)?, примеры всех файлов, объединённый FAQ по Inkscape.
Я дописываю так же FAQ по gcodetools с картинками.

Что вообще мной не протестировано: работа с OR и tool =) Я серьёзно. т.е. работают ли функции формы фрезы, работает ли вообще OR, функционируют ли они "по слоям" и т.п.

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

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение Nick »

На счет тестирования, если мы напишем что и как нужно делать, то имхо у вех это будет работать одинаково. Т.к. питон за редкими исключениями (Inf nan) работает везде одинаково. Вопрос тестирования в основном состоит в разборе тех случаев, которые мы не опробывали или о которых мы не подумали.

По поводу хелпа и туториалов, в каком виде их включать? Хтмл или что-то еще?

О названии, хорошо :).
Аватара пользователя
dormouse
Мастер
Сообщения: 334
Зарегистрирован: 27 фев 2010, 09:55
Репутация: 15
Заслуга: Developer
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение dormouse »

1. Для начала - точки и запятые в десятичных числах в зависимости от локали пользователя. Т.е. поведение "2.34" перевести в float
2. Каждый туториал надо заново перепроходить и скриншотить каждую версию, т.к. в идеале на длинном туториале надо использовать всю функциональность gcodetools и при какой-то ошибке это должно вскрыться на стадии повторения. Вроде того "пофиксили" что-то, а другое отвалилось.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение Nick »

Изменил русскую версию описания:
http://www.cnc-club.ru/forum/viewtopic. ... 4&p=55#p55
Старался сделать сверстать похоже на википедию, т.к. имхо в ней материал подается очень хорошим образом.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение Nick »

Судя по тому, что в последние два дня в этой теме затишье, завтра и в правду можно делать релиз :).
Кстати, послезавтра Canonical релизят Ubuntu 10.04 Lucid Linx.

С переводом все оказалось не так просто - для перевода интерфейса похоже нужно править .mo (.po) файл inkscape, т.к. это он генерит интерфейс.

--------------------

Ревизия 56

Убрал из help-а запуск браузера. (Он сильно глючил, по крайней мере у меня, а это уже не мало :D ).
Добавил warning на запуск help-а, оттуда смекалистый пользователь сможет скопировать адрес сайта :lol: .

--------------------
По-идее, можно релизить, но перед объявлением хотелось бы еще добавить скриншотов и фотографий готовых работ.
+ Нужно придумать рекламные объявления в гугле и придумать где их показывать (поиск или сайты, если сайты, то какие?)...
Формат объявления:
123456789 123456789 12345 (25 знаков)
123456789 123456789 123456789 12345 (35 знаков)
123456789 123456789 123456789 12345 (35 знаков)
www.cnc-club.ru/gcodetools
Аватара пользователя
dormouse
Мастер
Сообщения: 334
Зарегистрирован: 27 фев 2010, 09:55
Репутация: 15
Заслуга: Developer
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение dormouse »

Я чуток отвлёкся. Ещё простой туториал с Area offset и сложный с изготовлением фланца (как раз многослойность будет использоваться и два инструмента - фреза и сверло.)
Вложения
flange.jpg (3679 просмотров) <a class='original' href='./download/file.php?id=509&mode=view' target=_blank>Загрузить оригинал (31.43 КБ)</a>
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение Nick »

Это сделано на Gcode tools ???
Wow :cheesy: :cheesy: :cheesy: !!!
Аватара пользователя
dormouse
Мастер
Сообщения: 334
Зарегистрирован: 27 фев 2010, 09:55
Репутация: 15
Заслуга: Developer
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение dormouse »

(пока) нет. Но я уже предварительно накидал. Под два инструмента - сверло и фрезу. Надо всё это прилизать, отладить и реальные фото сделать. Как раз до релиза могу успеть. В любом случае - это как раз цель слоёв с разными tool.

P.S. Ещё пару программных продуктов нашёл на Python для Blender (чтоб его в качестве CAD использовать), но за 30(!) минут не сумел нажать кнопку "ВКЛ", поскольку вообще нет туториала подобного моему "Mill spiral in 7 clicks"...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение Nick »

Еще пара под блендер, помимо того который в EMC wiki описан?
ЗЫ у блендера вообще интерфейс специфичный для 3д редактора. Когда я его в первый раз запустил вообще ничего не понял, не смог даже кубик создать, хотя имею богатый опыт работы со множеством подобных продуктов :shock: . Однако, говорят, что если привыкнуть, то понимаешь, что это самый удобный интерфейс, который можно придумать ;) .

PSS Жду фоток!!!
Аватара пользователя
dormouse
Мастер
Сообщения: 334
Зарегистрирован: 27 фев 2010, 09:55
Репутация: 15
Заслуга: Developer
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение dormouse »

Совсем забыл. Как у нас дело с "точкой" обстоит? Для DXF было так: встретили точку => делаем цикл сверления (g01 z#depth; g4 p#pause; g0 Z#safe).
Как в Inkscape дело обстоит?
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение Nick »

Не знаю :). А как в инкскейпе точку нарисовать? Можно маааааленький кружок нарисовать...
Либо нужно будет объект специальный создать - "дырка".
Аватара пользователя
dormouse
Мастер
Сообщения: 334
Зарегистрирован: 27 фев 2010, 09:55
Репутация: 15
Заслуга: Developer
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение dormouse »

вроде того. Натурального примитива такого в ps нету, отсюда, наверное и сама идея проблемно выглядит. Для DXF точки - естественная вещь.
QCAD в svg-экспорте делает так:

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

  <ellipse cx="3.04579" cy="0.801565" rx="0.01" ry="0.01" style="stroke:rgb(0,0,0);stroke-width:0.25;fill:none;"/>
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение Nick »

Я вот думаю, как бы так файлы релиза назвать, чтобы всему и всем было удобно?
  1. gcode_tools-1.5.py
    gcode_tools-1.5.inx
    фигово тем, что есть точка в названии.
  2. gcode_tools.py
    gcode_tools.inx
    фигово тем, что нельзя одновременно хранить несколько версий.
  3. gcode_tools-15.py
    gcode_tools-15.inx
    фигово тем, что нет точки.
  4. gcode_tools-1_5.py
    gcode_tools-1_5.inx
    фигово тем, что не красиво.
  5. gcode_tools-1-5.py
    gcode_tools-1-5.inx
    фигово тем, что не красиво.
------------
Наверное, первый вариант лучше всего, несмотря на точку.

------------
Как отпочковать новую версию? Нужно наверное в базаре создать новую ветку и переназначить lp:gcodetools на нее?
Аватара пользователя
dormouse
Мастер
Сообщения: 334
Зарегистрирован: 27 фев 2010, 09:55
Репутация: 15
Заслуга: Developer
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение dormouse »

1. заменить название на "gcodetools", т.к. оно мне лично нравится больше (чтобы убрать "GCODE tools", "Gcode Tools", "gcode_tools"):D
2. файлы всегда иметь как "gcodetools.py" и "gcodetools-dev.py" (Вариант 2)
3. сделать ссылку на них как http://cnc-club.ru/gcodetools, http://cnc-club.ru/gcodetools-dev, которая будет скачивать файлы вида "gcodetools-r128.zip" "gcodetools-dev-r128.zip" (.tar.gz может не работают под виндой штатно? ), имена версии в самих файлах .py, .inx не использовать.
4. отпочковывать новую версию можно. Ревизию тогда придётся начинать с 1 и архивы именовать как "gcodetools-1.5-r1.zip"
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Разработка Gcode tools - плагин Inkscape для экспорта в

Сообщение Nick »

dormouse писал(а):1. заменить название на "gcodetools", т.к. оно мне лично нравится больше (чтобы убрать "GCODE tools", "Gcode Tools", "gcode_tools"):D
2. файлы всегда иметь как "gcodetools.py" и "gcodetools-dev.py" (Вариант 2)
3. сделать ссылку на них как http://cnc-club.ru/gcodetools, http://cnc-club.ru/gcodetools-dev, которая будет скачивать файлы вида "gcodetools-r128.zip" "gcodetools-dev-r128.zip" (.tar.gz может не работают под виндой штатно? ), имена версии в самих файлах .py, .inx не использовать.
4. отпочковывать новую версию можно. Ревизию тогда придётся начинать с 1 и архивы именовать как "gcodetools-1.5-r1.zip"
1. Имхо правильнее писать с большой буквы, все меню в Inkscape с большой, а gcodetools с маленькой будет? В два слова, оно лучше читается. Т.е. названия файлов можно сделать в одно слово, но в меню нужно в два.
2. Тут есть "заковыка", когда мы будем разрабатывать плагин дальше, нам все равно придется поддерживать предыдущие версии. Соответственно придется их иметь установленными, а это не получится сделать без внесения изменений в файлы, что не есть хорошо. Я уже сталкивался с этой проблемой в предыдущих версиях.
3. Зачем такая простая ссылка на скачивание?
4. "можно", а как можно еще? И как лучше?
Ответить

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