Перейти к публикации

Невидимость операций


Komsomolec

Рекомендованные сообщения

Уважаемые форумчане. С NX знаком около года, пишу дипломную работу связанную с автоматизацией построения определенных деталей (представляет из себя dll модуль, написанный на языке C). Столкнулся со следующей проблемой - при построении некоторых сложных тел, пользователю видно как происходят некоторые операции: вытягивание, добавление, копирование... отдельных частей. Эти операции нужно как то скрыть от его глаз, чтобы он ввел параметры, нажал на кнопку "Построить", и через несколько секунд увидел уже готовый результат.

Как я понял функция UF_OBJ_set_blank_status(tag_t object_id, int blank_status) позволяет сделать невидимыми только такие объекты как кривые, поверхности...но не твердые тела. Так же пробовал программно устанавливать видимость слоев при помощи функции UF_LAYER_set_status (const int layer_number, const int layer_status ) а потом перемещать объекты на этот слой. Однако успехов это не принесло.

Если кто сталкивался с данной проблемой, подскажите что можно сделать?

Ссылка на сообщение
Поделиться на других сайтах


Уважаемые форумчане. С NX знаком около года, пишу дипломную работу связанную с автоматизацией построения определенных деталей (представляет из себя dll модуль, написанный на языке C). Столкнулся со следующей проблемой - при построении некоторых сложных тел, пользователю видно как происходят некоторые операции: вытягивание, добавление, копирование... отдельных частей. Эти операции нужно как то скрыть от его глаз, чтобы он ввел параметры, нажал на кнопку "Построить", и через несколько секунд увидел уже готовый результат.

Как я понял функция UF_OBJ_set_blank_status(tag_t object_id, int blank_status) позволяет сделать невидимыми только такие объекты как кривые, поверхности...но не твердые тела. Так же пробовал программно устанавливать видимость слоев при помощи функции UF_LAYER_set_status (const int layer_number, const int layer_status ) а потом перемещать объекты на этот слой. Однако успехов это не принесло.

Если кто сталкивался с данной проблемой, подскажите что можно сделать?

Посмотри такую функцию UF_DISP_ask_display

Она блокирует вывод на экран

Будь очень аккуратен с случае ошибки

Экран должен быть разблокирован обратно при любом исходе выполнения Твоей программы

Например в конструкторе объекта обработчика ошибок могло бы быть следующее

UF_DISP_ask_display(&display_code);

  UF_DISP_set_display(UF_DISP_UNSUPPRESS_DISPLAY);

  if(display_code == UF_DISP_SUPPRESS_DISPLAY) UF_DISP_regenerate_display();
Ссылка на сообщение
Поделиться на других сайтах

Посмотри такую функцию UF_DISP_ask_display

Огромное спасибо, действительно помогло. Я как то и не додумался поискать функции в библиотеке <uf_disp.h> Правда при регенерации дисплея на время пропадают уже построенные объекты, но видать так и должно быть :)
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.



  • Сообщения

    • A_1
      Да, есть опасность столкновения с высокой заготовкой - приспособлением. В программе смены инструмента два варианта её выполнения, и предполагаю, что это связано с проверкой того, что в шпинделе может находиться вызываемый инструмент. Почему всегда выполняется переход на кадр N200?
    • gudstartup
      а в чем опасность если ось Z в метре над столом меняет что там рука чего заденет? а так запишите в пар 1241 желаемые координаты и перемещайтесь туда после Z
    • A_1
      Здравствуйте. Станок фрезерный Solex VM_1150S. Как сделать, чтобы при смене в шпинделе на новый инструмент он перемещался по X в безопасную позицию, а при вызове инструмента, находящегося в шпинделе это перемещение по X не выполнял? Сейчас, в случае смены нового инструмента, а также вызова текущего происходит только перемещение по Z. Программа смены инструмента: % O9001  #3=#4003 M71  IF[#1000EQ1]GOTO100  IF[#1001EQ1]GOTO200  G91G30Z0 G30X0Y0  N200G91G30Z0 M28  M06  G#3  N100 M99  %  
    • fantom.ul
    • IGor2D
      По итогу...: По гарантии приехали и поправили только точность реза, остальное не смогли исправить, нужен инженер с HSG. Глючный однако китаец, пытается сам себя сломать.
    • Gmv
      По кнопке FTP стойка имеет 6 страниц для трех разных хостов. Где можно указать IP , имя, пароль 1страница. каталог 2 страница. Больше настроек не нашел.
    • gudstartup
      на фануке настраиваете доступ по ftp на соответствующей вкладке  и также расшариваете папку  вашим сервером и все прекрасно работает.
    • gudstartup
      симулятор предполагает взаимодействие как с чпу так и со станком посредством другой plc программы иначе вам придется самому управлять входами и выходами а это непросто.    
    • Gmv
      У кого есть опыт организации FTP именно на станке? Стойка 0i-MF plus   Сейчас пока сервер настроен на компе, и то не до конца. файлы видны, извлечь их или скопировать в память станка не выходит. Но операторы уже сразу возмущены,  им проще бегать с USB флешкой и нажимать одну кнопку, чем прыгать по папкам. На хаасе это реализовано классно, он создает сетевой диск и полный доступ и со стойки с пк. Хотелось бы подобного.
    • Guhl
      Я нормально проекты писал и отлаживал на эмуляторе Балт-Систем На Heidenhain, насколько я понял, работает симулятор с их сайта в связке с PLC design @gudstartup пользовался этим вот в этой ветке
×
×
  • Создать...