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

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


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

5 часов назад, malvi.dp сказал:

Не определены 2 переменные.

даа, причём самые главные ))

спасибо Вам!

 

извините, исправился:

 

SaveAsCopyReplace 3.2.3.1.zip

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


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

Буфер резинометаллический Kipp, тип D

Это скорее всего для темы "Стандартные изделия и компоненты"

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

@Plumber , спасибо! попросил переместить пост.

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

Изменено пользователем tompsongun
Ссылка на сообщение
Поделиться на других сайтах
15.06.2021 в 23:20, Snake 60 сказал:

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

Оригинал брал у Артёма здесь: 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 30 \u041a\u0431 · 14 скачиваний

а как удалить эту строку с закрытием чертежа? а то не разбираюсь от слова совсем

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

Макрос включения/отключения в настройках "отметить размеры для чертежа"

 

Dim swApp As SldWorks.SldWorks
Sub main()
    Set swApp = Application.SldWorks
If swApp.GetUserPreferenceToggle(swDrawingMarkAllDimensionsForDrawing) = False Then
    MsgBox "Размеры будут отмечены для импорта в чертежи"
 swApp.SetUserPreferenceToggle swDrawingMarkAllDimensionsForDrawing, True
 Else
    MsgBox "Размеры не будут отмечены для импорта в чертежи"
 swApp.SetUserPreferenceToggle swDrawingMarkAllDimensionsForDrawing, False
End If
End Sub

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

@Deprisol Держите версию без закрытия чертежа: One_Click_PDF.swp

Писал макрос, который бы просто сохранял PDF:

 

Sub main()

Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swExportPDFData As SldWorks.ExportPdfData
Dim strFilename As String
Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc

' Проверка, открыт ли файл
If swModel Is Nothing Then
    swApp.SendMsgToUser ("Откройте файл чертежа для сохранения в PDF!")
    End
    Exit Sub
End If

' Проверка, открыт ли чертёж
If swModel.GetType <> swDocDRAWING Then
swApp.SendMsgToUser ("Откройте чертёж для сохранения в PDF!")
    End
    Exit Sub
End If

strFilename = swModel.GetPathName ' - путь

' Проверка, сохранён ли чертёж
If strFilename = "" Then
    swApp.SendMsgToUser ("Чертёж ещё не сохранён")
    
    ' КОД - СОХРАНЕНИЕ ЧЕРТЕЖА В ПАПКУ С МОДЕЛЬЮ (путь с вида 1 например)
    
End If

' Сохранение PDF
strFilename = Left(strFilename, Len(strFilename) - 6) & "pdf"
Set swExportPDFData = swApp.GetExportFileData(1)
swModel.Extension.SaveAs strFilename, 0, 0, swExportPDFData, 0, 0

End Sub

 

застрял на:   ' КОД - СОХРАНЕНИЕ ЧЕРТЕЖА В ПАПКУ С МОДЕЛЬЮ (путь с вида 1 например)"

наткнулся на Ваш макрос, он выводит "Пожалуйста сохраните чертеж!"

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

для этого нужно, как я полагаю, получить путь из свойств вида (выделено на картинке)

не знаю как, подскажете?

Свойства вида.png

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

@mrNicetone проверяйте:

 

Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swDraw As SldWorks.ModelDoc2
Dim swView As SldWorks.View
Dim swSheet As SldWorks.Sheet
Dim swExportPDFData As SldWorks.ExportPdfData
Dim strFilename As String
Dim strDrawFilename As String
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()

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

' Проверка, открыт ли файл
If swModel Is Nothing Then
    swApp.SendMsgToUser ("Откройте файл чертежа для сохранения в PDF!")
    End
    Exit Sub
End If

' Проверка, открыт ли чертёж
If swModel.GetType <> swDocDRAWING Then
swApp.SendMsgToUser ("Откройте чертёж для сохранения в PDF!")
    End
    Exit Sub
End If

Set swDraw = swModel
Set swSheet = swDraw.GetCurrentSheet
Set swView = swDraw.GetFirstView 'получаем первый вид, но первый вид - это Лист
Set swView = swView.GetNextView 'переключаемся на следующий вид - это первый вид на листе

strFilename = swDraw.GetPathName ' - путь

