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

User Defined Object как правильно его зарегистрировать?


bazelboday

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

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

          вопрос:  Как правильно зарегистрировать UDO? 

таким образом?:

 

 

extern DllExport void ufsta( char *param, int *returnCode, int rlen )//DllExport
{
    /* Initialize the API environment */
    UF_initialize();
 
 .    
UF_UDOBJ_create_class (.....) ;
 
 
 
UF_terminate();
}
 
extern UFUNEXPORT int UF_UDOBJ_create_class (
char * class_name ,/* <I>
                   The class name for the particular type of User
                   Defined Object.
                   */
char * friendly_name ,/* <I>
                      A user-friendly name that appears in the class
                      selection dialog (if enabled) and in other
                      locations where a name is useful.
                      */
UF_UDOBJ_class_t * class_id  /* <O>
                             The class identifier. This identifier is not
                             persistent across NX sessions nor is it stored in
                             NX part files.
                             */
 
 
 
 
 
не могли бы вы немножко подробнее описать как это сделать, что где как?Т.е. регистрируем класс как UDO, в самом классе создаем нужный нам метод, по необходимости регистрируем callback функции и все? Посмотрю еще пример который есть в NXOPEN, но если есть какие-то дополнительные нюансы был бы рад услышать. Спасибо  
 
 
 
 
 
 
Ссылка на сообщение
Поделиться на других сайтах


мне необходимо заменить Nx-скую функцию по импорту сборки в тимцентр (Autotranslate). она переименовывает файлы деталей(.prt) в Teamcentr из NX. как это сделать указано здесь http://plmdojo.com/datamig/automate-nx-migrations-autotranslate/#.U7vSEJR_uxo но сказано что необходимо чтобы dll грузилась сразу при запуске NX и для этого необходимо сделать UDO и dll закинуть в UDO папку

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

А где вы там UDO нашли??? 


The basic template for your autotranslate function is something like this:

extern "C" DllExport // export for unit tests
int plmdojo_autotranslate( const char input[MAX_FSPEC_SIZE + 1],
char output[MAX_FSPEC_SIZE + 1])
{
    if ( input[0] == '@')
    {
     // export
     return tc_to_native(input, output);
    }
    else
    {
     // import
     return native_to_tc(input, output);
    }
}

Вот основной шаблон транслятора. Допиливайте и используйте его.

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

далее в статье идет 

 

Registering a custom Autotranslate Function

You instruct NX to use your autotranslate function instead of the default with theUF_UGMGR_set_clone_auto_trans() function. Loading a DLL at NX start up that contains this function would do the trick:

extern "C" DllExport
void ufsta( char *param, int *returnCode, int rlen )
{
UF_initialize();
UF_UGMGR_set_clone_auto_trans(plmdojo_autotranslate);
UF_terminate();
}

Search the NX documentation for Automatic Loading At NX Start-up for information on loading shared libraries at start up.


Search the NX documentation for Automatic Loading At NX Start-up for information on loading shared libraries at start up.

 

смотрю в справочнике NX и там как раз говорится что нужно делать UDO

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

вообще мог бы кто-нибудь рассказать вкраце про концепцию UDO и про библиотеку функций для работы с ними

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • djtim
      Здравствуйте. Еще один вопрос от новичка. Мне кажется что это простая задачка. Есть некая платформа, состоящая из- 1. базы (верх и низ), толщина листа 2.5мм. 2. опоры (4 шт), толщина листа 2.5мм. Швеллер. 3. боковой обшивки (2шт), толщина листа 1мм.   Платформа крепится к фундаменту анкерами. Опоры крепятся к базе болтами. Обшивка по периметру приваривается к базе сверху и снизу). Габариты платформы 700*500*300мм. На платформе стоит изделие (около 300кг).   Прошу подсказать как правильно наложить ограничения для линейного расчета по статике. Хотелось бы выяснить минимальную толщину стенок базы и опор. Про неудачную конструкцию опорных места швеллера знаю, но вопрос не в этом. По ограничениям: - отверстия для анкера жесткой зафиксированы. - как соединить швеллер с базами? -как соединить обшивку с базами?   Спасибо.    
    • Docuk1
      Именно так и делаем. НО если есть возможность дописать пару строк кода и забыть, то было бы вообще хорошо
    • bsaidov
      Они у вас автоматически появились или принудительно добавили в Expressions? У меня вот нет таких. 
    • djtim
      а, так это просто эскиз силовых элементов. В готовом изделии все закрывается декоративной панелью/корпусом
    • Марсель
      Книга Проектирование систем. Диксон. Пылесоса и пр. там нет, но есть  В книге автор разбирает несколько прикольных проектов, напр. воздушно-водяная ракета. Решает производственные задачи. Также посмотрите двухтомник Детали машин М.Н. Иванова. Разбор проекта лебёдки Одегова. Орлов. Основы конструирования. Про насос.
    • Fedor
      Ошибки не вижу. Вижу что некрасиво. Для таких изделий стоит обратиться к архитекторам. Делать красиво их учат :) 
    • djtim
    • AlexKaz
      Спрашивать в интернете бесполезно о таких вещах. Либо Вы конструктор и ручками участвовали в создании изделий для рынка, либо студентов Вы потеряете. Шансы подготовить студентов, не имея минимального опыта, околонулевые. Лучше 10 раз подумать, и по возможности привлечь к преподавательской деятельности конструктора с опытом. За отдельную оплату.
    • AlexKaz
      Странно, что об этой проблеме 8 млрд. чел. не в курсе, но препод ни в зуб ногой. Если в гугле вбить "COFFEE MACHINE patent", находится всё. Это был первый этап. Второй этап - взять любую программу обучения инженеров-конструкторов, например, специальности 15.03.01-15.03.02-15.03.03, и осознать, что подобные чайники без соответствующей подготовки сделать невозможно. Третий этап - КД. Вам её никто никогда не отдаст. Это ноу-хау фирмы. Даже если в КД один единственный чертёж с единственным болтом - в интернет это не выложат. Расчётную часть тоже не выложат. Поэтому лично я всегда отношусь скептически к вузовским инженерам, никогда не работавшим в КБ или в частных фирмах, связанных с прямым производством. Они вообще не понимают, что происходит на производстве.
    • статист
      Reduced Order Modeling of Coupled Domains  
×
×
  • Создать...