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

функция Intersection Curve в Nx2


volodja

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

Добрый вечер!

Столкнулся с такой проблемой в NX2: хотел сделать пересечение группы поверхностей (сложной формы лопатка) с секущей поверхностью, которая пересекает всю лопатку примерно по диагонали. Выделил мышью прямоугольник со всеми поверхностями лопатки, потом секущую поверхность и получил стандартное сообщение об ошибке: типа, так не пойдет. Подумал, что некоторые поверхности не имеют точек пересечения с секущей и ассоциативность, может быть, не получается у UG. Убрал галочку в ассоциативности - результат тот же. Поверхности одну за другой выделять - лень, да и много их, мелкие тоже есть, не сразу понятно, есть там пересечение или нет. Собрать поверхности вместе из-за погрешности на границах быстро! не удалось.

Способов решить задачу я увидел сходу два:

-увеличив tolerance, в конце концов соберешь поверхности в кучу, но и кривая получится, похоже, одна, не из кусков.

-ну и тупой способ: одну поверхность за другой сечь.

Но мне хочется верить, что я просто какой-то функции не знаю или галочку где-то забыл поставить. Не могу поверить, что UG не умеет решать задачу мультипересечения как-нибудь изящнее.

Удавалось ли кому-нибудь на форуме найти решение поизящнее и побыстрее? Или это уже в NX4 решено?

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


...хотел сделать пересечение группы поверхностей...

Из хелпа:

"В качестве объектов пересечения можно выбирать:

-одно объемное( листовое) тело

-одну или несколько граней (все грани должны принадлежать одному телу)[/b]

-координатную плоскость"

Я поступаю следующим образом:

Строю пересечение одной грани (или одного тела), затем вхожу в редактирование кривой пересечения и выбираю окном все остальные, - и, опа! строится множество кривых в одном фичере! :doh:

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

To bdfy:

Спасибо за совет, это работает и получается не одна кривая, а много составляющих. :clap_1:

Однако одно условие все равно есть: все поверхности должны принадлежать одному телу и никак от этого, похоже, не уйти....

И поверхности-то с WAVE LINKER получены, а все равно не хочет все скопом пересекать. Даже если галочку "ассоциативность" убрать, то есть сделать эту операцию в UG как бы непараметризированной, все равно пишет, что не хочет больше одной поверхности пересекать. Хотя непараметризированные CATIA V4 и TEBIS делают такие вещи без проблем....

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

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

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

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

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

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

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

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

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

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

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



  • Сообщения

    • A_1
    • Viktor2004
      Много способов. Самый простой это анализируйте куда переходит выполнение вашей программы. Другой, допишите перед проверкой IF WHILE выше строчку #100 = #1000 #101 = #1001 и наблюдайте уже #100 #101 Можно в PMC STATUS смотреть сигналы G54.0 G54.1
    • A_1
      Как? В OFFSET индицируются только до #999
    • Viktor2004
      Надо выяснить что у вас означают переменные #1000 и #1001 Это надо смотреть в ладдере сигналы G54.0 и G54.1 Могу только гадать. Возможно один из них показывает что заданный инструмент перемещен в позицию смены. Другой сигнал возможно означает что заданный инструмент уже находится в шпинделе. Попробуйте выполнить команду смены через сингл-блок. Только параметр надо какой-то поставить что бы сингл блок и на подпрограммы действовал Попробуйте вызывать инструмент который уже в шпинделе. Наблюдайте за макропеременными #1000 и #1001 что бы выяснить их функцию Единичный блок это SINGL BLOK
    • IGor2D
      Забыл спросить... Кто может поделиться настройками технологий для резки профилей из стали от 1.5мм до 8.0 мм под азот? Мощность 3-6kw лазера (от "китайца" не желательно).  
    • A_1
      предполагаю, что ложь в первом кадре, истина во втором во всех случаях)
    • gudstartup
      так поставьте SBK режим отмените NE9 в 3202 и смотрите как оно выполняется у вас
    • andrey2147
    • A_1
      Мне нужно, чтобы при смене на новый инструмент программа выполняла кадры G91G30Z0 G30X0Y0 а при вызове текущего шла на кадр N200 N200G91G30Z0 M28 Для этого, вроде, и есть проверки IF[#1000EQ1]GOTO100  IF[#1001EQ1]GOTO200 но они или не работают или не то (новый или старый инструмент вызывается) проверяют.
    • Viktor2004
      смена инструмента это по сути две процедуры. Первая это поиск инструмента. Выполняется по команде Tx Вторая это смена инструмента. Выполняется по команде M6 Если в программе в разных строчках пишутся эти команды, там все нормально Но принято их писать в одной строке. Тогда обе они будут выполняться одновременно. Но одновременно их выполнять нельзя. Сначала магазин должен найти инструмент и только потом его менять Для этого команда М6 обычно вызывает программу O9001 и уже в этой программе организуют ожидание завершения поиска инструмента. Контролируют это через макропеременные #1000 или #1001 или им подобные. Именно этот цикл ожидания я не вижу в программе автора вопроса. Что бы этот цикл ожидания крутился сам в себе и вышел из него когда макропеременная приняла нужное значение
×
×
  • Создать...