' Проверка, сохранён ли чертёж
If strFilename = "" Then
    ' КОД - СОХРАНЕНИЕ ЧЕРТЕЖА В ПАПКУ С МОДЕЛЬЮ (путь с вида 1 например)
    'swApp.SendMsgToUser ("Чертёж ещё не сохранён")
    strFilename = swView.GetReferencedModelName
    strDrawFilename = Left(strFilename, Len(strFilename) - 6) & "SLDDRW"
    longstatus = swDraw.SaveAs3(strDrawFilename, 0, 2)
End If

' Сохранение PDF
strFilename = Left(strFilename, Len(strFilename) - 6) & "pdf"
Set swExportPDFData = swApp.GetExportFileData(1)
swDraw.Extension.SaveAs strFilename, 0, 0, swExportPDFData, 0, 0

End Sub

 

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

@Snake 60 а можно макрос который бы в модель прописывал в свойство путь.. скажем где находится чертеж и сборка, а в сборке куда ссылается на детали.

такое возможно?

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

@tompsongun

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

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

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

такое возможно?

Теоретически можно, надо пробовать...

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

@Snake 60 спасибо. Ошибка вылетает (вроде при попытке получить путь к модели)

91.png

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

Save DRW&PDF.swp

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

Кто создавал OneClickPDF. Как сделать так, чтобы при выводе пдф учитывалась галка "Печатать белые линии, текст в черном", а точнее отсутствие галки. Часто надо закрасить что-то белым цветом (или расчистить зону белой заливкой). С PDFCreator проблем не было, а тут не учитывается. А так было бы здорово, гораздо быстрее.

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

@mrNicetone

8 часов назад, mrNicetone сказал:

Ошибка вылетает (вроде при попытке получить путь к модели)

Странно, у меня нормально отрабатывает. Так а модель то сохранена, чтобы было откуда путь брать?

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

 

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

Кто создавал OneClickPDF. Как сделать так, чтобы при выводе пдф учитывалась галка "Печатать белые линии, текст в черном", а точнее отсутствие галки. Часто надо закрасить что-то белым цветом (или расчистить зону белой заливкой). С PDFCreator проблем не было, а тут не учитывается. А так было бы здорово, гораздо быстрее.

Если Вы про мой макрос, то скорее всего эти настройки не задействованы, т.к. по факту идет не печать, а экспорт. Хотя могу ошибаться, надо рыть букварь, чтобы убедиться в этом.

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

Есть ли возможность в солиде реализовать быстрое обозначение сварных швов? Чтоб типа обозначил и выбрал из списка избранных шов который необходим

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

@vik300001 Конечно, настраиваете обозначение сварного шва как Вам нужно и сохраняете в Библиотеку проектирования.

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

Конечно, настраиваете обозначение сварного шва как Вам нужно и сохраняете в Библиотеку проектирования.

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

А как сохранить свою "Таблицу сварных швов" (таблица + текст ). В библиотеку не хочет, из файла эксель вставляю через макрос - теряет текст...

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

А как сохранить свою "Таблицу сварных швов" (таблица + текст ). В библиотеку не хочет,

Настраиваете свою таблицу как Вам надо и сохраняете как шаблон (на крестике из стрелок, который в левом верхнем углу таблице, нажимаете правой кнопкой мыши и выбираете пункт Сохранить как шаблон) Потом этот шаблон и применяете, а не стандартный, который был ранее.

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

@none , в настройках "Путь, куда перемещать исходные файлы: ...." - это для "удаления" файлов со старым именем в указанную папку.  Да, скорее всего, тут надо перефразировать иначе как-то "..перемещать при удалении .."

 

например, сборка1 с деталями 2 и 3. сборка в д:\ххх\ккк\

деталь2 в д:\ххх\ккк\

деталь3 в в д:\сссс\чччч\

 

в настройках куда перемещать "Исходная папка" + "Старое" и в главном окне "Удалить исходную.."

 

если пересохраняем сборку1 как сборка4, то сборка1 переместится в д:\ххх\ккк\Старое\

если пересохраняем деталь2 как деталь5, то деталь2 переместится в д:\ххх\ккк\Старое\

если пересохраняем деталь3 как деталь6, деталь3 переместится в д:\сссс\чччч\Старое\

 

в  главном окне "Новый путь до файла:" запоминает последний введенный путь.

 

т.е., как я понимаю, Вы предлагаете добавить опцию, чтобы значение "Новый путь до файла:" = "Исходный путь:" в главном окне программы для каждой модели подлежащей переименованию?

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

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

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

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

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

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

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

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

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

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

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

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




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