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

Нейросеть пишет макрос.


Basstudio

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

В общем баловался я с чатом нейросети. Дай думаю макрос попрошу. Так она вообще любой в лёт выдаёт. Только вот я не такой опытный в этих макросах. Копирую вроде, код. Создаю новый макрос всавляю. А он чтот не того. Не работает. Лико код от фанаря. Либо там маленькая неточность. Или у меня руки кривые. Кто шарит?? Посмотреть.. Screenshot_20230408_200251_com.huawei.browser.jpg

.. 

Screenshot_20230408_200257_com.huawei.browser.jpg

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


UnPinned posts

 

Option Explicit

Sub SaveSTEPsFromAllConfigurations()
    Dim swApp As SldWorks.SldWorks
    Dim swModel As SldWorks.ModelDoc2
    Dim swConfigMgr As SldWorks.ConfigurationManager
    Dim swConfig As SldWorks.Configuration
    Dim swPart As SldWorks.PartDoc
    Dim strFileName As String
    Dim i As Long
    
    Set swApp = Application.SldWorks
    
    ' Открыть активную модель
    Set swModel = swApp.ActiveDoc
    
    If Not swModel Is Nothing Then
        ' Получить менеджер конфигураций
        Set swConfigMgr = swModel.ConfigurationManager
        
        ' Пройти по всем конфигурациям
        For i = 0 To swConfigMgr.GetConfigurationCount - 1
            Set swConfig = swConfigMgr.GetConfigurationByIndex(i)
            ' Установить конфигурацию
            swModel.ShowConfiguration2 swConfig.Name
            Set swPart = swModel
            
            ' Сохранить степ-файл
            strFileName = swModel.GetPathName()
            strFileName = Left(strFileName, Len(strFileName) - 7) & "-" & swConfig.Name & ".step"
            swPart.ExportFlatPatternView strFileName, swExportFlatPatternOption_e.swExportFlatPatternOption_ExportAs3D
        Next i
    Else
        MsgBox "Откройте деталь перед запуском макроса."
    End If
End Sub
 

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

 

Option Explicit

Sub SaveSTEPsFromAllConfigurations()
    Dim swApp As SldWorks.SldWorks
    Dim swModel As SldWorks.ModelDoc2
    Dim swConfigMgr As SldWorks.ConfigurationManager
    Dim swConfig As SldWorks.Configuration
    Dim swPart As SldWorks.PartDoc
    Dim strFileName As String
    Dim i As Long
    
    Set swApp = Application.SldWorks
    
    ' Открыть активную модель
    Set swModel = swApp.ActiveDoc
    
    If Not swModel Is Nothing Then
        ' Получить менеджер конфигураций
        Set swConfigMgr = swModel.ConfigurationManager
        
        ' Пройти по всем конфигурациям
        For i = 0 To swConfigMgr.GetConfigurationCount - 1
            Set swConfig = swConfigMgr.GetConfigurationByIndex(i)
            ' Установить конфигурацию
            swModel.ShowConfiguration2 swConfig.Name
            Set swPart = swModel
            
            ' Сохранить степ-файл
            strFileName = swModel.GetPathName()
            strFileName = Left(strFileName, Len(strFileName) - 7) & "-" & swConfig.Name & ".step"
            swPart.ExportFlatPatternView strFileName, swExportFlatPatternOption_e.swExportFlatPatternOption_ExportAs3D
        Next i
    Else
        MsgBox "Откройте деталь перед запуском макроса."
    End If
End Sub
 

 

Прикольно. Но есть ошибки, если смотреть по справочнику API. Вот пример применения функции

Думаю, разберетесь.

 

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

Только вот я не такой опытный в этих макросах. Копирую вроде, код. Создаю новый макрос всавляю. А он чтот не того. Не работает. Лико код от фанаря. Либо там маленькая неточность. Или у меня руки кривые. Кто шарит?? Посмотреть.. 

Цель макроса вообще какая? Что он должен делать? То в первом сообщении вы говорите, что он должен сохранить все конфигурации в PDF, а код даете по сохранению всех конфигураций в STEP.

Если второе, то вот здесь вот бред написан:

swPart.ExportFlatPatternView strFileName, swExportFlatPatternOption_e.swExportFlatPatternOption_ExportAs3D

ExportFlatPatternView - это метод сохранения листовой детали в виде развертки в формате DXF/DWG - вообще третья задача.

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

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

Цель макроса вообще какая? Что он должен делать? То в первом сообщении вы говорите, что он должен сохранить все конфигурации в PDF, а код даете по сохранению всех конфигураций в STEP.

Если второе, то вот здесь вот бред написан:


swPart.ExportFlatPatternView strFileName, swExportFlatPatternOption_e.swExportFlatPatternOption_ExportAs3D

ExportFlatPatternView - это метод сохранения листовой детали в виде развертки в формате DXF/DWG - вообще третья задача.

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

Судя по справке

ExportFlatPatternView 

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

Потому что в справке еще следует

swModelDocExt.SaveAs

Мой поиск по справке показал, что константы

swExportFlatPatternOption_ExportAs3D

не существует.

 

 

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

Мой поиск по справке показал, что константы


swExportFlatPatternOption_ExportAs3D

не существует.

Вопрос, зачем он применяет swExportFlatPattern если сохраняет в СТЕП?

Да, и в справке для swExportFlatPatternViewOptions_e  всего 2 параметра:

Цитата
swExportFlatPatternOption_None  
swExportFlatPatternOption_RemoveBends

 

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

Вопрос, зачем он применяет swExportFlatPattern если сохраняет в СТЕП?

Я понял, что он где-то взял этот код и просит найти ошибку )

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

У меня такой вопрос. Что проще - написать макрос самому или разбираться в том, что это чудо-юдо написало?

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

У меня такой вопрос. Что проще - написать макрос самому или разбираться в том, что это чудо-юдо написало?

По мне так первое, я вот здесь уже писал свой печальный опыт с ИИ:

 

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

короче ИИ в очередной раз показал что не ИИ :) а так поисковик и вставка найденных данных по инету.

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

Ну слава богу что ии не того. А то я уже подумал. 

Чтобы получить правильный ответ, нужно задавать правильный вопрос, может в этом дело :) ко мне это тоже относится ))

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

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

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

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

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

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

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

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

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

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

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

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

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




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