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

Сделай свою работу в Solidworks эффективнее


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

7 часов назад, Kir95 сказал:

По умолчанию новый путь до файла сделать в текущую папку модели и, может, разрешить перезаписывать существующий файл после предупреждения? В свойство "Наименование" попадает значение со слэшем, вместо существующего нижнего подчёркивания, не нашёл сходу, где убрать замену

Нашёл отключение замены нижнего подчёркивания на слэш в доп. настройках и кнопку копирования старого пути для нового. 

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

Скрытый текст

Option Explicit

Dim swApp As Object
Dim swModel As ModelDoc2
Dim fileSystem As New FileSystemObject
Sub main()

Dim pathName As String
Dim folderPath As String
Dim cmd As String

Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc

If swModel Is Nothing Then
    MsgBox ("No Model Open")
    Exit Sub
End If

pathName = swModel.GetPathName
folderPath = fileSystem.GetParentFolderName(pathName) & "\"

cmd = "C:\WINDOWS\explorer.exe " & folderPath

Shell cmd, vbNormalFocus

End Sub

 

Чтоб работал, нужно подключить библиотеку Microsoft Scripting Runtime в инструментах

Microsoft Scripting Runtime.jpg

 

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


3.2.1 SaveAsCopyReplace

- чуть поправил справку,

- убрал лишние кнопки в доп.настройках,

- запрос на перезапись существующей модели - старая версия перемещается в корзину,

- теперь и по сети удаление/перезапись старых версии - перемещает их через temp-папку виндовс в корзину. (определяет в пути "\\", если да, то перемещает модель и чертёж в с:\temp (у меня так определилась через environ "Temp"), а оттуда уже удаляется в корзину)

- поправил индикацию действий макроса

 

в полной мере не гонял его - урывками занимался ))

 

Благодарище за тестирование! и терпение! )

 

SaveAsCopyReplace.swp

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

3.2.1 SaveAsCopyReplac

SW 2016 sp5

При работе с верхней сборкой выдает две ошибки:

Первая:

Скрытый текст

s1.jpg

Если закомментировать else, то выскакивает вторая

Скрытый текст

s2.JPG

 

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

Если закомментировать else, то выскакивает вторая

Убрать это изменение и двумя строчками выше под Exit Sub добавить строку End if (возможно есть где-то ещё недоработки, но это то что есть на скрине открыт IF для передачи чертежа в коржину -при ошибке передачи, но не закрыт if).

 

4 часа назад, tompsongun сказал:

- запрос на перезапись существующей модели - старая версия перемещается в корзину,

Возможно вам так удобнее, но возможно стоит перемещать в папку TEMP/Старое или что-то подобное в том же месте.

 

4 часа назад, tompsongun сказал:

- теперь и по сети удаление/перезапись старых версии - перемещает их через temp-папку виндовс в корзину. (определяет в пути "\\", если да, то перемещает модель и чертёж в с:\temp (у меня так определилась через environ "Temp"), а оттуда уже удаляется в корзину)

По сети не логично утаскивать старую версию к кому-то на компьютер, было бы логичнее так же оставить на месте - переместив в какую нибудь папку вроде TEMP/OLD/старое и т.п. возможно добавив дату ререзва к названию файла, что бы файл не мог быть подгружен по ошибке при совпадении имён.

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

При работе с верхней сборкой выдает две ошибки

Проверил, если добавить End If как @Kelny пишет, то работает норм. Мне тоже удобней удалённый файл, если что не так получится, из корзины вернуть на место. В корзине быстрее выбрать "восстановить", чем копипастить из обычной папки

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

просто напрямую по сетке в корзину удалить не могу сделать - надо sid пользователя получить вроде как, т.к. путь к корзине  %systemdrive%\$Recycle.Bin\S-1-5-21-117....\  либо не разобрался

поэтому через перемещение на локальную машину, а потом в корзину.

 

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

 

3.2.1.1 исправление ошибки - пропустил оператор завершения условия.

 

SaveAsCopyReplace.swp

Ссылка на сообщение
Поделиться на других сайтах
09.06.2021 в 06:53, tompsongun сказал:

просто напрямую по сетке в корзину удалить не могу сделать - надо sid пользователя получить вроде как, т.к. путь к корзине  %systemdrive%\$Recycle.Bin\S-1-5-21-117....\  либо не разобрался

поэтому через перемещение на локальную машину, а потом в корзину.

 

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

 

3.2.1.1 исправление ошибки - пропустил оператор завершения условия.

 

SaveAsCopyReplace.swp 532 \u041a\u0431 · 7 скачиваний

Все пока работает отлично на 2014 солиде. Присоединяюсь только к просьбе уже озвученной: может сделать чтобы по умолчанию в ту же папку файл клался, а то приходится руками первый раз править, - маломальская потеря времени. Проблем с этим нет, но было бы вообще идеально.

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

