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

Массовое удаление Wave линков в UG


ART

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

Вообщем ситуация такая, после создания проекта и воплощения его в металле, нужно массово удалить все Wave линки во всех деталях. Вопрос где искать или как это сделать? Лицензии на Advanced Assembly нет.

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


Сборки->WAVE->Просмотрщик связей между деталями.

Нажатием соответствующей кнопочки выделить все детали. В списке связей между деталями отфильтровать как нужно. И из этого списка WAVE связи можно массово разорвать в один клик.

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

Мужики если вас не затруднит дайте скриншот где эта хрень находится. В NX 6 я ее найти не смог.

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

valeo-ua

а если не удалять а заморозить связи?

Не важно, главное чтобы не было изменений без моего одобрения.

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

Мужики если вас не затруднит дайте скриншот где эта хрень находится. В NX 6 я ее найти не смог.

лицензию WAVE подключи и попробуй использовать роль с полным меню

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

N_town

лицензию WAVE подключи и попробуй использовать роль с полным меню

У меня нет возможности подключить такую лицензию. Есть еще варианты?

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

лицензию WAVE подключи и попробуй использовать роль с полным меню

А что это - лицензия на WAVE ???

По моему если есть лицензия на ассемблинг то есть и WAVE.

2 Art

Язычек ассемблинг есть в меню бар?

post-4421-1263361291_thumb.jpg

Как выставленны опции Castomize?

post-4421-1263361302_thumb.jpg[

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

Лицензий на WAVE несколько. То что вы тут рассматриваете - это обычный, самый простой WEVE, лицензия на него входит в мало-мальский BUNDLE (вашу коробчатую лицензию на НХ как модуль), думаю что начиная с лицензии MACH3.

Но есть еще так сказать advanced WAVE - позволяет включить меню "WAVE-режим" в навигаторе сборки, вы можете морозить WAVE делать его позиционно-независимым (позиционно независимый может быть есть и в обычной лицензии на WAVE).

Короче говоря - если ваша лицензия позволяет создавать WAVE линки - значит она сможет их разорвать ИМХО.

А лицензий на ассемблинг тоже куча разных, начиная от возможнсоти купить какой либо модуль для ассемблига (тот же расширенный WAVE), так же не стомт забывать про адвансед ассемблинг. :) Узнать какой у вас модуль ассемблинга (обычный или адвансед) можно изучив список модулей в вашем бандле заюзав утилитку License_Tools

Да и Diletant, выстави роли с полным меню (если не включены)

post-17615-1263364207_thumb.jpg

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

Да и Diletant, выстави роли с полным меню (если не включены)

А где вы увидели что у меня урезанная роль?

Да и галочка в кастомайзе влияет на другие вещи...

Ссылка на сообщение
Поделиться на других сайтах
Diletant я лишь предположил (не один я), не серчайте! :) Изменено пользователем mbm
Ссылка на сообщение
Поделиться на других сайтах

Diletant я лишь предположил

Мне просто интересны основания вашего предпложения... :blink:

(не один я)

А кто еще???

не серчайте!

Да господь с вами, даже в мыслях не было.

Вас видимо смутил мой никнейм :bleh:

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

Всем большое спасибо.

Еще один вопрос может быть есть такая утилита, чтобы порвать линки не открывая файл сборки вообще(что то вроде из командной строки)?

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

Art, встречный (нескромный) вопрос. А зачем рвать линки?

Какая цель преследуеться?

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

Art, встречный (нескромный) вопрос. А зачем рвать линки?

Какая цель преследуеться?

Тоже думал о том чтобы рвать линки в конце или в процессе проекта, проектировать\моделиться большие сборки невозможно с включенными линками, во 1х долгая загрузка, что не самое страшное, во 2х:

линки часто теряются, ломаются, детали по которым они строились модифицируются, а следовательно меняются ID элементов моделей с кот. построены WAVE, часто предсказать поведение WAVE, особенно в бол. сбоках бывает крайне тяжело. Сборка с вырубленными WAVE связями, при окончании проекта, подходит как минимум для возмоности создания картинок, быстрой загрузке и анализу (Check Mate, Зазоры и др.), ну и наконце, сильно изменить большую сборку при вкл. WAVE просто невозможно, Вы больше будите терять время на понимание и восстановление проблем, а работать с WAVE+Routing - невозможно при сборках от 10к компонент. ИМХО, о наболевшем.

Всем большое спасибо.

Еще один вопрос может быть есть такая утилита, чтобы порвать линки не открывая файл сборки вообще(что то вроде из командной строки)?

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

Тут выход только один я вижу - грузить в структуре, а дальше подгружать\закрывать по очереди сборки и рвать связи (чтобы не запутаться).

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

Всем большое спасибо.

Еще один вопрос может быть есть такая утилита, чтобы порвать линки не открывая файл сборки вообще(что то вроде из командной строки)?

Конечно нет

Но все средства для создания таких вещей в UG есть

можно собрать обычный exe и использовать в нем библиотеки UG

и запускать его из командной строки

Все необходимые функции для работы с WAVE UGOPEN имеются

Пример работы с WAVE

Как видно из кода удалить wave просто

UF_OBJ_delete_object

void mated_wfaces::build_wave_objects()

