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

Поиск объекта по имени для 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 пользователей

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




  • Сообщения

    • Ветерок
      "увеличение оптимизации". Оптимизацию невозможно ни увеличить, ни уменьшить.
    • gudstartup
      @boomeeeer может от страны зависит
    • david1920
      нет время нет заниматься да и информации новой нет Это я на других станках делал
    • gudstartup
      @david1920 имеется ввиду платы на системах с сертификацией опций фалом oprminf старые в расчет не принимаются вы свой 18i восстановили?
    • gudstartup
      очень даже спрашивают как обязательную информацию для проверки вашей компании налоговый идентификатор должен быть указан. на myfanuc не спрашивают а вот на портале к сожалению просто так не зарегаться. 
    • david1920
      На 0I-TC mate менял плату управления приводами На 18i-TB менял для диагностики платы процессоров (один был от Spinner другой простой) процы были одинаковые Всё работает
    • brigval
      Браком 1.04В версии 1.04Добавлено: Автоуменьшение высоты шрифта многострочного наименования в ОН чертежа.Добавлено: Переименование поверхностей, баз, размеров в порядке их следования на чертеже.Добавлено: Переименование изображений по ГОСТ: сначала виды, затем разрезы, сечения, выносные элементы.Добавлено: Выравнивание неассоциативных видов.Добавлено: Ручной ввод шага и угла наклона штриховки.Добавлено: Перемещаются в макроэлемент компоненты, исключаемые из спецификации.Добавлено: Выбор количества значащих цифр в значении площади поверхности детали для вставки в ТТ.Добавлено: Возможность не авторазмещать ТТ перед конвертацией чертежа в PDF.Добавлено: Добавлены кнопки «Выделить все включенные в расчет» и Выделить все исключенные из расчета».Добавлено: Версия КОМПАС-3D Home показывается в программе со словом Home.Добавлено: Улучшен алгоритм считывания и вставки ТТ чертежа.Добавлено: При конвертации чертежа в PDF удаляется старый файл с таким же обозначением в начале имени, как обозначение в начале имени нового файла.Добавлено: Улучшено считывание номеров позиций из 3D-модели сборки.Исправлено: Иногда скрытые и потом показанные объекты чертежа отображались не серым цветом.Исправлено: Иногда после ручного заполнения графы «Масса» ОН чертежа в окне программы масса могла отображаться не правильно.Исправлено: В некоторых случаях из ОН чертежа могла не считываться литера.Исправлено: В некоторых окнах программы неправильно показывался заголовок окна программы.Исправлено: Другие замеченные мелкие ошибки и неточности кода.Скачать
    • boomeeeer
      Не помню чтобы у меня такое спрашивали при регистрации.
    • Snake 60
      @eljer0n  Откройте макрос SaveDRW.swp редактором VBA Найдите вот эти строки: Поменяйте выделенную цифру на нужную вам 3 или 4 - это количество символов которое останется от имени конфигурации. PS При сохранении в PDF тоже ругается на неправильное название чертежа, т.к. тоже обрезает название конфигурации до двух знаков, там тоже надо править при желании...
    • eljer0n
      @malvi.dp в общем порядок следующий (на каждое исполнение свой чертеж и позиция в спецификации):   Для исполнения с 2мя знаками. 1. Есть деталь с именем формата ХХ-01.01-01 (последнее -01 это исполнение) 2. В Мпроп детали назначается исполнение из конфигурации (как у вас на картинке). Отображается корректно 3. Создается чертеж по модели, исполнение в основной надписи чертежа детали отображается корректно. 4. Сохраняется через SaveDRW с корректным именем. 5. В спецификации сборки все отображается корректно.     Для исполнения с 3мя знаками. 1. Есть деталь с именем формата ХХ-01.01-011 (последнее -011 это исполнение) 2. В Мпроп детали назначается исполнение из конфигурации. Отображается корректно 3. Создается чертеж по модели, исполнение в основной надписи чертежа детали отображается корректно. 4. Сохраняется через SaveDRW с некорректным именем, а именно - с обрезанным до двух знаков исполнением (-01). 5. В спецификации сборки шифр отображается (внезапно! может какой глюк был: у солида или у меня ) корректно, как и у вас на рисунке.     Выходит, загвоздка все-таки только в сохранялке чертежа.
×
×
  • Создать...