Jump to content

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


Recommended Posts

Basstudio

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

.. 

Screenshot_20230408_200257_com.huawei.browser.jpg

Link to post
Share on other sites


UnPinned posts
Basstudio
Posted (edited)

 

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
 

Edited by Basstudio
Link to post
Share on other sites
brigval
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. Вот пример применения функции

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

 

Edited by brigval
Link to post
Share on other sites
Snake 60
11 часов назад, Basstudio сказал:

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

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

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

swPart.ExportFlatPatternView strFileName, swExportFlatPatternOption_e.swExportFlatPatternOption_ExportAs3D

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

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

Link to post
Share on other sites
brigval
1 минуту назад, Snake 60 сказал:

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

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


swPart.ExportFlatPatternView strFileName, swExportFlatPatternOption_e.swExportFlatPatternOption_ExportAs3D

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

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

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

ExportFlatPatternView 

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

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

swModelDocExt.SaveAs

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

swExportFlatPatternOption_ExportAs3D

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

 

 

Link to post
Share on other sites
Snake 60
1 минуту назад, brigval сказал:

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


swExportFlatPatternOption_ExportAs3D

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

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

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

Цитата
swExportFlatPatternOption_None  
swExportFlatPatternOption_RemoveBends

 

Link to post
Share on other sites
brigval
2 минуты назад, Snake 60 сказал:

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

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

Link to post
Share on other sites
Ветерок

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

Link to post
Share on other sites
Snake 60
1 минуту назад, Ветерок сказал:

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

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

 

Link to post
Share on other sites
Maik812

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

Link to post
Share on other sites
Snake 60
1 минуту назад, Basstudio сказал:

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

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

  • Нравится 1
Link to post
Share on other sites
Kelny

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

  • Нравится 1
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.




×
×
  • Create New...