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

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


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

Написать собственный Explorer?...

Каюсь, я тут немного переборщил...Хотя, если нет необходимого функционала, а он нужен для специфических задач, то почему бы и нет... А так мне кажется, что для вашей проблемы, сам SW Explorer вроде бы и не нужен. Хотя конкретную вашу задачу я не знаю.
Ссылка на сообщение
Поделиться на других сайтах


...А так мне кажется, что для вашей проблемы, сам SW Explorer вроде бы и не нужен. Хотя конкретную вашу задачу я не знаю.

Напротив, приведённая мною задачка подготовки изначально названных по типу "АБЫ-КАК.00Х Угадайка" (к тому же без всякого заполнения атрибутов) электронно-цифровых макетов к погружению в SWR-PDM решается преимущественно при помощи SolidWorks Explorer и небольшого плагинчика непосредственно к SolidWorks.

Другое дело, что без принудительного обновления файлов постоянно выползают какие ни будь ошибки, а SolidWorks Task Scheduler стоит далеко не на каждом рабочем месте (по крайней мере в той версии SolidWorks, что у нас эксплуатируется). Да и просто принцип одного окна хотелось бы таки реализовать хоть однажды. Есть у нас и ещё парочка интересных и даже совершенно необходимых для коллективных работ задумок. Вот только кто бы нам подсказал про API к SolidWorks Explorer. :surrender:

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

Вот только кто бы нам подсказал про API к SolidWorks Explorer.

Справка по функциям API, которые использует и SW Explorer: ....\SolidWorks\api\swdocmgrapi.chm

Библиотека, где эти функции находятся, обычно: c:\Program Files\Common Files\SolidWorks Shared\SwDocumentMgr.dll. Правда, она требует лицензии...

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

Правда, она требует лицензии...

То есть лицензионного SolidWorks для таких фокусов недостаточно, а требуется ещё что-то?
Ссылка на сообщение
Поделиться на других сайтах

...требуется ещё что-то?

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

То есть лицензионного SolidWorks для таких фокусов недостаточно, а требуется ещё что-то?

Так в справке по указанному месту:

....\SolidWorks\api\swdocmgrapi.chm

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

К сожалению SWR говорят что это невозможно в принципе... неужели не врут?

Получить лицензионный ключ?

Напишите письмо на apisupportаsolidworks.com примерно следующего содержания:

May I get SolidWorks Document Manager API License Key?

Получите в ответ, что-то вроде этого (с прикреплённым файлом):

I can send a document manager license key, but first I will need you to sign (on the "by" line) the attached End User's License Agreement. You can scan/email it back or fax (978-318-5259) whichever is easier for you. Once I receive it, I can generate a key for you.

Regards,

API Support

Royalty_Free_and_re_distributable.doc

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

авто создание dxf.в архиве макрос

dxf.rar

И как этим пользоваться??? :wallbash:
Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...

Есть идея простановки сварных швов в солиде. В настоящее время солид дает нам возможность создания сварного шва в виде контекстной детали установленного вида. В результате должно получиться множество доп.деталей, соответствующих каждому из сварных швов. Однако, нам для получения чертежа сварной сборки не очень-то нужно (а по ЕСКД и вообще не нужно) изображать в 3-D эти самые швы, только трата выч.ресурсов.

Предлагается:

Для каждой детали, которая будет привариваться в сборке ввести свойство, помечающее ее кромку для сварки. В свойстве заложим тип шва, ГОСТ его и т.д.

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

Вставить таблицу в сб.чертеж.

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

С уважением ко всем и прочая, прочая, прочая.

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

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

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

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

Надоело лазить в св-ва листа для изменения масштаба и

задолбало окошко с предложением масштабирования примечаний

В результате родился макрос.

Может кому-то и пригодится.Масштаб.rar

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

В результате родился макрос.

Может не совсем разобрался, но чтобы это сообщение не отображалась при каждой загрузке формы:
swApp.SendMsgToUser ("Масштаб листа (вида) не сответсвует ГОСТ")
неплохо бы перед меткой ошибки выходить из процедуры:
exit sub