{ int irc;

  tag_t feature_tag, work_part_tag, work_part_occ_tag, face_proto_tag, part_occ_tag, xform_tag;



  try

  {

	work_part_tag=UF_ASSEM_ask_work_part();

	work_part_occ_tag=UF_ASSEM_ask_work_occurrence();



	part_occ_tag=UF_ASSEM_ask_part_occurrence(face1_planar_tag);

	if(part_occ_tag != work_part_occ_tag) 

	{

	face_proto_tag=UF_ASSEM_ask_prototype_of_occ(face1_planar_tag);

	irc=UF_SO_create_xform_assy_ctxt(work_part_tag, part_occ_tag, work_part_occ_tag, &xform_tag);

	if(irc) throw ug_err(THIS_FILE, __LINE__, irc);

	irc=UF_WAVE_create_linked_face(face_proto_tag, xform_tag, work_part_tag, false, &feature_tag);

	if(irc) throw ug_err(THIS_FILE, __LINE__, irc);

	feature_wave_tags.push_back(feature_tag);

	irc=UF_WAVE_map_source_to_link_geom(feature_tag, face1_planar_tag,

										&wface1_planar_tag);

	if(irc) throw ug_err(THIS_FILE, __LINE__, irc);

	}



	part_occ_tag=UF_ASSEM_ask_part_occurrence(face2_planar_tag);

	if(part_occ_tag != work_part_occ_tag) 

	{

	face_proto_tag=UF_ASSEM_ask_prototype_of_occ(face2_planar_tag);

	irc=UF_SO_create_xform_assy_ctxt(work_part_tag, part_occ_tag, work_part_occ_tag, &xform_tag);

	if(irc) throw ug_err(THIS_FILE, __LINE__, irc);

	irc=UF_WAVE_create_linked_face(face_proto_tag, xform_tag, work_part_tag, false, &feature_tag);

	if(irc) throw ug_err(THIS_FILE, __LINE__, irc);

	feature_wave_tags.push_back(feature_tag);

	irc=UF_WAVE_map_source_to_link_geom(feature_tag, face2_planar_tag,

										&wface2_planar_tag);

	if(irc) throw ug_err(THIS_FILE, __LINE__, irc);

	}





	wface_cylindrical_tags.reserve(face_cylindrical_tags.size());

	for(std::vector<tag_t>::iterator ii=face_cylindrical_tags.begin();

		ii!=face_cylindrical_tags.end(); ++ii)

	{ tag_t wave_face;

	part_occ_tag=UF_ASSEM_ask_part_occurrence(*ii);

	  if(part_occ_tag != work_part_occ_tag) 

	  {

	  face_proto_tag=UF_ASSEM_ask_prototype_of_occ(*ii);

	  irc=UF_SO_create_xform_assy_ctxt(work_part_tag, part_occ_tag, work_part_occ_tag, &xform_tag);

	  if(irc) throw ug_err(THIS_FILE, __LINE__, irc);

	  irc=UF_WAVE_create_linked_face(face_proto_tag, xform_tag, work_part_tag, false, &feature_tag);

	  if(irc) throw ug_err(THIS_FILE, __LINE__, irc);

	  feature_wave_tags.push_back(feature_tag);

	  irc=UF_WAVE_map_source_to_link_geom(feature_tag, *ii,

										  &wave_face);

	  if(irc) throw ug_err(THIS_FILE, __LINE__, irc);

	  wface_cylindrical_tags.push_back(wave_face);

	  }

	  else wface_cylindrical_tags.push_back(NULL_TAG);

	}

  }

  catch(base_err &e) { e.trace(THIS_FILE, __LINE__); throw; }

  catch(...)		 { base_err e(THIS_FILE, __LINE__, "System error"); throw e; }

}





void  mated_wfaces::delete_wave_objects()

{ int irc;



printf("delete_wave_objects %d\n", feature_wave_tags.size());

  try

  {

	for(std::vector<tag_t>::iterator ii=feature_wave_tags.begin(); ii!=feature_wave_tags.end(); ++ii)

	{

	irc=UF_OBJ_delete_object(*ii);

	if(irc) throw ug_err(THIS_FILE, __LINE__, irc);

	}

  irc=UF_MODL_update();

  if(irc) throw ug_err(THIS_FILE, __LINE__, irc);

  feature_wave_tags.clear();



  wface1_planar_tag=wface2_planar_tag=NULL_TAG;

	for(std::vector<tag_t>::iterator ii=wface_cylindrical_tags.begin(); ii!=wface_cylindrical_tags.end(); ++ii)

	*ii=NULL_TAG;

  }

  catch(base_err &e) { e.trace(THIS_FILE, __LINE__); throw; }

  catch(...)		 { base_err e(THIS_FILE, __LINE__, "System error"); throw e; }

}

А вообще я думаю проблема от неправильного использования wave

В сборке wave по идее не должно быть

Он используется только в контрольных структурах

Как вариант можно еще предложить отключить wave через настроечные файлы UG

чтобы те кто не умеет им пользоваться не имели возможности его создавать

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

Как вариант можно еще предложить отключить wave через настроечные файлы UG

чтобы те кто не умеет им пользоваться не имели возможности его создавать

Это правильно! :smile:

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

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

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

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

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

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

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

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

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

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

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



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