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

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

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

Возникла потребность повернуть деталь перпендикулярно выделенной грани (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 эмодзи.

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

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

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

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

    • chirkoff.cad



  • Сообщения

    • maxx2000
      @gudstartup сгладит в любом случае, даже без опций, это делает планировщик (Look Ahead). Так то все криволинейные поверхности аппроксимируются отрезками с точностью заданной в настройках перехода. Если только сама CAM не умеет аппроксимировать траекторию. Тут без вариантов. Соответственно если аппроксимация сплайнами стойка должна поддерживать обработку сплайнов, а вот это обычно опция.
    • Иван Ларионов
      При простановке размеров в файлах slddrw иногда с размером происходит нечто странное. Одна из выносных линий размера не видна. Сохранение и полное перестроение не помогает. Приходится либо "загонять" размер внутрь графики вида, либо специально дорисовывать эту линию эскизно. Но это не всегда удобно. Никакой закономерности в проявлении этого "бага" не заметил. Эксперименты с настройками операции простановки размеров не помогли. Можно ли как-то это побороть?
    • gudstartup
      если эти опции куплены то сгладит иначе поверхность будет неподобающего качества да и при движении станка такими малыми отрезками возможны вибрации что еще больше ее ухудшит . камовцам надо учится применять функции не только линейной и круговой интерполяции.
    • gudstartup
      @OliverTwist все таки мне кажется очень странным что если вы не меняете тип процессора то проект компилируется без ошибок. получается что fc700 в компиляции не участвует а может быть и остальные блоки тоже и компиляция проходит потому что ее как таковой не требуется так как никаких изменений в проекте вы не делали. попробуйте просто изменить любой не know-how блок и скомпилируйте будет ли ошибка или нет. в вашем случае после изменения типа цпу требуется полная перекомпиляция всех блоков и именно поэтому вы получаете ошибку. в s7 step наличие в проекте know-how блоков никак не мешало компиляции все системные блоки предоставленные Сименсом были закрыты и ничего а ваш блок скорее похож на защиту   s7 block privacy c паролем и шифрацией содержимого. а если этот блок не компилировать а просто загрузить в контроллер скомпилировав остальные блоки что будет?
    • Bot
      АСКОН выпустил крупное обновление своего PLM-решения для управления жизненным циклом изделий машиностроения и приборостроения. Новая версия содержит более 230 улучшений: новые возможности по управлению требованиями, интеграция с CAE-системами и управление расчетными данными (SPDM), удобные инструменты поиска, визуализации и доступа к конструкторским и технологическим данным, развитие кроссплатформенности и поддержки платформы Linux. В облике версии были учтены требования особо значимых проектов по созданию отечественного PLM-решения тяжелого класса для производства сложной высокотехнологичной продукции и замещения иностранных PLM-комплексов. PLM-решение АСКОН 23.1 включает серверные компоненты систем ЛОЦМАН:PLM и ПОЛИНОМ:MDM, совместимые с отечественными операционными системами на базе Linux. Это позволит разворачивать программный комплекс в смешанной конфигурации, когда серверные части работают на ОС семейства Linux, а клиентские приложения — одновременно на Windows и [...] View the full article
    • Holodilshik_R-717
      Добрый вечер, вопрос возник также и с версией Солидворкс 2021. Как заблокировать и не обновлять саму сборку/деталь в Солидворкс 2021?
    • nicomed
      @Shvg А можете сделать тестовую программку, с проверкой что у Вас она работает ? А то уже какой-то спортивный интерес просыпается ...
    • nicomed
      Самому уже интересно. Сейчас вставил в ADDIN - не работает. Вставил код с RunCommand (169,"") - отработало. SW2021 SP2 VS2022
    • Shvg
      Странно. Этот код был написан для SW2011. Там он работает. Правда про "*Normal To" было подсмотрено в API SW2013.  Сейчас попробовал в SW2023, компилировал в VS2015. Работает.
    • nicomed
      Как сам писал не делал ( да и для идеальной синтетической проверки, где разово сам выбираешь поверхности - не вижу смысла).. Сейчас полностью скопировал код (для чистоты эксперимента) еще добавил логирование после прохождения проверки на плоскость. Проверка на плоскость проходит, а метод не срабатывает.
×
×
  • Создать...