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

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 пользователей

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




  • Сообщения

    • gudstartup
      @Viktor2004 Виктор как они программируют фаску?   Все ли элементы управления Fanuc по-прежнему поддерживают простую фаску или скругление углов с помощью команды G01? Такой как:   так G01 X0.Y10. C5. для простой фаски 5мм под 45гр они используют опцию s615 которая у вас установлена в чпу или нет
    • Artas28
      Шпиндель находится выше машинного нуля. Вопрос. Как его опустить. Какая информация нужна? 
    • gudstartup
      очень содержательно и о чем это кто знает ....
    • Artas28
      Syntec 220MA Во время смены инструмента, шпиндель по Z уехал выше. После нажатия паузы. Всё встало. Станок находится выше машинного нуля и не опускается. Кто сталкивался? Как опустить?  Ошибка MLCHint R590.7 Plc hint
    • Snake 60
      @Alexey0336  Да, всё работает: https://cloud.mail.ru/public/NGNq/Ft8UAJtf3  
    • Snake 60
      Что Вы подразумеваете под словом "Конфликтовать"? Мпроп и мой макрос делают одно и тоже действие, создают и заносят свойства в файл солида. Если свойства с одинаковым именем (например Обозначение и Наименование), то Да, свойство перезапишется тем макросом, которой отработал последним. Щас проверю, отпишусь. Изначально Наименование и Обозначение берутся из имени файла, но его всегда можно перезаписать... Если что, это всегда можно переписать под Ваши требования.
    • jtok
      Если у вас SW не выше 18й версии, могу проверить у себя.
    • Orchestra2603
      Ну, есть же, например QZ алгоритм (обобщение QR разложения, для слуая когда матрица масс не равна I). Отлично работает, когда одна из матриц вырожденная. Вот статься:  https://deepblue.lib.umich.edu/bitstream/handle/2027.42/6667/bac9269.0001.001.pdf?sequence=5   вот коротко в Вики     Раскопал это вообще, глядя в справку от матлаба: https://www.mathworks.com/help/matlab/ref/eig.html.   Это все нюансы....  И все эти алгоритмы сущетсвуют уже кучу лет во всяких библиотеках типа LAPACK. Вы думаете, что в Dassault Systemes или Ansys про это не знают, и их модальник - лажа?  
    • karlf
      Сегодня не было времени, завтра посмотрю и пришлю фото как выглядит
    • Bot
      АСКОН выпустил новый релиз среды общих данных Pilot. В нем получили развитие инструменты строительного контроля и авторского надзора, появилась возможность вручную координировать модель объекта капитального строительства. Стройконтроль Вести стройконтроль на площадке, а также авторский надзор за деятельностью арендаторов и собственников поможет привязка панорамных фото объекта к чертежам и документам. Для съемки панорамных фото используется мобильное приложение Pilot-Photo360, доступное для Android. С помощью приложения специалисты строительных организаций, компаний-застройщиков, девелоперов смогут: Находясь на объекте строительства или эксплуатации, фотографировать объект на специализированную панорамную камеру и сразу прикреплять снимки к точкам на чертежах и документах в Pilot-BIM или Pilot-ICE Enterprise. Группировать панорамные снимки по альбомам. Просматривать фото помещения с разных ракурсов, при этом видеть направление взгляда относительно [...] View the full article
×
×
  • Создать...