scale_error:

swApp.SendMsgToUser ("Масштаб листа (вида) не сответсвует ГОСТ")

Да и почему бы не сравнивать масштаб до первого совпадения, заменив ваши строки таким кодом:

If OptionButton3.Value = True Then

If ComboBox1.Value = "1:1" Then

vScaleRatio(0) = 1

vScaleRatio(1) = 1

ElseIf ComboBox1.Value = "1:2" Then

vScaleRatio(0) = 1

vScaleRatio(1) = 2

...

другие масштабы

...

End If

А ещё SW иной раз, например масштаб 1:4 может сделать в документе чертежа как 0,25:1 (может в SW2009 такого нет, а в предыдущих версиях такое наблюдалось)

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

To vladya Я тоже особо не разбирался, но все же позвольте дать несколько замечаний и советов, дабы избежать возможных нюансов, если вы и дальше будете что то делать для SolidWorks'a в плане програмирования.

Не обязательно, но все же рекомендую использовать в каждом модуле инструкцию Option Explicit. Она налагает на уровне модуля требование на явное описание всех переменных этого модуля. Это позволит избежать синтаксических и других ошибок. В вашем макросе, например, в коде UserForm1 на уровне модуля вы объявляете объектную переменную swSelMgr, а везде используете SelMgr.

Теперь по макросу. Так как он работает только с чертежами, то, желательно исключить возможность его запуска с деталями, сборками и, когда не загружен документ. На примере ClassScale это делается примерно так

Public Sub MonitorSolidWorks()

	On Error GoTo LineError

	Set swApp = Application.SldWorks

	Set swModel = swApp.ActiveDoc

	If swModel Is Nothing Then

		swApp.SendMsgToUser2 "Загрузите документ SolidWorks'à!", wMbWarning, swMbOk

		Exit Sub

	End If

	If swModel.GetType <> swDocDRAWING Then

		swApp.SendMsgToUser2 "Макрос работает только с чертежами!", wMbWarning, swMbOk

		Exit Sub

	End If

	Set MyDrw = swApp.ActiveDoc

	UserForm1.Show 0

	Exit Sub

LineError:

End Sub
Естественно, swModel где то должен быть объявлен на уровне модуля: Dim swModel As SldWorks.SldWorks.

И еще маленький совет. Не бойтесь использовать свои функции, особенно когда выполняются однотипные операции. Например вашу процедуру ComboBox1_Change можно значительно сократить если ввести функцию, допустим, GetScale. На скорость выполнения это, в принципе, не скажется

Private Function GetScale(ByVal strScale As String, ByRef dNumerator As Double, ByRef dDenominator As Double, ByRef varScale As Variant) As Boolean

	On Error GoTo LineError

	Dim vScale As Variant

	vScale = Strings.Split(strScale, ":")

	dNumerator = CDbl(vScale(0))

	dDenominator = CDbl(vScale(1))

	varScale(0) = dNumerator

	varScale(1) = dDenominator

	GetScale = True

	Exit Function

LineError:

	GetScale = False

End Function



Private Sub ComboBox1_Change()

	Dim bres As Boolean

	Dim strScale As String

	Dim Numerator As Double

	Dim Denominator As Double

	Dim varScaleRatio(1) As Variant

	strScale = ComboBox1.Value

	

	bres = GetScale(strScale, Numerator, Denominator, varScaleRatio)

	

	Set swApp = CreateObject("SldWorks.Application")

	Set swModel = swApp.ActiveDoc

	Set swDraw = swModel

	If UserForm1.Caption = "Масштаб листа" Then

		If bres = True Then

			Set swSheet = swDraw.GetCurrentSheet

			bres = swSheet.SetScale(Numerator, Denominator, False, False)

			'следующая строка у вас не совсем корректна. А если нет такого свойства у пользователя?

			swModel.CustomInfo("Масштаб") = ComboBox1.Value

		End If

	Else

		Set swSelMgr = swModel.SelectionManager

		Set swView = swSelMgr.GetSelectedObject5(1)

		swView.ScaleRatio = varScaleRatio

		bres = swModel.EditRebuild3

	End If



