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

face identifier


vladeslav

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

Привет всем. Не могу программно слинковать поверхность. Точнее она линкуется, но не все нужные параметры выставляет. Проблема я так понял в передаче самого объекта. Я передаю его с идентификатором FACE 120 {(139.8165633761313, -105.7133294096655,0) EXTRUDE(2)}, а журналирование этого процесса выдаёт HANDLE R-3989. Получаю сам объект я через пользовательский интерфейс. Подскажите, пожалуйста, как получить поверхность с id HANDLE R? Всем добра:) 

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


Честно говоря, ничего не понятно ...

Но, насколько я понимаю, у вас есть тело (Body - Solid или Sheet). У тела есть грани (Face).
Вам нужно сделать программу, которая бы сама, сделала линк(и) одной или неск-х граней в другой файл.
Ну и "единственный" вопрос здесь: "Как программа узнает/найдёт/определит грани, которые нужно слинковать ?"
Варианты ответа/решения: а)по имени грани, б) по значению атрибута грани, в) по каким-то геометрическим параметрам/характеристикам грани,

г) по цвету грани, д) другие параметры/характеристики грани.

Кстати, на чём пишите программу? (C++ + NXOpen ?)

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

@IgP
C# + NXOpen. 
В общем да, мою задачу поняли правильно. Мне показалась хорошей Ваша идея с цветом, но у меня оно все равно красит LINKED_FACE, который выбирается через интерфейс, а сама деталь остается , как и была. Неужели через этот LINKED_FACE нельзя выйти на саму деталь? Они ж, по-идее, должны быть связаны. 
Я сначала, смотря на журнал, смог решить этот весь вопрос. Просто дописывал до идентификатора грани "PROTO#.Features|EXTRUDE(2)|..." . EXTRUDE переменной добавлял, тк может быть не только вытягивание. И это работало. До тех пор, пока мы не перемещаем детали в нашей сборке. И получается, что выбор элемента позиционируется в системе координат сборки, а найти мне объект нужно в самой детали. Поэтому идея провалилась.

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

 

Изменено пользователем vladeslav
Ссылка на сообщение
Поделиться на других сайтах

1. Я уже давненько, сам, не программирую.
2. Но ваши высказывания мне совершенно непонятны: "у меня оно все равно красит LINKED_FACE" - я имел ввиду совсем другое.

 "PROTO#.Features|EXTRUDE(2)|..." . EXTRUDE  - такого не должно быть в вашей программе ...
3. Перечитайте, то что я написал в первый раз.
4. Опишите вашу задачу более понятным образом, что вам нужно сделать ?
( Да и вообще, зачем здесь(Линкование) программирование ? )

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

@IgP спасибо, что еще терпишь:biggrin:

4. Вообще проект более глобальный. Но сейчас вот завис над этим моментом.

 Есть сборка, есть компоненты. На уровне сборки нам нужно пробить отверстия в компоненте. Поэтому  мы линкуем грань в сборку и, после разных манипуляций, линкуем точки из сборки в компоненту. Просто перейти в компоненту и сделать с ней всё, что хотим, мы не можем, потому что эти же отверстия могут быть пробиты насквозь через несколько компонент, в задумке. И там же еще замешан UDO.

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

3. Читал. Теоретически да. Программно, у меня пока ничего не получилось. Если б Вы скинули какие-то примеры/куски кода, было бы здорово.

2. Вероятно, не должно быть. Но пока, я не нашел, как еще получать объекты, если не через FindObject, который принимает параметр - JournalIndetifier. Но эти идентификаторы везде разные. Поэтому городил эти манипуляции со строками.

Надеюсь, примерно, нормально объяснил. И спасибо еще раз:no_1:

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

У вас заморочки на уровне постановки задачи (п.4):

На уровне сборки нам нужно пробить отверстия в компоненте.(1) - Хорошо, принимаем это. ( но, это плохо по идеологическим соображения, но забудем)

-> далее: Поэтому  мы линкуем грань в сборку <- это противоречит, только что сказанному в (1) ....

Вам надо изучать, возможности организации Link-ов.
Если сделаете показательную СЕ с компонентами - выложите здесь - можно будет показать, что может NX и без программирования.
А вы сможете более, понятно изложить задачу.

Да, уже всплывает вопрос версия NX какая ? Работа под управлением PDM ? ( Teamcenter ?)

