gscreen
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: gscreen
пин, я так понимаю там в скрипте где-то, а не в кнопке. отсюда и вывод, что пол скрипта перелопатить надо
а в скрипте при нажатии на эту кнопку весь этот hbox невидимым делается?
а в скрипте при нажатии на эту кнопку весь этот hbox невидимым делается?
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: gscreen
Вот тут к кнопке присоединяют "сигнал" к хоумингу:
self.widgets.button_homing.connect("clicked", self.homing)
но там блин еще куча мест, где эту кнопку включают/выключают и что только не делают...
self.widgets.button_homing.connect("clicked", self.homing)
но там блин еще куча мест, где эту кнопку включают/выключают и что только не делают...
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
да -тут активно используют две функции :Lexxa писал(а):а в скрипте при нажатии на эту кнопку весь этот hbox невидимым делается?
Код: Выделить всё
hide()
и
show()Код: Выделить всё
self.widgets.mode3.hide()- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: gscreen
Он там вот сколько раз встречается:
Код: Выделить всё
grep "button_homing" ./gscreen
self.widgets.button_homing.connect("clicked", self.homing)
self.widgets.button_homing.set_sensitive(False)
self.widgets.button_homing.set_sensitive(True)
if self.widgets.button_homing.get_active():
self.widgets.button_homing.set_sensitive(False)
self.widgets.button_homing.set_sensitive(True)
self.widgets.button_homing.set_sensitive(False)
self.widgets.button_homing.set_sensitive(True)
self.widgets.button_homing.show()
self.widgets.button_homing.set_active(False)
self.widgets.button_homing.hide()
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: gscreen
Код: Выделить всё
self.widgets.button_homing.connect("clicked", self.homing)Что занчит self?
Код: Выделить всё
def homing(self,*args):
print "show/hide homing buttons"
if self.widgets.button_homing.get_active():
for i in range(0,3):
self.widgets["mode%d"% i].hide()
self.widgets.mode3.show()
self.widgets.button_mode.set_sensitive(False)
self.widgets.button_override.set_sensitive(False)
self.widgets.button_graphics.set_sensitive(False)
else:
self.widgets.mode3.hide()
self.mode_changed(self.data.mode_order[0])
self.widgets.button_mode.set_sensitive(True)
self.widgets.button_override.set_sensitive(True)
self.widgets.button_graphics.set_sensitive(True)
сделать неактивными кнопки button_mode, button_override button_graphics
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
нет -там после условия стоит показать первый ряд (он у нас №3):Lexxa писал(а):то скрыть все виджеты режимов
Код: Выделить всё
self.widgets.mode3.show()-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
set_sensitive () эта функция (пардон-метод) делает активным-неактивным виджетLexxa писал(а):это на сколько я понял вертикальные кнопки,
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
а вообще то у меня вопрос-
если есть планы на пульт оператора-зачем эти танцы с переносами???
если есть планы на пульт оператора-зачем эти танцы с переносами???
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: gscreen
Это просто вырезка всех строк, где есть homing_button, чтобы лучше понять объем работ, это не целая часть кода!Lexxa писал(а):Давайте разжуем этот момент. Т.е. если self.widgets.button_homing.get_active = true, т.е. кнопка нажата, то скрыть все виджеты режимов, это на сколько я понял вертикальные кнопки, да? или это ряд нижний, тогда почему только три ряда кнопок скрываются, а не 4?сделать неактивными кнопки button_mode, button_override button_graphics
Да.Lexxa писал(а):т.е. при клике по кнопке button_homing вызывается функция self.homing?
self, это "сам" - ссылка на объект с которым мы работаем. Т.е.
У нас скорее всего есть объект класса
class Gscreen:
в нем есть функции, и всякие параметры.
Вот если мы хотим вызвать его функцию мы пишем ссылка_на_объект.функция()
Эта строчка находится в функции def __init__(self,inipath):
она вызывается при создании объекта
app = Gscreen(sys.argv[2])
И ей передается ссылка на созданный объект - self.
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: gscreen
пульт оператора это отдельная песня.
gscreen реальный способ уйти от мыши, т.е. впринципе всё что нужно на пульте, ну почти-почти для нормльной повседневной работы оператоу есть.
кроме того тут удобно сделана работа с файлами программ и удобно сделана привязка.
косяк автора по дизайну это то, что количество кнопок в разных режимах разное, что делает невозможным их реализацию без тачскрина при остутствии мышки.
Безусловно идеальный вариант это типа как на фануках
кнопки на панели оператора это все что я описывал в смежной теме, а всё касательно привязок, режима редактирования программ и исполнения MDI - из gscreen
nkp, я совершенно поддерживаю твой первый пост - из gscreen сделать нормальный интерфейс.
Но подчеркну, что нормаьный интерфейс это когда Пульт+Монитор+Клава
Давайте тогда действительн не будем тратить время на создание бесполезного функционала перегружая и интерфейс и описывающий его код, а обсудим то, что в итоге должно быть, а потом это реализуем исходя из требований.
Ихмо ТЗ на интерфейс такое:
Нижний ряд - 7 кнопок, правый ряд - 6 кнопок
Я уверен, для реализации всего делаемого мышкой этого вполне достаточно.
С точки зрения пассивной безопасности выезд в ноль всех осей - не есть гут, считаю, что оператору раз в день можно и пощелкать.
Всего есть 6 возможных режимов работы ЧПУ
1) Автоматический
2) MDI
3) Безразмерные ручные перемещения
4) Инкрементальные ручные перемещения
6) режим от маховичка х1 х10 х100
Давайте обсудим софтовые кнопки для каждого из режимов отдельно, учитывая, что на пульте будут кнопки
Cycle Start, Feed hold, abort, CW, CCW, SpStop, +, -, quick, селектор режимов, селектор координат, Delete block, Optional Stop, CoolanOff, т.е. в общем случае 24 сигнала + от 2 до 4 энкодеров
gscreen реальный способ уйти от мыши, т.е. впринципе всё что нужно на пульте, ну почти-почти для нормльной повседневной работы оператоу есть.
кроме того тут удобно сделана работа с файлами программ и удобно сделана привязка.
косяк автора по дизайну это то, что количество кнопок в разных режимах разное, что делает невозможным их реализацию без тачскрина при остутствии мышки.
Безусловно идеальный вариант это типа как на фануках
кнопки на панели оператора это все что я описывал в смежной теме, а всё касательно привязок, режима редактирования программ и исполнения MDI - из gscreen
nkp, я совершенно поддерживаю твой первый пост - из gscreen сделать нормальный интерфейс.
Но подчеркну, что нормаьный интерфейс это когда Пульт+Монитор+Клава
Давайте тогда действительн не будем тратить время на создание бесполезного функционала перегружая и интерфейс и описывающий его код, а обсудим то, что в итоге должно быть, а потом это реализуем исходя из требований.
Ихмо ТЗ на интерфейс такое:
Нижний ряд - 7 кнопок, правый ряд - 6 кнопок
Я уверен, для реализации всего делаемого мышкой этого вполне достаточно.
С точки зрения пассивной безопасности выезд в ноль всех осей - не есть гут, считаю, что оператору раз в день можно и пощелкать.
Всего есть 6 возможных режимов работы ЧПУ
1) Автоматический
2) MDI
3) Безразмерные ручные перемещения
4) Инкрементальные ручные перемещения
6) режим от маховичка х1 х10 х100
Давайте обсудим софтовые кнопки для каждого из режимов отдельно, учитывая, что на пульте будут кнопки
Cycle Start, Feed hold, abort, CW, CCW, SpStop, +, -, quick, селектор режимов, селектор координат, Delete block, Optional Stop, CoolanOff, т.е. в общем случае 24 сигнала + от 2 до 4 энкодеров
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: gscreen
Автоматический
Edit, Save, SaveAs, Abort, reload, full graphics, graphics со всем уже написанным функционалом, ихмо удобно
MDI
вверх по истории, вниз по истории, отработать текущую выделенную строку (дублировать с Cycle Start), Abort, Zero Origin, offset origin
Edit, Save, SaveAs, Abort, reload, full graphics, graphics со всем уже написанным функционалом, ихмо удобно
MDI
вверх по истории, вниз по истории, отработать текущую выделенную строку (дублировать с Cycle Start), Abort, Zero Origin, offset origin
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: gscreen
Безразмерные ручные перемещения и инкрементальные ручные перемещения
Set offset G5x,
Set offset G5y,
Set offset G5z
Set offset G5a
Set offset Tool X,
Set offset Tool Y,
Set offset Tool Z,
Set offset Tool A,
Abort
кстати только у меня перепутаны координаты в gscreen? типа активная ось Х, жмешь Zero Origin, а меняется координтата нуля по Y
В перемещениях от маховичка - добавить множители x1, x10, x100
Set offset G5x,
Set offset G5y,
Set offset G5z
Set offset G5a
Set offset Tool X,
Set offset Tool Y,
Set offset Tool Z,
Set offset Tool A,
Abort
кстати только у меня перепутаны координаты в gscreen? типа активная ось Х, жмешь Zero Origin, а меняется координтата нуля по Y
В перемещениях от маховичка - добавить множители x1, x10, x100
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
у меня все в нормеLexxa писал(а):кстати только у меня перепутаны координаты в gscreen? типа активная ось Х, жмешь Zero Origin, а меняется координтата нуля по Y
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: gscreen
Думаю с Никовой помощью написать по образу и подобию gscreenа можно подобную штуку)
Надеюсь , что Ник не против))
Надеюсь , что Ник не против))
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
работа эта имеет довольно размытые временные рамки - тесты ,отладка , исправленияLexxa писал(а):Думаю с Никовой помощью написать по образу и подобию gscreenа можно подобную штуку)Надеюсь , что Ник не против))
но начинать надо
а почему бы еще и автора не привлечь - мне кажеться ему могут быть интересны выкладки по теме
привлечь - в смысле обсудить направления развития
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: gscreen
Так, а что вас Gscreen не устраивает?
Давайте попробуем обойтись малой кровью
.
Давайте попробуем обойтись малой кровью
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: gscreen
В каком смысле хардовые кнопки? Как это зависит от паковки?
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: gscreen
кол-во кнопок во всех режимох должно быть неизменным.
делается металлическая панель, в ней фрезеруется отверстие для монитора, по двум сторонам, обычно правая и нижняя, монитора сверлятся отверстия под кнопки, выполняющию ф-цию, подписанную на экране.
придти к вот такому

делается металлическая панель, в ней фрезеруется отверстие для монитора, по двум сторонам, обычно правая и нижняя, монитора сверлятся отверстия под кнопки, выполняющию ф-цию, подписанную на экране.
придти к вот такому
