GladeVCP и PyVCP для начинающих

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
odekolon
Мастер
Сообщения: 1103
Зарегистрирован: 05 ноя 2014, 14:53
Репутация: 360
Настоящее имя: Борис
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение odekolon »

Сергей Саныч писал(а):
odekolon писал(а):КАК сделать вкладки?
http://www.linuxcnc.org/docs/html/gui/p ... containers раздел Tabs (в самом конце)
ок, спасибо, заработало
"Капиталистом стать можно лишь тогда, когда обогатишь свою память знанием всех тех богатств, которые выработало человечество"
Аватара пользователя
odekolon
Мастер
Сообщения: 1103
Зарегистрирован: 05 ноя 2014, 14:53
Репутация: 360
Настоящее имя: Борис
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение odekolon »

добрый вечер
решил тут за выходные поковырять gladeVCP.
сразу два дурацких вопроса:
1 сказывается ли эта панель на быстродействии компа? - а то приложение для разработки, ну очень уж тормозное... а компы с линуксЦНЦ у меня слабые (максимум одноядерный атом)
2 каксделать разную ширину строк/столбцов при редактировнии таблиц?

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

Re: GladeVCP и PyVCP для начинающих

Сообщение Serg »

odekolon писал(а):1 сказывается ли эта панель на быстродействии компа? - а то приложение для разработки, ну очень уж тормозное... а компы с линуксЦНЦ у меня слабые (максимум одноядерный атом)
Отимум: 2ГГц, 2ГБ. На Athom 1.8ГГц gmoccapy работает сносно, а оно целиком на glade+python сделано.
odekolon писал(а):2 каксделать разную ширину строк/столбцов при редактировнии таблиц?
Придётся изучать GTK. :) Там очень гибкие средства управления виджетами. В принципе ничего сложного, достаточно читать про свойства конкретного виджета и тех, чьи свойства он наследует.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
odekolon
Мастер
Сообщения: 1103
Зарегистрирован: 05 ноя 2014, 14:53
Репутация: 360
Настоящее имя: Борис
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение odekolon »

UAVpilot писал(а):Придётся изучать GTK. :) Там очень гибкие средства управления виджетами.
это что? в коде придется ковыряться?
"Капиталистом стать можно лишь тогда, когда обогатишь свою память знанием всех тех богатств, которые выработало человечество"
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение Serg »

Нет, доки читать. :)
Там по неск. страниц по каждому виджету, зато всю логику работы панели можно в ней же и реализовать, а для связи оставить только необходимые входные и выходные пины.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
daiman444
Мастер
Сообщения: 304
Зарегистрирован: 18 май 2019, 15:24
Репутация: 31
Настоящее имя: Дмитрий
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение daiman444 »

UAVpilot писал(а):Нет, доки читать.
Там по неск. страниц по каждому виджету
Приветствую. Подскажите пожалуйста где эту документацию найти? Gtk.org рекомендует перейти на gnome.org а там непонятно вообще что к чему.
Панель то нарисовать не проблема, а вот это:
UAVpilot писал(а):всю логику работы панели можно в ней же и реализовать
как раз очень нужно.
Американский форум: задал вопрос — получил ответ.
Израильский форум: задал вопрос — получил вопрос.
Русский форум: задал вопрос и потом долго выслушиваешь какой ты м*дак.
https://youtube.com/channel/UCv22xgeww0FIzS9n4VrT2TA
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение Serg »

daiman444 писал(а):Приветствую. Подскажите пожалуйста где эту документацию найти? Gtk.org рекомендует перейти на gnome.org а там непонятно вообще что к чему.
Когда рисуете панель и вставляете какой-нибудь виджет, то во первых прямо в glade в соседних табах можно настроить большую часть свойств виджетов и прописать реакцию на любые события, которые виджет умеет генерить/отабатывать. У а подробности просто ищите в гугле по имени виджета.
Например виджет gtkbutton: пишем в гугл "gtkbutton gtk2 python" и первая-же ссылка даёт нужный результат: https://developer.gnome.org/pygtk/stabl ... utton.html
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
odekolon
Мастер
Сообщения: 1103
Зарегистрирован: 05 ноя 2014, 14:53
Репутация: 360
Настоящее имя: Борис
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение odekolon »