End Sub

З.Ы. Ни в коей мере не хотел вмешиваться в ваш творческий процесс. Расказал о граблях, на которые наступал сам, когда писал на VB

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

По поводу проги для простановки сварки. К сожалению, API солида я не владею, да и програмирование у меня в принципе на уровне турбо Паскаля. Но если кто то из наших гуру возьмется за написание, то могу оказать посильную помощь. Например, создание файла с таблицей типов сварных швов. В частности, меня интересует сварка по ГОСТ 14771-76, 5264-80, 16037-80.

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

 От себя добавлю таблицу контроля сварных швов.

Tablsvar.rar

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

To Shvg, Kelny Спасибо за советы.

Т.к. программирование не изучал, то пишу макросы методом "научного тыка", используя справку по API и макросы других. Сообщение "Масштаб листа (вида) не сответсвует ГОСТ" начало отображатся при каждой загрузке формы только после

перезагрузки компа, а при написании кода все было ОК.

Масштаб 1:4 действительно отображался вначале как 0.25:1, но после исправления (чего?- не помню),такого больше не было.

Кнопку запуска макроса размещаю на панели "Чертеж", которой у меня нет ни в Детали, ни в Сборке.

Свойство пользователя "Масштаб" забыл убрать из макроса. У меня оно введено только из-за того, что Солид "не хочет" отображать запятую в качестве десятичного разделителя.

Если макрос "полезен", то грамотные люди могли бы оптимизировать его

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

Если макрос "полезен", то грамотные люди могли бы оптимизировать его

Макрос может быть и полезен (будет), когда будет сделан до конца....

По крайней мере до изначальной задачи...

"Грамотные люди" наверное смогут доделать за Вас (а Вам уже не интересно??) - но думаю им проще сделать нечто своё (если захотят конечно)...

А то пока есть

Надоело лазить в св-ва листа для изменения масштаба и

задолбало окошко с предложением масштабирования примечаний

В результате родился макрос.

Лично мне интересно копаться в макросах и адаптировать их под себя - но, к сожалению, лень да и время ёк...
Ссылка на сообщение
Поделиться на других сайтах

Вопрос по VB

Какой тип 'sketch entity' генерируется после етой команде

'void ModelDoc2.SketchConvertIsoCurves ( percentRatio, vORuDir, doConstrain, skipHoles)'

Заранее спасибо.

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

Т.к. у Diimon возникли проблемы с установкой программки, котороя писалась для M.A.N.T.A

Считывает кол-во компонентов из сборки и записывает в свойство в модели. Реализована в виде DLL,. К SW подключается как Add-ins. В настройках прописывается имя свойства в модели, куда будет записываться кол-во ( в закладке Configuration Specif) и, так называемое исключение из правил. Т.е. когда существуют разные конфигурации модели в сборке, а должна считываться как одна модель. Например пружина с разными высотами. Для этого в этом свойстве (в закладке Custom) должна стоят единица. Особо не тестировал, по сему извиняюсь за возможные глюки.

то прицепил по новой полный *.msi файл.

P.S. Просьба отписаться как прошла установка, а то непонятки какие-то. У меня с ней, с установкой то, проблем нет, хотя и не работаю с этой програмкой.