День добрый, предлагаю мои вариации на тему: "SaveToPDF".

По сути повторение старого, но на  С#, и,  происходит создание подпапок по форматам.

 

З.Ы. исходники прилагаются, собранный exe-файл в папке bin/debug/

 

SaveToPDF.zip

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

@nicomed Попробовал файл с разными листами распечатать, создались папки с форматами и в каждой папке пдф-файл со всеми листами чертежа

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

@nicomed Попробовал файл с разными листами распечатать, создались папки с форматами и в каждой папке пдф-файл со всеми листами чертежа

Да "есть такая буква" ...

... исправлено.

SaveToPDF.zip

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

3.2.2 SaveAsCopyReplace

изображение.png

добавил выбор пути в доп.настройках для перемещения старых и заменяемых существующих моделей, правка справки.

 

из справки: Дополнительные настройки - Путь, куда перемещать исходные файлы + Папка - если поля пустые, удаление происходит в корзину или если по сети, через временную папку temp windows (пока так) в корзину. Если выбран 'Исходный Путь' -  перемещение произойдёт по этому пути + можно дополнительно указать папку (можно вложенные). Также можно указать свой путь. К перемещённым файлам добавится системная дата, чертёж на модель ссылаться не будет. При перемещении файлов в корзину дата добавляться не будет. Путь и папка запоминаются.

 

файл настройки перезапишется - новые опции добавились для запоминания пути бэкапа.

 

SaveAsCopyReplace.swp

 

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

День добрый, предлагаю мои вариации на тему: "SaveToPDF".

Раз пошла такая "пьянка" держите и мой вариант макроса данной тематики:

Оригинал брал у Артёма здесь: https://www.codestack.net/solidworks-api/import-export/export-sheets-pdf/

Поэтому копирайты вот они:

'*********************************************************************************************
'Copyright(C) 2020 Xarial Pty Limited
'Reference: https://www.codestack.net/solidworks-api/import-export/export-sheets-pdf/
'License: https://www.codestack.net/license/
'*********************************************************************************************

Чем отличается моя версия:

