Страница 23 из 39
Разработка Gcodetools - плагин Inkscape для экспорта в Gкод
Добавлено: 07 дек 2009, 11:39
Nick
Разработка Gcodetools
Эта ветка посвящена разработке
Gcodetools, плагина для векторного редактора
Inkscape, позволяющего конвертировать кривые из Inkscape в Gкод, используя круговую и линейную интерполяцию.
Описание работы, установка, помошь и уроки по плагину можно найти в теме:
Gcodetools - plug-in Inkscape для экспорта в Gcode
На данный момент ведется работа над Gcodetools 1.7
Что мы хотим увидеть в новой версии:
- Улучшение расширения для плазменной резки
- Добавление дополнительных опций экспорта:
- Улучшение функции обработки площади
- Угол заглубления
- Расширение для сверловки
Требуются
- Тестеры
- Разработчики
- Помощь в технических аспектах по работе станков и обработке материалов
- Новые идеи
Последняя версия
Исходный код находится на launchpad.net. Получить последнюю версию при помощи bazaar можно так:
Последнюю версию можно загрузить через 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 или загрузите предыдущие ревизии.
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 23 апр 2010, 12:14
dormouse
Очень странная нумерация у него. Я уже делал "Ревизия N54", там добавил опцию "auto_select_paths". Она в текущей ревизии N54 тоже есть
Сейчас делаю простенький туториал и добавлю файл default.svg для mm.
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 23 апр 2010, 12:22
Nick
Это из-за того, что я лоханулся и сделал merge

, когда у меня была ревизия 52. Базаар скинул все твои ревиззи в номера 51.1.1-51.1.3 их можно увидеть вот здесь:
http://bazaar.launchpad.net/~gcodetools ... ges/51.1.3 .
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 23 апр 2010, 12:33
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
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 24 апр 2010, 00:31
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 в русский
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 24 апр 2010, 10:24
dormouse
Исправил, push'нул. всё ОК теперь. Прямые новые ссылки добавил на свою страницу.
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 25 апр 2010, 16:38
dormouse
Полагаю, что название rev55=1.5 RC1 адекватно и можно в среду сделать это релизом.
в релиз включаем: 4 туториала, хелп (устаревший)?, примеры всех файлов, объединённый FAQ по Inkscape.
Я дописываю так же FAQ по gcodetools с картинками.
Что вообще мной не протестировано: работа с OR и tool =) Я серьёзно. т.е. работают ли функции формы фрезы, работает ли вообще OR, функционируют ли они "по слоям" и т.п.
Предполагаю написать "Эталонную методику тестирования" - т.е. рецепт для бета-тестеров "как проверять очередную версию" (т.е. тот же туториал где сравниваем с указанным в нём результате свой).
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 26 апр 2010, 08:56
Nick
На счет тестирования, если мы напишем что и как нужно делать, то имхо у вех это будет работать одинаково. Т.к. питон за редкими исключениями (Inf nan) работает везде одинаково. Вопрос тестирования в основном состоит в разборе тех случаев, которые мы не опробывали или о которых мы не подумали.
По поводу хелпа и туториалов, в каком виде их включать? Хтмл или что-то еще?
О названии, хорошо

.
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 26 апр 2010, 10:08
dormouse
1. Для начала - точки и запятые в десятичных числах в зависимости от локали пользователя. Т.е. поведение "2.34" перевести в float
2. Каждый туториал надо заново перепроходить и скриншотить каждую версию, т.к. в идеале на длинном туториале надо использовать всю функциональность gcodetools и при какой-то ошибке это должно вскрыться на стадии повторения. Вроде того "пофиксили" что-то, а другое отвалилось.
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 26 апр 2010, 18:39
Nick
Изменил русскую версию описания:
http://www.cnc-club.ru/forum/viewtopic. ... 4&p=55#p55
Старался сделать сверстать похоже на википедию, т.к. имхо в ней материал подается очень хорошим образом.
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 27 апр 2010, 13:24
Nick
Судя по тому, что в последние два дня в этой теме затишье, завтра и в правду можно делать релиз

