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

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


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

28 минут назад, Kir95 сказал:

считает общую длину линий эскиза, копирует её в буфер обмена (чтобы вставить в заметку или в свойства) и показывает в сообщении

длина линий эскиза.png

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


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

Округление в solidworks в уравнениях

round  (число, точность)

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

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

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

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

Изменено 4 часа назад пользователем tompsongun

 

 

Большое спасибо за такую подсказку!

ваш подход даже суммарную длину считает компонентов в сборке - это то, что нужно=)

 

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

 

 

2 часа назад, Kir95 сказал:

Переделывал пример из справки солида - макрос считает общую длину линий эскиза, копирует её в буфер обмена (чтобы вставить в заметку или в свойства) и показывает в сообщении. Работает в модели и в чертеже. Эскиз выбрать в дереве предварительно

мощь!

скажите, в какую строку свойств записывается длина? из текста макроса я не всё понял

и есть ли какие-либо ограничения на эскиз? (замкнутый или многоконтурный)

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

в какую строку свойств записывается длина? из текста макроса я не всё понял

и есть ли какие-либо ограничения на эскиз?

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

Для возможности копировать в буфер винды нужно ещё библиотеку подключить или добавить форму, чтобы автоматом библиотека подключилась

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

Всем добрый день.

Было давно программулина Key.exe (посадочные места под крепеж, написана на Delphi

как утверждает автор под windows ХP),

Дистрибутив могу скинуть если не найдется.

При ее запуске подгружается дополнительный файл (data.dat).

Хотел запускать ее через макрос в солиде.

Сделал файл swp. Но при запуске выскакивает окошко не могу найти data.dat,

хотя он и лежит рядом. В написании макросов не силен.

Может кто подскажет как его запустить.

 

 

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

программулина Key.exe

 

6 минут назад, Crab сказал:

Хотел запускать ее через макрос в солиде.

Сделал файл swp.

А напрямую, без макроса, EXE запускается? 

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

пользовательская панель инструментов. аддон. изображение.png

 

https://kuhneng.de/en/custom-toolbar-for-solidworks/

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

А напрямую, без макроса, EXE запускается? 

Да. Отдельно запускается.

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

Сделал файл swp. Но при запуске выскакивает окошко не могу найти data.dat,

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

Да. Отдельно запускается.

Так если отдельно запускается, то макрос всего лишь запускает EXE:
 

Цитата

Dim MyAppID As Variant
Dim Sourrce As String
 

Sub main()

' Run the custom property application (имя макроса и запускаемого файла совпадают и лежат в одном месте)
Source = swApp.GetCurrentMacroPathName             ' Get macro path+filename
Source = Left$(Source, Len(Source) - 3) + "exe"    ' Set source filename

MyAppID = Shell(Source, 1)
End Sub

 

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

Не встречал ли кто макрос для расположения всех листов чертежа в размер экрана? Пока что делаю это кнопкой F (либо двойным щелчком колеса мыши), но есть две проблемы:

 

1. Приходится делать это вручную и каждый лист.

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

 

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

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

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

Работает, если солид 2017 и моложе, до этого не было в апи такой штуки

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

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

'SOLIDWORKS API Help  SW2017
'Zoom Drawing Sheet to Maximum Size in Window Example (VBA) SW2017
'This example shows how to zoom a drawing sheet to its maximum size within the window.
Option Explicit
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swDraw As SldWorks.DrawingDoc
Dim swSheet As Sheet
Dim vSheetNames As Variant
Dim swModelDocExt As SldWorks.ModelDocExtension
Dim errors As Long
Dim warnings As Long
Dim swView As SldWorks.View
Dim i As Integer

Sub main()
    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    Set swModelDocExt = swModel.Extension
    Set swDraw = swModel
    swModel.ClearSelection2 (True)
    vSheetNames = swDraw.GetSheetNames
    For i = 0 To UBound(vSheetNames)
        swDraw.ActivateSheet vSheetNames(i)
        Set swSheet = swDraw.Sheet(vSheetNames(i))
    swModelDocExt.ViewZoomToSheet
    Next
End Sub

 

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

Возможно это??

Хороший макрос, но листы с большими видами не подгоняет.

 

26 минут назад, Kir95 сказал:

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

:k05108:

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

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

Выбирать лист и добавить горячую клавишу для ВИД-УВЕЛИЧИТЬ ВЫБРАННЫЙ ЭЛЕМЕНТ или если есть в 2017 УВЕЛИЧИТЬ ЛИСТ/ZoomToSheet (или как-то так).

 

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

Хороший макрос, но листы с большими видами не подгоняет.

Вероятно можно заменить: 

swModelDocExt.ViewZoomToSheet

на

swModelDocExt.SelectByID2 vSheetNames(i), "SHEET", 0, 0, 0, False, 0, Nothing, 0
swModel.ViewZoomToSelection

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

Выбирать лист и добавить горячую клавишу для ВИД-УВЕЛИЧИТЬ ВЫБРАННЫЙ ЭЛЕМЕНТ или если есть в 2017 УВЕЛИЧИТЬ ЛИСТ/ZoomToSheet (или как-то так).

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

 

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

Вероятно можно заменить: 

Попробовал, получается слишком мелко, остаются большие поля (см. чуть выше писал).

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

Попробовал, получается слишком мелко, остаются большие поля (см. чуть выше писал).

    Dim Width As Double
    Dim Height As Double
    swSheet.GetSize Width, Height
    swModel.ViewZoomTo2 0, 0, 0, Width, Height, 0

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

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

А может файлы чертежа переименовать по содержимому полей (*обозначение или наименование, материал, длина или размеры)?

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

Kelny

Сама программа как я понимаю запустилась и выдает что не находит дополнительный файл,

Хотя он и лежит рядом.

777.JPG

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

Всем добрый день.

Было давно программулина Key.exe ...

Дистрибутив могу скинуть если не найдется.

Скиньте дистрибутив, посмотреть...

 

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

Товарищи, нужна ваша помощь. Нашел на форуме скрипт, который автоматизирует выведение разверток в dxf. Но со временем кэш солида засоряется, и скорость работы падает значительно (если за 20 минут он выводит спокойно 100 деталей, то за час двести с небольшим), можно ли как то настроить, чтобы кэш автоматически очищался, или что-то в этом роде.

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

повторяю ещё раз - Вы апнули, что уже было обсуждено - полезности в диалоге наших постов нет - засорение темы).

Судя по всему кому-то ЧСВ не дает правильно оценивать происходящее, отсюда "много букафф" про личные обиды и засорение темы. Ну да ладно, уже выше писал, что мои сообщения лишь опосредованно к Вам относятся, кому будет полезно, возьмет на вооружение.

 

Кстати про полезности - скрины то мои смотрели, пробовали так сделать, какие результаты?

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

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

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

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

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

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

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

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

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

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

    • Dmitriy618



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