'*********************************************************************************************
' Изменения и дополнения от Snake 60
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' Последние изменения :: (26.04.2020) ::
''' в версии 1.0.3 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' - Убрал дублирование открытых папок при каждом сохранении
''' в версии 1.0.2 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' - Если в чертеже 2 или более страниц, то создаются файлы в формате ИмяФайла - ИмяЛиста.pdf
' - Если в чертеже 1 страница, то создается файл в формате ИмяФайла.pdf
''' в версии 1.0.1 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' - макрос сохраняет чертеж в формате PDF, создает папку PDF и открывает ее после сохранения
'*********************************************************************************************

 

Добавлю что еще в изменениях:

  • Добавил константу для пути сохранения
Const FOLDER_FOR_SAVING As String = "" 'сохраняем в папку с чертежем
Const FOLDER_FOR_SAVING As String = "PDF" 'сохраняем в указанную папку, папка создается автоматически
  • Добавил автоматическое закрытие чертежа (кому это не нужно комментируем или удаляем строку)
swApp.CloseDoc swDraw.GetTitle

 

Если в чертеже несколько листов, и выделен какой-либо из них, то сохраняется именно этот лист в формате ИмяФайла.pdf

Если не выделять конкретный лист, то сохраняются все листы в формате ИмяФайла - ИмяЛиста.pdf

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

Удобен, когда повешен на кнопку :)

OneClickPDF.zip

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

Доброе время суток!

Возник вопрос: каким образом можно получить массу сборки (модель в свойствах листа), находясь в чертеже, с помощью апи?

sw2016sp5

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

А зачем средствами АПИ если можно напрямую через свойства?

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

Нужно получить массу верхней сборки, чтобы вставить ее в эту таблицу.

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

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

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

Нужно получить массу верхней сборки, чтобы вставить ее в эту таблицу.

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

я не программист, но солид же делает спецификацию, в неё можно включить столбец масса, материалы и т.д.. То есть вам нужно (как мне кажется) просто использовать настроенный за ранее шаблон спецификации.

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

солид же делает спецификацию, в неё можно включить столбец масса, материалы и т.д..

так и делаю - в СП отображаются св-ва входящих компонентов, а мне нужна масса верхней сборки - желательно из св-в модели (ведь масса отображается в основной надписи чертежа)

Можно, конечно, заморочиться и просуммировать все входящие компоненты, перемножив на кол-во.

Но, думается, должен быть инструмент как вытянуть это св-во.

_____________________________________________________________________

Решил проблему - скопировал ссылку со сборочного чертежа ($PRPSHEET:"Масса_ФБ") и вставил в СП 

Всем спасибо за участие

 

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

3.2.3 SaveAsCopyReplace

изображение.png

-если нет чертежа, в окне макроса подсвечивает сие;

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

SaveAsCopyReplace.swp

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

Но, думается, должен быть инструмент как вытянуть это св-во.

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

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

3.2.3 SaveAsCopyReplace

Не определены 2 переменные. В остальном полет нормальный!

Скрытый текст

изображение_2021-06-18_153408.png

 

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

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

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

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

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

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

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

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

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

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

    • malvi.dp
    • Valedol



  • Сообщения

    • GHEB
      К сожалению у меня не было и нет пока что возможности проверить, но я практически точно уверен что это поможет. Удвительно что я сам не заметил эту галку,в ернее её отсутствие
    • Ветерок
      Что касается освоения ТФ, то лично для меня это только живое общение с человеком, который сможет отвечать на кучу вопросов, которые возникают у меня..
    • Orchestra2603
      Слушайте, вы меня конкретно раздражаете... Складывается впечатление, что я на экзамене. Вы если хотите какую-то мысль донести, то говорите прямо и понятно! Не надо себе цену набивать.   Я могу сказать прямо и честно. Я вот прямо деталей реализации алгоритмов поиска собственных частот не знаю. Не было у меня задачи заниматься разработкой солверов и т.п. И заниматься этим сейчас у меня нет ни времени, ни мотивации. Будет задача - буду вникать и разбираться. Из своей универовской программы знаю в общих чертах, что можно преобразованиями подобия (поворота, отображения и т.д.) привести матрицы системы к особой форме, из которых почти автоматически или очень просто извлекаются СЗ. В простейшем случае к диаганальной форме, но есть и верхние/нижние треугольные и еще какие-то всякие специальные. Собственные вектора обычно как-то получаются из столбцов матрицы этого преобразования. Есть  соответствующие алгоритмы. Помню про вращение Якоби, знаю, что есть QR (QZ для обощенной задачи). Знаю, что есть пространства Крылова, и там итерационные методы их спользуют. Знаю, что в Ансисе для симметричных задач используется Ланцош, и для полуопределенных матриц он также прекрасно себя показывает. Я хз, что там конкретно происходит.   В теории конечно можно найти корни харктеристического полинома, подставить их и искать базис решения вырожденной системы, чтобы найти СВ. Я понимаю, что на практике вряд ли кто-то так делает, особенно если размерность задачи большая, прост опотому что не эффективное это занятие. Но такая возможность есть, и оно работает.   Я не знаком с какими-либо обстоятельствами, которые фундаментально препятствуют решению обобщенной задачи на собственные значения для случая с вырожденной K. Т.е. так препятствуют, что невозможно найти метод решения такой задачи в прицнипе. Хотя, по-хорошему, контрпримерт на такой тезис уже был дан выше.   А вы знакомы? Тогда пишите прямо! Что конкретно мешает? На каком этапе это возникает? В чем причина?  И главное.. почему Ансис/Маткад/Матлаб/Солидворкс это все-таки решают? Что, магия или заговор? На эту вашу шарманку "Такую задачу реши, и такую, и такую" я больше вестись не буду. Как будто у меня нет других дел, как вам что-то демонстрировать.
    • Jesse
      это вопрос к специалстам по грунтам..)) @Fedor@Fedor
    • Борман
      Основной вопрос в том, правда ли что в таком "разжиженом" грунте возникает сила Архимеда от плотности 1,8т/м3 ?
    • Jesse
      самый общий случай - надо поверхностный интеграл от давления взять по всей площади (англояз. версия вашей ссылки Вики) Если снизу не будет воды, значит там не будет давления, а значит результирующая сила будет сверху давить, её вектор будет вниз направлен   всё так. Ну в случае подлодки подробности не знаю, мб хватит и того, что какие -то участки под дном для затекания морской воды перекрыты будут, и уже лодку придавит вниз..)
    • BSV1
      Здесь https://disk.yandex.ru/d/il8bxSu41Kw0Bw можно скачать Начальный курс по ТФ Максимова и Протасовой. Курс старый, но для старта вполне подойдет.
    • Говорящий Огурец
      Вряд ли это радиатор как "вещь в себе". Скорее поверю, что это некая интегрированная в корпусную деталь структура. И не всегда возможна обработка дисковыми фрезами, хотя она, из моей практики, самая производительная. Если говорить про обработку концевушками, то есть специальные стратегии обработки высоких нежестких ребер, когда чередуется черновая и чистовая обработка, послойно и в определенном порядке, с целью минимизировать отгибы и вибрации. Где-то у меня даже картинки были с описанием, но что-то не могу их найти... :(
    • BSV1
      Забавно          Аккуратнее надо с выбором курсов. 
    • Fedor
      А на дне закон Архимеда не действует ?    https://ru.wikipedia.org/wiki/Закон_Архимеда     :)    https://upload.wikimedia.org/wikipedia/commons/transcoded/3/3c/Закон_Архимеда.webm/Закон_Архимеда.webm.720p.vp9.webm
×
×
  • Создать...