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

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

Хочу удалить пустые папки в дереве сборки. Думаю, что примерно выглядеть должно так: перебираем все папки, выбираем папку, проверяем есть ли в ней потомки, если потомков больше 0 - удаляем. Может кто знает команду, которая проверяет есть ли в папке потомки или берет их количество. Буду очень признателен.

 

Эти волшебным образом не работают:

ChildCount = Feature.IGetChildCount()

Child = Feature.GetChildren()
 

 

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


1 час назад, alek77 сказал:

Хочу удалить пустые папки в дереве сборки. Думаю, что примерно выглядеть должно так: перебираем все папки, выбираем папку, проверяем есть ли в ней потомки, если потомков больше 0 - удаляем. Может кто знает команду, которая проверяет есть ли в папке потомки или берет их количество. Буду очень признателен.

 

Эти волшебным образом не работают:

ChildCount = Feature.IGetChildCount()

Child = Feature.GetChildren()
 

 

Вопрос снят, разобрался

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

Вопрос снят, разобрался

Так в этом случае ответ пишут, а не снимают заданный вопрос без ответа.

Ссылка на сообщение
Поделиться на других сайтах
В 03.08.2018 в 10:12, Kelny сказал:

Так в этом случае ответ пишут, а не снимают заданный вопрос без ответа.

сорри, не все правила еще знаю, буду исправляться, готовый макрос положу в тему Сделай свою работу в Solidworks эффективнее

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

Кто нибудь с api в pdm занимался? Есть задача по списку состава изделия скопировать (сделать общими) файлы в другую папку хранилища. Не могу найти команду создания (vba или с) общей детали в pdm... Если кто сталкивался - ткните в ссылку плиз..

Ссылка на сообщение
Поделиться на других сайтах
  • 1 месяц спустя...

Здравствуйте. Подскажите, можно ли как то с помощью макроса сделать, чтобы компонент не просто вставлялся по какой-то точке в сборку (addcomponent5), а прилеплялся бы к мышке и бегал вместе со стрелкой? ) И потом куда нажали, туда и вставился. )

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

Здравствуйте. Подскажите, можно ли как то с помощью макроса сделать, чтобы компонент не просто вставлялся по какой-то точке в сборку (addcomponent5), а прилеплялся бы к мышке и бегал вместе со стрелкой? ) И потом куда нажали, туда и вставился. )

В 17 версии именно так и происходит, без макроса

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

В 17 версии именно так и происходит, без макроса

Не, в 15 версии тоже. ))) Но мне нужно именно с помощью макроса добавлять компоненты, но чтобы при этом работало именно так, как я выше описал. )

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

а прилеплялся бы к мышке и бегал вместе со стрелкой

Нет.

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

в 15 версии тоже. ))) Но мне нужно именно с помощью макроса добавлять компоненты, но чтобы при этом работало именно так, как я выше описал. )

Так может тогда просто команду вставки нового компонента запустить?

swModelDocExt.RunCommand  swCommands_InsertComponents, ""

http://help.solidworks.com/2015/english/api/sldworksapi/run_solidworks_commands_and_synthesize_mouse_events_example_vb.htm

http://help.solidworks.com/2015/english/api/swcommands/SOLIDWORKS.Interop.swcommands~SOLIDWORKS.Interop.swcommands.swCommands_e.html

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

Так может тогда просто команду вставки нового компонента запустить?


swModelDocExt.RunCommand  swCommands_InsertComponents, ""

http://help.solidworks.com/2015/english/api/sldworksapi/run_solidworks_commands_and_synthesize_mouse_events_example_vb.htm

http://help.solidworks.com/2015/english/api/swcommands/SOLIDWORKS.Interop.swcommands~SOLIDWORKS.Interop.swcommands.swCommands_e.html

О, как вариант. ) Надо попробовать.

23 минуты назад, Kelny сказал:

Так может тогда просто команду вставки нового компонента запустить?


swModelDocExt.RunCommand  swCommands_InsertComponents, ""

http://help.solidworks.com/2015/english/api/sldworksapi/run_solidworks_commands_and_synthesize_mouse_events_example_vb.htm

http://help.solidworks.com/2015/english/api/swcommands/SOLIDWORKS.Interop.swcommands~SOLIDWORKS.Interop.swcommands.swCommands_e.html

