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

Поиск объекта по имени для DLL


Gala_Buz

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

Здравствуйте! 

Пытаюсь сделан шаблон для "Черчения" NX8.5. По имени может взять только объект эскиз. А выражения, таблицы и группы, по имени не может, похоже  идет обращение по тэгу.

Этот шаблон может добавлять несколько раз, у эскиза, например добавляется "_0", а у группы и т.д. тэг меняется не понятно как  и ни как не проконтролировать. И взять на новом листе это объект не представляется возможным.

Программирую в Microsoft Visual Studio С++.

Какими средствами можно взять объект по имени? 

Программирование знаю, а вот под NX - первый раз, и многого не знаю. 

 

std::vector<DisplayableObject *> objects1(1);
    Sketch *sketch1(dynamic_cast<Sketch *>(workPart->Sketches()->FindObject("SKETCH_SHEET 1_002")));
    objects1[0] = sketch1;
 
std::vector<DisplayableObject *> objects1(1);
    Annotations::Note *note1(dynamic_cast<Annotations::Note *>(workPart->FindObject("HANDLE R-54477")));
    objects1[0] = note1;
 

 

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


Я конечно не силен в с++, по в классическом С (т.е. UGOpen) есть функции типа UF_TAG_* они вам помогут.

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

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

Я конечно не силен в с++, по в классическом С (т.е. UGOpen) есть функции типа UF_TAG_* они вам помогут.

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

 

В том то и проблема имя пишешь, а он выдает ошибку на FindObject. В том и вопрос может быть другая команда есть

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

Или может кто-то знает, что обозначают цифры     FindObject("ENTITY 15 4 1")

 

Похоже, этот код взят из журнала? Журнал всегда записывает код с именами объектов из данной сессии, поэтому применить его в последующих сессиях без редактирования вряд ли получится. Есть одна замечательная книга Тихомирова В.А., называется кажется "Разработка приложений под Unigraphics на языке C" (в сети есть ознакомительная версия), так вот там достаточно подробно расписываются основы создания приложений, и в частности работа с модулем драфтинг. 

 

А вообще, если нужны шаблоны ЕСКД, то их можно создать и без применения апи. И, кстати, здесь, на форуме, они где-то были.

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

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

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

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

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

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

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

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

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

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

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




×
×
  • Создать...