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

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

Здравствуйте коллеги. 

Возникла потребность повернуть деталь перпендикулярно выделенной грани (ctrl +8). 

Есть такая возможность сделать этот программно? 

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


Конечно. Попробуйте записать макрос, нажимая CTRL+8, а потом посмотреть код.

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, jtok сказал:

Конечно. Попробуйте записать макрос, нажимая CTRL+8, а потом посмотреть код.

Уже. 

Не пишет. 

Ссылка на сообщение
Поделиться на других сайтах
6 часов назад, Sturmann сказал:

Возникла потребность повернуть деталь перпендикулярно выделенной грани (ctrl +8). 

Есть такая возможность сделать этот программно? 

Повернуть видовое окно на деталь или изменить положение детали (сменить ее координаты) ?

Если просто повернуть, то попробуйте  ModelDoc2.ShowNamedView2()

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, nicomed сказал:

Повернуть видовое окно на деталь или изменить положение детали (сменить ее координаты) ?

Если просто повернуть, то попробуйте  ModelDoc2.ShowNamedView2()

Ок спасибо но к сожалению этот метод показывает только заранее заданные стандартные виды - они указаны в перечислениях

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Sturmann сказал:

Ок спасибо но к сожалению этот метод показывает только заранее заданные стандартные виды - они указаны в перечислениях

В ремарке к описанию метода что-то написано про поворот нормально к виду. Но я что-то не сообразил пока что именно надо указывать в параметрах вызова метода.

 

Как костыльный вариант выполните команду: swApp.RunCommand(169, "");

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

В ремарке к описанию метода что-то написано про поворот нормально к виду. Но я что-то не сообразил пока что именно надо указывать в параметрах вызова метода.

 

Как костыльный вариант выполните команду: swApp.RunCommand(169, "");

Спасибо попробую. 

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, nicomed сказал:

В ремарке к описанию метода что-то написано про поворот нормально к виду. Но я что-то не сообразил пока что именно надо указывать в параметрах вызова метода.

 

Как костыльный вариант выполните команду: swApp.RunCommand(169, "");

Спасибо помогло

Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, Sturmann сказал:

Ок спасибо но к сожалению этот метод показывает только заранее заданные стандартные виды - они указаны в перечислениях

Кусок старого кода у меня, с этой функцией:

//---------------------
          int selType = swSelMgr.GetSelectedObjectType2(1);

            if(selType != (int)swSelectType_e.swSelFACES)
            {
                string message = "Выберите одну грань!";
                MessageBox.Show(message, "Warning!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            Face2 swFace = swSelMgr.GetSelectedObject5(1) as Face2;
            Surface swSurface = swFace.IGetSurface();
            if(swSurface.IsPlane())
                swModel.ShowNamedView2("*Normal To", -1);
//--------------------------

 

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

swModel.ShowNamedView2("*Normal To", -1);

Увы и ах, но у меня не срабатывает. Хотя именно такой код и писал, по прочтению ремарки в документации...

 

З.Ы. пишу  в версии Framework 4.7.2 

Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, nicomed сказал:

Увы и ах, но у меня не срабатывает. Хотя именно такой код и писал, по прочтению ремарки в документации...

 

З.Ы. пишу  в версии Framework 4.7.2 

Проверка на плоскую поверхность была?

if(swSurface.IsPlane())

 

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

 

7 минут назад, Shvg сказал:

Проверка на плоскую поверхность была?

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

Сейчас полностью скопировал код (для чистоты эксперимента) еще добавил логирование после прохождения проверки на плоскость.

Проверка на плоскость проходит, а метод не срабатывает.

Ссылка на сообщение
Поделиться на других сайтах
5 минут назад, nicomed сказал:

 

Проверка на плоскость проходит, а метод не срабатывает.

Странно. Этот код был написан для SW2011. Там он работает. Правда про "*Normal To" было подсмотрено в API SW2013.  Сейчас попробовал в SW2023, компилировал в VS2015. Работает.

Ссылка на сообщение
Поделиться на других сайтах
9 минут назад, Shvg сказал:

Странно. Этот код был написан для SW2011. Там он работает. Правда про "*Normal To" было подсмотрено в API SW2013.  Сейчас попробовал в SW2023, компилировал в VS2015. Работает.

Самому уже интересно. Сейчас вставил в ADDIN - не работает. Вставил код с RunCommand (169,"") - отработало.

SW2021 SP2

VS2022

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

@Shvg А можете сделать тестовую программку, с проверкой что у Вас она работает ? А то уже какой-то спортивный интерес просыпается ...

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • vik_q
      Рекомендую погуглить, как работает талреп. Там именно узел в реальности перемещается.   https://cae-club.ru/forum/zadanie-ottyazhek-v-ansys-workbench Они все ещё там даже в 2021 r2. Tools/options/appearance. В воокбенче. Пусть более опытные коллеги подскажут. Я плохо помню, может гармоник пересчитывать натяжения в тросах при деформации основной мачты, или это нелинейность, в которую он не умеет.
    • davidovka
      Creo 4, без "дополнительных настроек"
    • nahaus
      Вдруг так случится что вы потеряли строку фильтра которая находится над деревом построения     то включить ее удалось в файле настроек "default_settings.sldreg"(открыть с помощью блокнота) активировав параметр "Enable Feature Filter"=dword:00000001
    • Stanislav
      В шаблоне операции, ну соответственно в самой операции стоит выводить дуги линиями. 
    • AlekseyTa
      У вас сколько элементов по длине троса? Была похожая проблема из-за того, что трос упорно не разбивался больше чем на один элемент. Я решил проблему топорно - разбил геометрию троса на 2 тела и поместил в один парт. После этого трос реагировал на количество элементов и перемещения стали физичными и совпадать с аналитикой. Для тросов не работает Bolt Pretension. Но затяг можно сделать простой командой: CMSEL, S, NS2 INISTATE,SET,CSYS,-2    ! LOCAL ELEMENT SYSTEM FOR PRE-STRAINS INISTATE,SET,DTYP,STRE  ! STRESS INISTATE,DEFINE,,,,,80  ! STESS of 1 unit ALLSEL   Здесь: NS2 - Named Selection, в котором узлы кабелей (вроде узлы). Можно команду сделать без именованных выборок задавая её командой к телу во вкладке геометрия. 80 - величина преднатяга (по моему в МПа, но нужно тестировать, может и в Па или Н).
    • Jesse
      Ну по факту то в реальности узел у нас на месте стоит. А я его перемещаю получается...   Cable новее и лучше судя по описанию из гугля Сайт Так так так.  А это как вы включили? Что за бета опции? Гыде?) Хотите сказать, что я вообще могу выкинуть троса из расчетной модели, и нагрузить трубу просто усилиями?   Планирую обойтись тем,,что вытащу реакции из Harmonic (вибрация-ветер) и response spectrum (сейсм) и сравню их с натяжением в тросах
    • kostos666
    • fenics555
      только настройками. Попробуйте в редакторе конфигураций в поиск вбить "reg", может найдете что. Либо связанное с расчетом масс. Я больше склоняюсь к последнему: крео пересчитывает массу, думает что произошло изменение детали и перезаписывает ее. дайте нам знать если что найдете! ))
    • filsan
      Есть ли где-то в параметрах настройки максимального количества цепей при сопряжении границ? А то у меня больше 300 цепей не дает выбрать, а хочется одной поверхностью все сделать. 
    • Stanislav
      Для понимания вышесказанного. Согласно кода перемещения будут происходить не по красной линии как в NX а чуть ниже где стоит оранжевая точка примерно. Здесь это приемлемо но может получится что РАССТОЯНИЕ $mom_cycle_retract_to будет небольшое и переход произойдет внутри детали. А центровка там не проходит как видно. Одну деталюху запорол, но это по другой причине U и I перепутал местами когда пост писал. Вот теперь правлю, столкнулся с такой проблемой что не знаю как получить координату ускоренных перемещений.  
×
×
  • Создать...