Попробовал, и честно говоря, не очень понял, как с этим вообще работать. )) Буду разбираться...

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

Попробовал, и честно говоря, не очень понял, как с этим вообще работать. )) Буду разбираться...

Просто активируется инструмент Вставка- Из файла...

Если кроме сборки открыт какой либо файл, то он отображается в списке инструмента и его можно выбрать для последующей вставки.

 

Проверьте, что есть такая константа, а то в отсутствии соответствия констант числам из таблицы может вызываться другая команда, например, открыть файл (нулевое значение). Или сразу определите: swCommands_InsertComponents = 13

 

Цитата

swCommands_InsertComponents=13

swModelDocExt.RunCommand swCommands_InsertComponents, ""

или

Цитата

swModelDocExt.RunCommand 13, ""

 

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

Просто активируется инструмент Вставка- Из файла...

Если кроме сборки открыт какой либо файл, то он отображается в списке инструмента и его можно выбрать для последующей вставки.

 

Проверьте, что есть такая константа, а то в отсутствии соответствия констант числам из таблицы может вызываться другая команда, например, открыть файл (нулевое значение). Или сразу определите: swCommands_InsertComponents = 13

 

или

 

Спасибо. )

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

Здравствуйте! Подскажите, пожалуйста! Создал макрос, который создаёт нужный мне текст заметки и вставляет её в чертёж.

Координаты положения заметки (например: myAnnotation.SetPosition(0.2, 0.25, 0)) в макросе не прописаны, поэтому точкой вставки заметки

является та точка, куда я ткнул последний раз мышкой в экран перед запуском макроса.

Как в макросе достать координаты этой последней точки. Хочу использовать их в написании другого макроса.

Ссылка на сообщение
Поделиться на других сайтах
23 минуты назад, Кузнецов Антон сказал:

Как в макросе достать координаты этой последней точки. Хочу использовать их в написании другого макроса.

Как вариант EVENTS действий мыши: http://help.solidworks.com/2015/english/api/sldworksapi/Run_SOLIDWORKS_Commands_and_Synthesize_Mouse_Events_Example_VB.htm

 

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

Здравствуйте! Подскажите, пожалуйста! Создал макрос, который создаёт нужный мне текст заметки и вставляет её в чертёж.

Координаты положения заметки (например: myAnnotation.SetPosition(0.2, 0.25, 0)) в макросе не прописаны, поэтому точкой вставки заметки

является та точка, куда я ткнул последний раз мышкой в экран перед запуском макроса.

Как в макросе достать координаты этой последней точки. Хочу использовать их в написании другого макроса.

Можно попробовать метод GetSelectionPoint2 интерфейса ISelectionMgr.

 
Ссылка на сообщение
Поделиться на других сайтах
В ‎14‎.‎09‎.‎2018 в 21:36, Shvg сказал:

Можно попробовать метод GetSelectionPoint2 интерфейса ISelectionMgr.

Спасибо. Странно только, что в чертеже, если не выбрана какая-либо точка или объект, координата "z" не ровно "0", а очень

близкая к нулю цифра.

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

Здравствуйте! Подскажите, а есть какой-нибудь метод (функция, не знаю, как правильно называется), без кучи кода, чтобы сохранить BOM в Excel? Что-нибудь вроде BomSaveExcel. )))

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

без кучи кода это Вставка-Таблица-Спецификация в файле эксель. Но это не интересно, интересно с кучей кода, я когда-то выкладывал сюда свой вариант. 

 

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