.
Кстати, послезавтра Canonical релизят Ubuntu 10.04 Lucid Linx.
С переводом все оказалось не так просто - для перевода интерфейса похоже нужно править .mo (.po) файл inkscape, т.к. это он генерит интерфейс.
--------------------
Ревизия 56
Убрал из help-а запуск браузера. (Он сильно глючил, по крайней мере у меня, а это уже не мало

).
Добавил warning на запуск help-а, оттуда смекалистый пользователь сможет скопировать адрес сайта

.
--------------------
По-идее, можно релизить, но перед объявлением хотелось бы еще добавить скриншотов и фотографий готовых работ.
+ Нужно придумать рекламные объявления в гугле и придумать где их показывать (поиск или сайты, если сайты, то какие?)...
Формат объявления:
123456789 123456789 12345 (25 знаков)
123456789 123456789 123456789 12345
(35 знаков)
123456789 123456789 123456789 12345
(35 знаков)
www.cnc-club.ru/gcodetools
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 27 апр 2010, 16:43
dormouse
Я чуток отвлёкся. Ещё простой туториал с Area offset и сложный с изготовлением фланца (как раз многослойность будет использоваться и два инструмента - фреза и сверло.)
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 27 апр 2010, 16:48
Nick
Это сделано на Gcode tools ???
Wow

!!!
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 27 апр 2010, 16:55
dormouse
(пока) нет. Но я уже предварительно накидал. Под два инструмента - сверло и фрезу. Надо всё это прилизать, отладить и реальные фото сделать. Как раз до релиза могу успеть. В любом случае - это как раз цель слоёв с разными tool.
P.S. Ещё пару программных продуктов нашёл на Python для Blender (чтоб его в качестве CAD использовать), но за 30(!) минут не сумел нажать кнопку "ВКЛ", поскольку вообще нет туториала подобного моему "Mill spiral in 7 clicks"...
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 27 апр 2010, 19:00
Nick
Еще пара под блендер, помимо того который в EMC wiki описан?
ЗЫ у блендера вообще интерфейс специфичный для 3д редактора. Когда я его в первый раз запустил вообще ничего не понял, не смог даже кубик создать, хотя имею богатый опыт работы со множеством подобных продуктов

. Однако, говорят, что если привыкнуть, то понимаешь, что это самый удобный интерфейс, который можно придумать

.
PSS Жду фоток!!!
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 28 апр 2010, 08:48
dormouse
Совсем забыл. Как у нас дело с "точкой" обстоит? Для DXF было так: встретили точку => делаем цикл сверления (g01 z#depth; g4 p#pause; g0 Z#safe).
Как в Inkscape дело обстоит?
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 28 апр 2010, 09:01
Nick
Не знаю

. А как в инкскейпе точку нарисовать? Можно маааааленький кружок нарисовать...
Либо нужно будет объект специальный создать - "дырка".
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 28 апр 2010, 09:30
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;"/>
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 28 апр 2010, 13:10
Nick
Я вот думаю, как бы так файлы релиза назвать, чтобы всему и всем было удобно?
- gcode_tools-1.5.py
gcode_tools-1.5.inx
фигово тем, что есть точка в названии.
- gcode_tools.py
gcode_tools.inx
фигово тем, что нельзя одновременно хранить несколько версий.
- gcode_tools-15.py
gcode_tools-15.inx
фигово тем, что нет точки.
- gcode_tools-1_5.py
gcode_tools-1_5.inx
фигово тем, что не красиво.
- gcode_tools-1-5.py
gcode_tools-1-5.inx
фигово тем, что не красиво.
------------
Наверное, первый вариант лучше всего, несмотря на точку.
------------
Как отпочковать новую версию? Нужно наверное в базаре создать новую ветку и переназначить lp:gcodetools на нее?
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 28 апр 2010, 14:36
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"
Re: Разработка Gcode tools - плагин Inkscape для экспорта в
Добавлено: 28 апр 2010, 15:43
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. "можно", а как можно еще? И как лучше?