Страница 1 из 1
Можно ли изменить интерфейс Axis?
Добавлено: 12 дек 2011, 19:08
Morzhovich
Можно ли изменить интерфейс Axis без компиляции заново? Т.е нужно просто поменять одни слова на другие слова, маленько подправить шрифты и убрать ненужное из меню.
Когда то я это дело уже делал, но было давно и там я все компилировал сам в дебиане на пентиум три

. Что именно и как я сделал, не помню ибо было лет 6-7 назад и больше этот вопрос не трогал т.к все работает как надо до сих пор.
Re: Можно ли изменить интерфейс Axis?
Добавлено: 12 дек 2011, 19:58
Nick
А Axis разве не на питоне написано? И что конкретнее хочешь поменять? Может это можно сделать при помощи pyvcp или ngcgui или еще какой-нибудь примочки.
Re: Можно ли изменить интерфейс Axis?
Добавлено: 12 дек 2011, 20:09
Morzhovich
Написано на питоне (впрочем не важно на чем, логика то одна для таких задач в любом языке

). Конкретнее, надо увеличить шрифты XYZ и заменить темы охлаждения на "вакуумный стол" и "пылесос" или вообще убрать.
На самом деле эти кнопки надо удалить
визуально и не использовать или же поменять смысл(т.к машинка в столярке с учениками ПТУшниками).
Re: Можно ли изменить интерфейс Axis?
Добавлено: 12 дек 2011, 20:25
Nick
Если программа на питоне, то она не компилится - питон интерпретатор. Тупо поменял код и все.
А зачем их отключать? Если пин охлаждения не подключен, то от нажатия на эти кнопки ничего не изменится. А все нужные кнопки, типо вакуумного стола вывести через pyvcp.
Re: Можно ли изменить интерфейс Axis?
Добавлено: 12 дек 2011, 20:35
Morzhovich
Ник, ты с ученичками не работал? Сразу вопросов на пол дня. "зачем?", "чотакойа?" и т.п. А еще проект починки ЧПУ надо сдать и бабос получить. Там тоже у бабосных дядь из системы образования те же вопросы.

Re: Можно ли изменить интерфейс Axis?
Добавлено: 12 дек 2011, 20:42
Nick
Morzhovich писал(а):Там тоже у бабосных дядь из системы образования те же вопросы.
Так наооброт, круто же: "Мы разработали систему, которая может работать с рядом шпинделей, как с системой автоматической подачи СОЖ, так и без нее"

"В любой момент может быть произведена модернизация или замена исполнительного устройства без дополнительных изменений в программном обеспечении."
Ищи axis py и, наверное, xml файл с его интерфейсом и три, все, что не нужно.
Re: Можно ли изменить интерфейс Axis?
Добавлено: 12 дек 2011, 20:46
Morzhovich
Nick писал(а):В любой момент может быть произведена модернизация или замена исполнительного устройства без дополнительных изменений в программном обеспечении
Тем скорее всего и закончится. Классная отмазка. =))))) но пока поищу (помнить бы где искал в прошлый раз)
Re: Можно ли изменить интерфейс Axis?
Добавлено: 12 дек 2011, 20:59
Nick
даю наводку /usr/bin/axis

Re: Можно ли изменить интерфейс Axis?
Добавлено: 12 дек 2011, 21:28
Morzhovich
Что то определения кнопок гуи я там не увидел (но я не гуру...). Хотя хотелось бы хоть удалить их. Закомментил строки отвечающие за параметр "Touch off" и Axis перестал пахать. Раскомментил и все еще не пашет. Кажется я там что то не то стер помимо "#".
PS
Кстати реконфигурация через Stepconfig не помогла, но любимый tkemc естественно пашет.
Вроде, когда я менял, в прошлом (давным давно) то менял в сырцах (там не сложно) а тут косяк какой то
скорее всего прийдется придумывать отмазки для лишних кнопок