Setup.rar

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • vad0000
    • OliverTwist
      Добрый день! Сдохла плата управления на приводе Bosch Rexroth серии HCS. Имеется в наличии ещё один такой привод и нужно стянуть с него параметры. Судя по документации мне необходим софт "IndraWorks ds" - но я никак не могу его найти :( Может кто-то подскажет - где можно такой скачать? Заранее спасибо!
    • gudstartup
      у ваших ис имеется сменщик паллет?? это просто место сбора слесарей + гидравлика мозг выносит. к фанукам притензий особых нет как и везде но электроавтоматика сделана отвратительно в шкафах полный хаос.   такие станки имеют износ 40-70% и их необходимо обновлять особенно это касается высокоточного оборудования но к исам это не относится там главное чтобы железо крепкое было я смотрю вы любите пространные описания но есть нюанс дочитывая до конца забываешь что в начале или это я такой склеротик
    • Alexandr97
      В сборке необходимо было создать массив нескольких деталей на линейном расстоянии друг от друга. При создании сопряжения между отдельной деталью и одним из объектов массива, объект массива ломается, свободно перемещается и расстояние, которое было задано при массиве, уже не актуально. При том, когда я к родительской детали пытаюсь крепиться, то все нормально. Подскажите, это недочет программы, или так и должно быть?
    • Shura762
      Кто нить пробовал ТФ18? ну там типа бета тестирование? или все это коммерческая тайна
    • Alexey8107
      Ну не знаю. У нас в свое время было таких ИС-800 8 шт. Один из них самый первый был с круглым магазином на 32 инструмента, привода сименс, ЧПУ балт систем. Если к чпу и приводам претензий не было, то к механике были серьезные вопросы. А вот остальные 7 все как один, 64 инструмента, фанук везде и вся, датчики, линейки, энкодеры ханденхайн, к механике особых претензий уже нет, да, бывают поломки, периодически по мере необходимости меняем опоры качения и прочее... Да, есть слабые места, например упорный подшипник ШВП оси Z, периодически дохнет из за попадания сож и Z начинает дергаться как эпилептик, приходится менять. Все эти станки работают с 2007-2010 годов в три смены без остановок. Из крупных поломок за все это время, материнка в одном УЧПУ померла, на одном стол вырвало, на одном PSM смачно взорвался и вот сейчас похоже этот же восстановленный PSM взбрыкнул. Мелочовку типа порванных РВД и ремонтов по причине естественного износа, типа замены опор качения я не считаю. Бывает индуктивные датчики летят, приходится менять, но это еще мельче и устраняются в течение часа со всеми перекурами когда карта сигналов и мест установки датчиков есть. К тому же эти станки до сих пор держат свою геометрическую точность, периодически проверяем их. Точнее сначала оператор начинает замечать что то не то, потом мы смотрим что не то, ремонтируем и проверяем  Но у нас преимущество, у нас есть очень грамотный и опытный станочник, он с закрытыми глазами находит неисправности, да и станки эти знает вплоть до каждого винтика. Ну и само собой по мере необходимости и шпиндели отправляем в ремонт. Правда последний раз эта организация нам так восстановила шпиндель на токарный LEADWELL, что точил вместо круга непонятно что. Разобрали и ужаснулись, подшипники стоят неправильно, кольца вообще не там где должны быть, какие то медные проставки, которых там сроду не должно быть... Пришлось самим в срочном порядке пересобирать правильно и каким то чудом шпиндель заработал как и должен. Каким чудом я не знаю, но тем не менее работает уже год. Претензий нет. В те времена, когда их было 8 шт, а токарных LEADWELLов больше 20, еще некоторые и с барфидерами, так я чаще ремонтировал барфидеры, чем ИС-800. Да, сейчас настал кризис, часть станков продали, часть работников сократили, и их осталось всего 3 штуки.
    • Tad
      Это коэффициент, определяющий соотношение усилия при свободной (воздушной - air bending) гибке и штамповке/чеканке (bottoming). Соотношение усилий между этими операциями 3-40 раз в зависимости от  условий. Кто использует метод чеканки, не спрашивает, какой конкретно должен быть этот коэффициент
    • zwg
      Тут не поспоришь... Кто не использует - тот и не знает как (в сущностях или без)... Вопрос к знатокам: на что влияет значение BOTTOMING PRESSUE FACTOR на Странице МАТЕРИАЛЫ в настройках CYBELEC?
    • gudstartup
      это к вашему производству не относится просто товарищ написал а я откомментировал!   я быне завидывал особенно это касается ис800 - ужасно ненадежные станочки наследники ир800 хоть и собраны на фанук но механика полный отстой.
    • AlexKaz
      Выбрать в дереве Define type -> Components, затем для X, Y, Z-компонент выбрать Tabular Data.
×
×
  • Создать...