Посоветуйте, как научиться делать ехе из макросов, или с чего начать копать в данном направлении? 

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

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

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

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

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

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

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

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

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

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

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



  • Сообщения

    • Mr_Gray
      Если и расфрезеровывать, то обязательно с коррекцией радиуса инструмента G41, чтобы попасть в середину поля допуска. Но лучше все же разверткой или расточной головкой.
    • lem_on
      При хорошей геометрии станка, можно и расфрезеровать. Если неглубокие отверстия, можно и тс сверлом сразу размер получить.
    • Snake 60
      Скорее всего исправляли в конкретной сборке, для конкретных тел. Насколько я помню, надо в самом эскизе профиля заполнить свойство Description
    • Snake 60
      Делаете дырку в свае - вставляете в нее трубу и 2 человеко-силы крутят сваю ) Дёшево и сердито и не нужен никакой планетарный редуктор ))
    • gudstartup
      вы всегда ищите свой путь или будете делать то что вам советуют? с самого начала прежде чем приступать к экспериментам вам нужно было вынуть носитель и сделать образ. diskcopy делает копию гибкого диска на другой а вам надо сделать образ жесткого диска или карты памяти. делайте как советует @Viktor2004 иначе еще чего нибудь сломаете или вам станок не нужен и вы его приобрели для экспериментов ? вот а печатной машинке из прошлого нельзя а вот на синумерике можно - удивительные вещи в настоящем происходят!! на 100 % уверен что там не модуль а либо писимиси ай либо жд @mircomax81 хотите работать в дос почитайте помощь по командам 
    • PuKoLLleT
      Доброго дня всем. Поделитесь опытом,раньше такое не доводилось делать. На торце фланца нужно сделать  восемь отверстий ф17H7 на токарно-фрезерном станке с осью Y ,имеется ManualGuide.В моем понимании нужно просверлить,а затем торцевой фрезой расточить нужный диаметр.Получится такой фокус,или надо разверткой доводить нужный размер?  Стойка Fanuc 0i-Tf.
    • Snake 60
      Всё верно, я даже русификатор делал для него (ушло на это где-то около года). Хороший софт был, я всех знакомых на него подсадил в свое время :) У меня даже где-то образ на виртуалке лежит с SW2014+MechSoft, Жаль, что автодеск его поглотил, а не DS :( А по сути вопроса, проектировал двухступенчатый планетарный редуктор в свое время. Что было нужно: Справочник по планетаркам (автора не помню, если надо поищу), из софта MathCAD + GearTeq (софтина идет вместе с GearTrax, только рассчитывает и моделирует несколько зацеплений согласно выбранной схеме, в том числе планетарки) Ой и ошибаетесь. Звездочки - не равно зубчатые колеса в планетарке) Мы намучились с малой точностью изготовления на эл.эрозии, а Вы лазером ))) Был собран опытный образец редуктора с незакаленными деталями, чисто проверить геометрию, отладить сборку. Так потом начальство этот редуктор сказало испытать в бою, как я не противился)) Помер за пару дней интенсивных нагрузок ))) Материал, термообработка и точности изготовления решают )
    • Snake 60
      @Тихоход  Ещё один вариант - изучать программирование и писать свою программу/макрос. Вот пример конфигуратора двери: https://www.youtube.com/watch?v=wv4HryWQBSk
    • mircomax81
      Посредством Diskcopy можно сделать адекватную копию на флоппи диск?
    • Andrey_kzn
      Да, ведь советовали автору вытащить жёсткий диск и сделать образ. Неужели самому не интересно, как устроен этот старый промкомпьютер? Там может стоять как жёсткий диск, так и CF-карта, или же Disc-on-chip или Disc-on-module.  Как-то очень давно, на подобном промышленном оборудовании (большая печатная машина) я не смог перенести  ПО с родной CF - карты на другую, такого же размера но другой фирмы. Была также станочная оболочка под досом.  Образ я делал Нортон гостом, развернул его на другую CF-карту без проблем. Машина загрузилась нормально и работала ровно 2 дня, на неродной CF-карте,  потом зависла, и отказалась загружаться. Пришлось вызывать сервисника. От него мы узнали, что нельзя просто так взять и заменить карту  - носитель системного ПО, на другую. А полезли мы туда, так как руководство захотело печатать отчёты по работе машины. В станочном ПО такая функция была. Вот только принтер надо было купить у фирмы - производителя этой самой машины. В попытках заставить работать другой принтер мы редактировали файл  AUTOEXEС.BAT, на предмет загрузки драйвера принтера, ничего не получилось, зато перестали открываться некоторые страницы станочного ПО.  Образ у нас был давно снят, и мы развернули его на другую карту памяти. Родную карту я трогать не стал (как чувствовал, что нельзя ). Сервисник восстановил ПО с архивной дискеты на родную карту памяти, и всё заработало. Дискеты с архивами ПО шли вместе с документацией к машине.  Там были дискеты с Досом, станочной оболочкой, параметрами приводов, программой ПЛК. Он же и предупредил нас о предельно аккуратном обращении с родной картой памяти, и посоветовал немедленно сделать образы с архивных дискет, что мы сразу и проделали.. Вот такой сюрприз от машины эпохи Дос.
×
×
  • Создать...