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

Создание и удаление меню в Ug


apilikov

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

Уважаемые коллеги.

Вопрос состоит в следующем. Подскажите кто знает есть ли в юниграфиксе возможность создания и удаления своих собственных пунктов меню таких как file->open и др. не прерывая работу системы. Т.е. чтобы я мог в моем приложении тогда когда я хочу создать меню а потом например его удалить.

Заранее благодарю.

Анатолий.

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


Добавить кое-что можно на ходу

Смотри например в UGOPEN функции

UF_UI_create_toolbar

UF_UI_create_usertool

А удалить без перегрузки UG никак нельзя

Лучше напиши для чего это надо

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

Наша фирма занимается разработкой COM-компонента, который мог бы предоставлять унифицированный API для работы с КАД-системами. естественно он также должен работать и с юниграфиксом. И одной из функций этого COM-компонента является добавление и удаление меню в юниграфиксе не перегружая его а прямо по ходу работы. Поэтому мне прежде чем лезть по уши в UGOPEN хотелось бы понять возможно ли это в принципе.

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

Меню править можно

Их конфигурация определяется текстовыми файлами с расширением *.men

В действие они вступают только после перегрузки UG

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

Дело в том что когда пользователь захочет создать меню я не знаю а в документации по UGOPEN у меня сложилось впечатление что вызовы по созданию меню юниграфикс принимает только из фукнции ufsta. Когда я решал подобную задачу для проинженера то там тоже приходилось кодом создавать меню файлы, но добавлять меню можно было когда угодно и в любое время. Я пока так и не понял можно ли делать также в юниграфиксе или нет.

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

То что касается ufsta то эта точка входа используется в dll которые лежат в подкаталоге

startup

то есть запускаются в момент старта UG обычно их используют для регистрации UDO

(User define object)

То что касается вызова функций

UF_UI_create_toolbar

UF_UI_create_usertool

то насколько я понял из документации вызывать их можно когда угодно

Из документации правда не очень понятно должен ли существовать файл *.tbr для UF_UI_create_toolbar

на момент старта UG

UF_UI_create_toolbar - устанавливает видимость toolbar меню

Это видимо придется проверять экспериментально

По поводу падающих меню которые кодируются в файлах *.men

то Тебе придется перегружать UG

Пример работы может быть такой

1) Ты программно генеришь текстовые файлы и кладешь их куда надо

2) Выводишь пользователю сообщение что для того чтобы изменения в меню вступили в силу

необходимо перегрузитьт UG

Это абсолютно точно будет работать

Можешь еще поэкспериментировать переключением между модулями

скажем если Ты правишь меню в modelling то после правки переключись в gateway

а потом обратно в modelling может это поможет

Но без гарантии

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Orchestra2603
      Ну, вот... 0.498 - Похоже на правду. Если амплитуда 1, то на двухстороннем спектре амплитуда всегда 1/2. Это из-за того, что временная область преобразуется в область с положительными и отрицательными частотами. Попробуйте суммы синусов/коснусов на разных частотах с разными амплитудами. Везде должна быть половина от амплитуды.   Хм... у вас же широкополосное возбуждение. Если до 30 ГЦ есть собственные частоты, то в любом случае какой-то (или какие-то) резонанс(ы) возбудится (возбудятся). Так ведь? Если амплитуда нужна на резонансном пике, то я бы АЧХ просто получил бы на единичное ускорение или перемещение, а потом просто взял бы с пика со спектра величину и умножил бы.   А вообще... можно же голову даже не ломать, а просто прогнать транзиент с такой вот тайм хистори, и все дела. Если все линейно-упруго, то это в любом случае минуты машинного времени. Ну, если модель не очень большая конечно.  
    • AlexKaz
      Зачем? N - это только степень размера выборки из массива отсчётов, отбирается 2^N чтобы fft смогла корректно вернуть спектр.
    • mannul
      В такой древней версии pm может быть что угодно. 1.Обновитесь для начала хотя бы на 2018 версию. 2.Можно написать макрос, который будет проверять включена ли Сож на каждой траектории в нц файле. 3.Настроить пост, чтобы выводил Сож всегда для каждой траектории.
    • AlexKaz
      Код для scilab/matlab/octave.
    • Jesse
      посмотрел. По дефолту нормировка DFT идёт на 1/sqrt(N), где N - число отсчётов. Сделал нормировку на 1/N Получил амплитуду теперь меньше единицы.... у вас там maxima)) да и контекст долго читать. вы нормируете на логарифм от числа отсчётов?)
    • AlexKaz
      Стр. 89-90 https://elib.pstu.ru/docview/6701 1/(2*Pi) - это корректировка оси абсцисс, а не ординат.
    • Борман
      Если так то да. Я про статически-эквивалентный метод говорил там выше.
    • gudstartup
      @gudi продублировали ответы по теме а зачем неясно....
    • ANT0N1DZE
      Упрощенный план действий: Начните со стр. 155 https://www.utgt73.ru/uploads/biblioteka/fizika 10.pdf Если будет вращаться быстро и не в вакууме, то надо будет учесть "парус" этого тела, там сопротивление газа зависит от скорости движения. Это уже примерно 1 курс университета (тоже гуглится спокойно). 
    • MagicNight
      Заметил такую особенность, что в PowerMill v6 (возможно и в других тоже) происходит следующее... Создаю NC-файл и туда сбрасываю траектории (около 10-15 на разные фрезы), на выходе некоторые траектории не прописывает вкл охлаждения. То есть в графе Охлаждение на одну из 10-15 траекторий пишет НЕТ, на всех остальных -Стандартное (то есть да) Получается, что из, условно десяти траекторий, одна или две прописываются без включения СОЖ. Но что интересно по отдельности программы выходят с включенной СОЖ, всегда! Не могу понять зависимость с этим. Кто-нибудь сталкивался с этим?
×
×
  • Создать...