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

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


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

Не пашет: выдаёт Runtime Error 53.

SW2007SP5.0 чертёж октрыт.

Имя макроса и имя исполняемого файла должны быть одинаковы, например:

НШ-SW.exe

НШ-SW.swp

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

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


Имя макроса и имя исполняемого файла должны быть одинаковы, например:

НШ-SW.exe

НШ-SW.swp

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

Уже лучше - окошко загрузилось, но перед этим ошибка "чертёж не загружен" (хотя мой чертёж открыт), потом Run-Time Error 91: "Object Variable or With block variable not set" - жму ОК - окошко закрывается.
Ссылка на сообщение
Поделиться на других сайтах

Уже лучше - окошко загрузилось, но перед этим ошибка "чертёж не загружен" (хотя мой чертёж открыт), потом Run-Time Error 91: "Object Variable or With block variable not set" - жму ОК - окошко закрывается.

Вероятно загружено несколько сессий программы Solidworks. Откройте Диспетчер задач Windows (комбинация клавиш Ctrl+Shift+Esc или Ctrl+Alt+Del) и завершите процессы SLDWORKS.exe.
Ссылка на сообщение
Поделиться на других сайтах

Вероятно загружено несколько сессий программы Solidworks. Откройте Диспетчер задач Windows (комбинация клавиш Ctrl+Shift+Esc или Ctrl+Alt+Del) и завершите процессы SLDWORKS.exe.

Возможно.

Щас заработало :clap_1:

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

Помогите пожалуйста перевести с VB на Delphi

Debug.Assert Not swDim Is Nothing

из макроса:

Option Explicit

Sub main()

Dim swApp As SldWorks.SldWorks

Dim swModel As SldWorks.ModelDoc2

Dim swDim As SldWorks.Dimension

Dim vConfigNames As Variant

Dim vValue As Variant

Set swApp = Application.SldWorks

Set swModel = swApp.ActiveDoc

Set swDim = swModel.Parameter("D1@Extrude1")

Debug.Assert Not swDim Is Nothing

Debug.Print "File = " & swModel.GetPathName

Debug.Print " FullName = " & swDim.FullName

Debug.Print " Name = " & swDim.Name

vConfigNames = swModel.GetConfigurationNames

vValue = swDim.GetSystemValue3(swThisConfiguration, (vConfigNames))

Debug.Print " SystemValue = " & vValue(0) * 1000#; "" & " mm"

End Sub

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

Помогите пожалуйста перевести с VB на Delphi

<noindex>http://www.wmcentre.net/des.php?agent=&id_d=494527</noindex>

<noindex>http://www.delphimaster.ru/cgi-bin/forum.p...3826440&n=8</noindex>

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

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

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

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

Извиняюсь, просто в вопросе слишком много избыточной информации и главное в обзор взгляда не вошло. По второй ссылке, пример, перевода кода из VB в Delphi.

А разве в Delphi это не будет иметь следующую структуру:

procedure Foo(Count: Cardinal);

	begin

		Assert(Count < SizeOf(Word));

	end;
Если выражение окажется ложным, появится сообщение об ошибке
Источник: <noindex>http://www.xserver.ru/computer/sredaprogr/bd/1/25.shtml</noindex>
Ссылка на сообщение
Поделиться на других сайтах

Извиняюсь, просто в вопросе слишком много избыточной информации и главное в обзор взгляда не вошло. По второй ссылке, пример, перевода кода из VB в Delphi.

Информации может и много, но спрашивала я про Debug.Assert Not swDim Is Nothing, потому что не пойму как тип данных object из vb перевести в delphi. Мне нужно сделать проверку, что такой объект(размер) существует. Может можно как то проще...

Источник: <noindex>http://www.xserver.ru/computer/sredaprogr/bd/1/25.shtml</noindex>

Спасибо за ссылочку, пригодится :)

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

Помогите кто нибудь. Как все таки правильно перевести строчку Debug.Assert Not swDim Is Nothing.

Вероятно так:

Assert(TVarData(swDim).VDispatch <> nil);
Источник: <noindex>http://forum.sources.ru/index.php?showtopic=101213</noindex>

или <noindex>http://www.relib.com/forums/Topic873629-8-1.aspx#bm873724</noindex>

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

Помогите кто нибудь. Как все таки правильно перевести строчку Debug.Assert Not swDim Is Nothing.

А зачем ее переводить? Это функции отладки. В рабочем коде просто введите проверку на существование объекта типа Dimension.

Мне нужно сделать проверку, что такой объект(размер) существует. Может можно как то проще...

Ну например VB

If swDim Is Nothing Then

   Exit Sub

End If

C++

if(swDim == NULL)

  retutn;