А может перекомпилить?!

Re: Можно ли изменить интерфейс Axis?
Добавлено: 12 дек 2011, 22:42
Nick
Перестал работать скорее всего из-за того, что потом к этим кнопкам что-то обращается, например добавляется описание событий, и это описание не находит нужной ссылки на объект.
Как называется кнопка, которая нужно удалить?
Перед редактированием лучше было сделать backup

. Сейчас можешь просто взять файл из исходников.
ЗЫ Лучше не редактируй тему, а добавляй сообщение. Иначе тема не появляется в "непрочитанных сообщениях". Либо "поднимай тему" (хотя там вроде ограничение на 1 сутки). Луше просто добавляй сообщение

.
Re: Можно ли изменить интерфейс Axis?
Добавлено: 12 дек 2011, 23:06
Morzhovich
Нуда, хотя я ведь раскомменил то, что закомментил..
Nick писал(а):Как называется кнопка, которая нужно удалить?
Хотелось бы уметь удалять любую кнопку. Как добавить всегда можно разобратся

а мне нужно чтоб ничего лишнего
Re: Можно ли изменить интерфейс Axis?
Добавлено: 12 дек 2011, 23:11
Nick
Дело в том, что "любая" кнопка может удаляться по разному.
вообще нужно убрать объявдение кнопки и убрать все ссылки на нее.
Либо ... наверное ... можно попробовать сделать кнопку невидимой...
Re: Можно ли изменить интерфейс Axis?
Добавлено: 12 дек 2011, 23:31
Morzhovich
Nick писал(а):Либо ... наверное ... можно попробовать сделать кнопку невидимой...
А вот с этого места по подробней пожалуйста. Пришлось ведь сделать верхнюю панель прозрачной

Re: Можно ли изменить интерфейс Axis?
Добавлено: 12 дек 2011, 23:56
Nick
Ага, нашел, ищем объявление кнопки, что-то типа
кнопка.pack()
и после этого добавляем
кнопка.pack_forget()
А вообще в axis есть такая функция (строка 3265):
Код: Выделить всё
def forget(widget, *pins):
if os.environ.has_key("AXIS_NO_AUTOCONFIGURE"): return
if hal_present == 1 :
for p in pins:
if hal.pin_has_writer(p): return
m = widget.winfo_manager()
if m in ("grid", "pack"):
widget.tk.call(m, "forget", widget._w)
и после нее идут строчки типа:
forget(widgets.brake, "motion.spindle-brake")
...
Эта функция проверяет есть ли пины ассоциированные с кнопкой, если нет, трет кнопку с формы. Т.е. имеет смысл попробовать почистить hal от всего лишнего!
Re: Можно ли изменить интерфейс Axis?
Добавлено: 13 дек 2011, 00:02
Morzhovich
А это то дело в каком файле?!
Re: Можно ли изменить интерфейс Axis?
Добавлено: 13 дек 2011, 00:04
Nick
Это все в том же /usr/bin/axis
кстати там есть и
forget(widgets.mist, "iocontrol.0.coolant-mist")
forget(widgets.flood, "iocontrol.0.coolant-flood")
forget(widgets.lubel, "iocontrol.0.coolant-flood", "iocontrol.0.coolant-mist")
Как раз смазка и охлаждение...
Re: Можно ли изменить интерфейс Axis?
Добавлено: 13 дек 2011, 14:20
Anonymouss
>Эта функция проверяет есть ли пины ассоциированные с кнопкой, если нет, трет кнопку с формы. Т.е. имеет смысл попробовать почистить hal от всего лишнего!
таки да, проверил - добавляю в файл конфигурации ".hal" строчку
net mist iocontrol.0.coolant-mist
появляется кнопка управления охлаждением, убираю - исчезает, то есть чтоб небыло лишних кнопок нужно удалить ссылки на лишние устройства.
Хотя исходники править интереснее...