Изменено пользователем IgP
Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, vladeslav сказал:

 Есть сборка, есть компоненты. На уровне сборки нам нужно пробить отверстия в компоненте. Поэтому  мы линкуем грань в сборку и, после разных манипуляций, линкуем точки из сборки в компоненту. Просто перейти в компоненту и сделать с ней всё, что хотим, мы не можем, потому что эти же отверстия могут быть пробиты насквозь через несколько компонент, в задумке. И там же еще замешан UDO.

Вы случайно не Syncrofit делаете? Если его, то зачем?

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

@IgP , версия NX - 8.5. Работа под управлением Search.

@grOOmi , примерно его. Зачем - ответ такой же, как и на вопрос выше. Этот проект начали до меня. C Syncrofit возникли какие-то трудности или не знаю. Решили своё сделать. И опять таки - Search.

Ссылка на сообщение
Поделиться на других сайтах
  • 2 месяца спустя...

Добрый день.

в продолжение этой темы... Может кто подскажет...

Пытаюсь создать линкованную грань средствами предоставляемыми UI.

Создал блок UI с элементом выбор «Коллектор граней». Свойство face_select()/InterpartSelection устанавливаю Associative Interpart Copy. При выполнении сгенерированного кода в дереве построения создается линкованная грань, но после закрытия окна моего приложения линкованная грань из дерева построения удаляется. Как предотвратить удаление грани?

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Jesse
      Вот что у Биргера: Центробежные силы и индуцированный гироскопический момент зависят от квадрата частоты вращения вала   Хотя уже сама критическая частота зависит только от момента инерции колеса (альфа, бэта, гамма - это прогибы, углы поворота и прочая шелуха), т.е. частота вращения в формулу не входит, а всё определяется только моментом инерции Jm Ну у него рассматривается простая одномассовая система (фактически грузик на пружинке). Думаю поискать публикации.. мб где то раскопали аналитическую зависимость первой и высшей СЧ от частоты вращения для сложных систем. Хотя если выяснится что зависит,  всё равно обоснование придумывать придётся.  Эхх...
    • Fedor
      https://www.litres.ru/book/v-n-faddeeva/vychislitelnye-metody-lineynoy-algebry-65999878/  Ну и классику жанра :) 
    • Jesse
      4000 об/мин при наружном диаметре колеса 380 мм. Думаете, на больших оборотах вилка всё равно может разойтись и могут появиться гироскопические эффекты? Даже несмотря на вышеприведенные массово-инерционные оценки и расположение опор?   да я влияние престресс (вращение) особо не увидел... Думал обычным модальником прогнать, Ланцошом (он пошустрее).   Ещё мои раздумья направлены в сторону присоединённой массы воды, что по идее должно занижать частоты. Хотя для такого массивного вала как у меня даже на это дело можно забить, наверно...
    • Handrusik
      Maxx2000 - благодарю Павлуха - это не фриланс Утомлённый солнцем - приятно, что меня помнят
    • Борман
      Я так понимаю, что обороты не особо большие. ДК - это чисто высокооборотистая тема.   Просто мысли вслух... Если вилка будет сильно расходится, то всегда будет точка пересечения любого луча с кривой BW. Причем точка будет на меньших оборотах по сравнению с обычным престресс-модальником. Какие дальше действия ? С чем тут нужно дополнительно бороться по сравнению с тем, с чем нужно было бы бороться по результатам обычного престресс-модальника Если вилка не сильно расходится (от кривой обычного престресс-мобальника), то смысла стоить строгую ДК большого нет.    
    • boomeeeer
      На сименсе параметрами настраивается многое, что связано с менеджером иснструмента. Вызов возможен как по номерам, так и по именам инструментов. Через равно вроде как по имени вызывается (Т="имя"), а по номеру можно было, например, Т1 M6, а первый корректор подтянулся бы автоматически. И не всегда М6 на смену. Производитель мог нагородить чего угодно. Параметры надо смотреть
    • Den4ik85
      P.S этой ошибки не было при запуске,она возникла при выполнении команды смены инструмента "T=.." d1m6. (так учили на курсах) возможно,не тот номер ввел или не соответствовало название инструмента его номеру?
    • boomeeeer
      @Den4ik85 Подключаться к контроллеру и искать цепочку формирования сигнала ошибки DB2.DBX183.0. Возможно один из индуктивных датчиков на подсчёт ячеек магазина вышел из строя
    • boomeeeer
      G108 C0 - Включить шпиндель №0 в режим оси C G90 C180 - Переместить ось С в позицию 180 градусов
    • Den4ik85
      благодарю! ничего не понял, ну хоть что-то) учусь только) попробую разобраться
×
×
  • Создать...