UAVpilot писал(а):odekolon писал(а):
1 сказывается ли эта панель на быстродействии компа? - а то приложение для разработки, ну очень уж тормозное... а компы с линуксЦНЦ у меня слабые (максимум одноядерный атом)
Отимум: 2ГГц, 2ГБ. На Athom 1.8ГГц gmoccapy работает сносно, а оно целиком на glade+python сделано.
Вчера поковырялся с gladeVCP, как бы основное понятно,
но учитывая вышесказанное, решил пока забросить это глэйд до "лучших времен" :(
Компы слабые (максимум атом 410 _1 гб озу, середина пень 4, минимум пень3 с 512 озу) Кстати в "свежих компах", LPT днем с огнем не сыщешь :(
Каких-то "прорывных решений" по автоматизации создания интрефейса, я не не обнаружил. А кнопочки, можно и в пайвисиспи прекрасно рисовать...
Конечно, глэйд позволяет делать интерфейс "профессионального уровня" с автоматической сменой экранов и прочими плюшками, но сил на его создание уйдет немало.
Хотелось бы, кстати, посмотреть на качественную глэйд-панель...

Лучше потрачу время на аппаратную панель к плазме c блэкджеком и шлюхами крутилками и тумблерами вместо чекбоксов.
Тем паче, что ардуина-нано, в системе все равно уже есть, а использует всего 3 ноги, а остальные скучают :hehehe:

Eдинственно, чего меня сейчас в пайвисиспи раздражает - это отсутствие "togglebutton" - чекбоксы и радиобаттоны слишком мелкие :( , хотя если уж очень прижмет, можно через хал-триггер сделать
"Капиталистом стать можно лишь тогда, когда обогатишь свою память знанием всех тех богатств, которые выработало человечество"
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение Serg »

odekolon писал(а):минимум пень3 с 512 озу
512 - это слишком мало для Linux с графикой...
odekolon писал(а):LPT днем с огнем не сыщешь
PCI плат по 500-1500 руб полно.
odekolon писал(а):Каких-то "прорывных решений" по автоматизации создания интрефейса
А их никто и не обещал. Я говорил про "прорывные возможности" интерфейса на glsdevcp. :)
odekolon писал(а):Хотелось бы, кстати, посмотреть на качественную глэйд-панель...
gmoccapy. :)
Ещё позже (сейчас пока работа приостановлена) могу показать встраиваемую панель с редактором G-кода для сварочного робота - подводишь "горелку" например к начальной точке сварки, потом к конечной, жмёшь кнопку и траектория сварки вставляется в виде G кодов... Пока могу картинку показать:
Снимок экрана от 2020-02-25 12-56-56.png (4440 просмотров) <a class='original' href='./download/file.php?id=177246&sid=405f9bb505bc6b833e7d06c1ca166d49&mode=view' target=_blank>Загрузить оригинал (152.23 КБ)</a>
Кстати для плазмы на gladevcp легко делается динамическое меню выбора параметров резки в зависимости от типа металла, толщины и т.п. Как такое реализовать на pyvcp я придумать так и не смог.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
daiman444
Мастер
Сообщения: 304
Зарегистрирован: 18 май 2019, 15:24
Репутация: 31
Настоящее имя: Дмитрий
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение daiman444 »

UAVpilot писал(а):Кстати для плазмы на gladevcp легко делается динамическое меню выбора параметров резки в зависимости от типа металла, толщины и т.п
вот над этим и работаю. пока что увы безуспешно
Американский форум: задал вопрос — получил ответ.
Израильский форум: задал вопрос — получил вопрос.
Русский форум: задал вопрос и потом долго выслушиваешь какой ты м*дак.
https://youtube.com/channel/UCv22xgeww0FIzS9n4VrT2TA
Аватара пользователя
odekolon
Мастер
Сообщения: 1103
Зарегистрирован: 05 ноя 2014, 14:53
Репутация: 360
Настоящее имя: Борис
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение odekolon »

UAVpilot писал(а): odekolon писал(а):
Хотелось бы, кстати, посмотреть на качественную глэйд-панель...
gmoccapy.
ну панель, как панель :D
слегонца поудобнее, чем axis. MDI - на отдельном экране, что бесит :hehehe:
токо не нада говорить, что в "настоящих станках"... ....
требования к интерфейсу отличаются для компьютерной системы и для станочной панели.
кстати, в вырвиглазном интерфейсе мач3 - для ввода команды MDI не нужно переключаться на другой экран...
UAVpilot писал(а):Кстати для плазмы на gladevcp легко делается динамическое меню выбора параметров резки в зависимости от типа металла, толщины и т.п. Как такое реализовать на pyvcp я придумать так и не смог.
О! а вот тут интересно!

утречком, гуляя с собакой :thinking: , придумал следующее(для пайвисипи):

-отдельный таб "выбор режима резки"
-радиобаттон "Материал"
-спинбокс "Толщина материала"
-спинбокс "Диаметр сопла"

- все загоняем в хал-компонент на питоне ( я,конечно, программист еще тот, но можно и помощи попросить)
- компонент рассчитывает(или апроксимирует по таблице) скорость/высоту прокола/высоту реза/подпрыжку/выдержкувверхнейточке/мертвую зону после прокола/желаемое напряжение дуги
- получаем эти значения от компонента
- по желанию, можно добавить корректоры в виде спинбоксов или слайдбаров
- а что делать с итоговыми значениями, и так ясно :hehehe:

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

Re: GladeVCP и PyVCP для начинающих

Сообщение Serg »

odekolon писал(а):MDI - на отдельном экране, что бесит
Это где ты такое нашёл?..
Снимок экрана от 2020-02-26 21-42-23.png (4395 просмотров) <a class='original' href='./download/file.php?id=177350&sid=405f9bb505bc6b833e7d06c1ca166d49&mode=view' target=_blank>Загрузить оригинал (137.13 КБ)</a>
Снимок экрана от 2020-02-26 21-42-38.png (4395 просмотров) <a class='original' href='./download/file.php?id=177351&sid=405f9bb505bc6b833e7d06c1ca166d49&mode=view' target=_blank>Загрузить оригинал (130.89 КБ)</a>
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
odekolon
Мастер
Сообщения: 1103
Зарегистрирован: 05 ноя 2014, 14:53
Репутация: 360
Настоящее имя: Борис
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение odekolon »

ну да, чтоб из режима jog перейти в mdi, нужно кнопочку на экране (или на клаве) нажать,
чтоб опять в jog вернуться, опять жать нада. неудобно
"Капиталистом стать можно лишь тогда, когда обогатишь свою память знанием всех тех богатств, которые выработало человечество"
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение Serg »

Может и неудобно, но безопасно для инструмента и заготовки - в режиме MDI ручные перемещения не должны работать. А то в MDI захочешь "стрелочками" выбрать команду из истории и поредактировать её, а вместо этого станок чем-нибудь ценным во что-нибудь полезное въедет...
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
odekolon
Мастер
Сообщения: 1103
Зарегистрирован: 05 ноя 2014, 14:53
Репутация: 360
Настоящее имя: Борис
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение odekolon »

Ну да, пожалуй. я об этом сильно не думал,
и тем не менее, на маче все это работает и никто особо не жалуется... :D
"Капиталистом стать можно лишь тогда, когда обогатишь свою память знанием всех тех богатств, которые выработало человечество"
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение nkp »

odekolon писал(а):Ну да, пожалуй. я об этом сильно не думал,
и тем не менее, на маче все это работает и никто особо не жалуется...
в мач стрелки на jog работают?
а выбор стрелками из истории MDI работает?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение nkp »

в мастере PyVCP панель можно спрятать как из меню,так и сочетанием Ctrl-e
изменения внести можно и в 2.7

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

--- a/axis
+++ b/axis
@@ -2328,6 +2328,17 @@
     def clear_live_plot(*ignored):
         live_plotter.clear()
 
+    def toggle_show_pyvcppanel(*event):
+        # need to toggle variable manually for keyboard shortcut
+        if len(event) > 0:
+            vars.show_pyvcppanel.set(not vars.show_pyvcppanel.get())
+
+        if vars.show_pyvcppanel.get():
+            vcp_frame.grid(row=0, column=4, rowspan=6, sticky="nw", padx=4, pady=4)
+        else:
+            vcp_frame.grid_remove()
+        o.tkRedraw()
+
     # The next three don't have 'manual_ok' because that's done in jog_on /
     # jog_off
     def jog_plus(incr=False):
@@ -2660,6 +2671,7 @@
     ("show_machine_speed", IntVar),
     ("show_distance_to_go", IntVar),
     ("dro_large_font", IntVar),
+    ("show_pyvcppanel", IntVar),
     ("show_rapids", IntVar),
     ("feedrate", IntVar),
     ("rapidrate", IntVar),
@@ -2705,6 +2717,7 @@
 vars.show_machine_speed.set(ap.getpref("show_machine_speed", True))
 vars.show_distance_to_go.set(ap.getpref("show_distance_to_go", False))
 vars.dro_large_font.set(ap.getpref("dro_large_font", False))
+vars.show_pyvcppanel.set(True)
 vars.block_delete.set(ap.getpref("block_delete", True))
 vars.optional_stop.set(ap.getpref("optional_stop", True))
 
@@ -3263,6 +3276,8 @@
         f.grid(row=0, column=4, rowspan=6, sticky="nw", padx=4, pady=4)
         vcpparse.filename = vcp
         vcpparse.create_vcp(f, comp)
+        vcp_frame = f
+        root_window.bind("<Control-e>", commands.toggle_show_pyvcppanel)
     comp.ready()
 
     gladevcp = inifile.find("DISPLAY", "GLADEVCP")

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

--- a/axis.tcl
+++ b/axis.tcl
@@ -379,6 +379,12 @@
 	-accelerator [_ "Ctrl-K"] \
 	-command clear_live_plot
 setup_menu_accel .menu.view end [_ "_Clear live plot"]
+
+.menu.view add checkbutton \
+	-variable show_pyvcppanel \
+	-accelerator [_ "Ctrl-E"] \
+	-command toggle_show_pyvcppanel
+setup_menu_accel .menu.view end [_ "Show pyVCP pan_el"]
 
 .menu.view add separator
 
файлы axis и axis.tcl юзаю из папки конфига - удобно для всяких правок
Аватара пользователя
odekolon
Мастер
Сообщения: 1103
Зарегистрирован: 05 ноя 2014, 14:53
Репутация: 360
Настоящее имя: Борис
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение odekolon »

nkp писал(а):в мастере PyVCP панель можно спрятать как из меню,так и сочетанием Ctrl-e
а зачем ее прятать? :shock:
nkp писал(а):файлы axis и axis.tcl юзаю из папки конфига - удобно для всяких правок
просветите, плииз, а то может и мне нада... :D

а вот не подскажет ли кто, можно ли TABы переключать по сигналам из хал?
"Капиталистом стать можно лишь тогда, когда обогатишь свою память знанием всех тех богатств, которые выработало человечество"
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение nkp »

по переключению вкладок посмотри здесь:
http://www.cnc-club.ru/forum/viewtopic.php?f=15&t=3991
odekolon писал(а):просветите, плииз, а то может и мне нада...
оба файла помещаем в папку конгфига
для первого в INI

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

[DISPLAY]
DISPLAY =             ./axis
для второго
в axis прописываем путь к axis.tcl

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

    nf.source_lib_tcl(root_window,"/home/nkp/git/linuxcnc/configs/ce_gtk/axis.tcl")
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: GladeVCP и PyVCP для начинающих

Сообщение nkp »

odekolon писал(а):а зачем ее прятать?
ну раз у тебя такой вопрос - значит тебе (пока) не надо)))
-------------------
как пример - вариант панели "только для какой то начальной настройки "
(недавно делал такой конфиг человеку)
Ответить

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