P.S. С Delphi не знаком...
Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...

Уважаемый Leon. В Вашем макросе RecordDimM на мой взгляд не хватает записи "N углов" (3 угла). Я буду благодарен, если Вы внесёте это дополнение в макрос.

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

Superbizon_1980

Может быть достаточно написать 3 места? Очень не хочется ничего там доделывать. Надо все вспоминать, у меня таких случаев с углами не встречается. Кроме того там есть ручной режим (простой размер).

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

Кто нибудь может подсказать как с помощью api по координатам точки получить ее имя?

Что Вы понимаете под словом "точка"? Они разные бывают: точка в эскизе, точка в сплайне...

Для начала посмотрите это (справке SW API):

ModelDocExtension::SelectByID2

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

Может быть достаточно написать 3 места?

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

Что Вы понимаете под словом "точка"? Они разные бывают: точка в эскизе, точка в сплайне...

Для начала посмотрите это (справке SW API):

ModelDocExtension::SelectByID2

Точка в эскизе. А функцией что вы написали можно выбрать точку, но не получить ее имя.

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

А можно ли сделать макрос, в котором бы конфигурации деталей назывались бы по габаритным размерам, скажем Деталь_2000х1200х400, где 2000, 1200, и 400 соответственно длина ширина и высота детали. Ну как вариант что бы макрос выводил в таблицу габариты всех деталей. Спасибо.

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Jesse
      Вот что у Биргера: Центробежные силы и индуцированный гироскопический момент зависят от квадрата частоты вращения вала   Хотя уже сама критическая частота зависит только от момента инерции колеса (альфа, бэта, гамма - это прогибы, углы поворота и прочая шелуха), т.е. частота вращения в формулу не входит, а всё определяется только моментом инерции Jm Ну у него рассматривается простая одномассовая система (фактически грузик на пружинке). Думаю поискать публикации.. мб где то раскопали аналитическую зависимость первой и высшей СЧ от частоты вращения для сложных систем. Хотя если выяснится что зависит,  всё равно обоснование придумывать придётся.  Эхх...
    • Fedor
      https://www.litres.ru/book/v-n-faddeeva/vychislitelnye-metody-lineynoy-algebry-65999878/  Ну и классику жанра :) 
    • Jesse
      4000 об/мин при наружном диаметре колеса 380 мм. Думаете, на больших оборотах вилка всё равно может разойтись и могут появиться гироскопические эффекты? Даже несмотря на вышеприведенные массово-инерционные оценки и расположение опор?   да я влияние престресс (вращение) особо не увидел... Думал обычным модальником прогнать, Ланцошом (он пошустрее).   Ещё мои раздумья направлены в сторону присоединённой массы воды, что по идее должно занижать частоты. Хотя для такого массивного вала как у меня даже на это дело можно забить, наверно...
    • Handrusik
      Maxx2000 - благодарю Павлуха - это не фриланс Утомлённый солнцем - приятно, что меня помнят
    • Борман
      Я так понимаю, что обороты не особо большие. ДК - это чисто высокооборотистая тема.   Просто мысли вслух... Если вилка будет сильно расходится, то всегда будет точка пересечения любого луча с кривой BW. Причем точка будет на меньших оборотах по сравнению с обычным престресс-модальником. Какие дальше действия ? С чем тут нужно дополнительно бороться по сравнению с тем, с чем нужно было бы бороться по результатам обычного престресс-модальника Если вилка не сильно расходится (от кривой обычного престресс-мобальника), то смысла стоить строгую ДК большого нет.    
    • boomeeeer
      На сименсе параметрами настраивается многое, что связано с менеджером иснструмента. Вызов возможен как по номерам, так и по именам инструментов. Через равно вроде как по имени вызывается (Т="имя"), а по номеру можно было, например, Т1 M6, а первый корректор подтянулся бы автоматически. И не всегда М6 на смену. Производитель мог нагородить чего угодно. Параметры надо смотреть
    • Den4ik85
      P.S этой ошибки не было при запуске,она возникла при выполнении команды смены инструмента "T=.." d1m6. (так учили на курсах) возможно,не тот номер ввел или не соответствовало название инструмента его номеру?
    • boomeeeer
      @Den4ik85 Подключаться к контроллеру и искать цепочку формирования сигнала ошибки DB2.DBX183.0. Возможно один из индуктивных датчиков на подсчёт ячеек магазина вышел из строя
    • boomeeeer
      G108 C0 - Включить шпиндель №0 в режим оси C G90 C180 - Переместить ось С в позицию 180 градусов
    • Den4ik85
      благодарю! ничего не понял, ну хоть что-то) учусь только) попробую разобраться
×
×
  • Создать...