Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Mit API den Projektionstyp ändern

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS
Autor Thema:  Mit API den Projektionstyp ändern (147 mal gelesen)
BranscheidGmbh
Mitglied
Dipl. Ing.


Sehen Sie sich das Profil von BranscheidGmbh an!   Senden Sie eine Private Message an BranscheidGmbh  Schreiben Sie einen Gästebucheintrag für BranscheidGmbh

Beiträge: 49
Registriert: 15.01.2016

Solidworks Professional 2023 SP 5

erstellt am: 09. Feb. 2024 18:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Guten Abend allerseits 

ich habe mich gerade längere Zeit mit CHATGPT darüber "unterhalten",
wie man per API den "Projektionstyp" einer Zeichnung auf "erster Winkel" setzen kann - leider erfolglos.

Vermutlich kann mir ein Mensch da besser weiter helfen ? 

Dann kann ich mit diesem Makro mehrere Zeichnungen durchlaufen und entsprechend anpassen/aufräumen.
Schon mal Danke im Voraus !!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Ralf Tide
Moderator
-




Sehen Sie sich das Profil von Ralf Tide an!   Senden Sie eine Private Message an Ralf Tide  Schreiben Sie einen Gästebucheintrag für Ralf Tide

Beiträge: 4974
Registriert: 06.08.2001

Sehr seltsame Dinge passiern <Klaus Lage - Toy Story>
.-)

erstellt am: 10. Feb. 2024 12:05    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für BranscheidGmbh 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von BranscheidGmbh:
Vermutlich kann mir ein Mensch da besser weiter helfen ?  
Hallo BGmbH,
Du kannst Dir wahrscheinlich am besten selbst helfen. Mit der Aufzeichnung eines Macros bekomme ich mit SWX2022:
Code:
' ******************************************************************************
' C:\Users\HP\AppData\Local\Temp\swx7096\Macro1.swb - macro recorded on 02/10/24 by HP
' ******************************************************************************
Dim swApp As Object

Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()

Set swApp = Application.SldWorks

Set Part = swApp.ActiveDoc
boolstatus = Part.SetupSheet5("Blatt2", 12, 12, 1, 2, False, "t:\001_vorlagen\a3_tide-swx2021.slddrt", 0.42, 0.297, "Standard", False)
End Sub


...und SetupSheet5 in die API-Web-Hilfe eingegeben führt über obsolete zu SetupSheet6. In der Beschreibung des Befehls siehst Du, dass der sechste Parameter (boolean) für die Umstellung verantwortlich zeichnet.

Das für mehrere Zeichnungen aufzurufen und gegebenfalls für jedes Blatt separat umzustellen ist wahrscheinlich auch keine große Sache. Die Hinweise hierzu findest Du hier im Forum. Weitere Tipps (wenn Du das nicht schon von der KI gelernt hast  ): StefanBerlitz PAC4SWX, DPS-JobBox...


HTH
Ralf

------------------

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

BranscheidGmbh
Mitglied
Dipl. Ing.


Sehen Sie sich das Profil von BranscheidGmbh an!   Senden Sie eine Private Message an BranscheidGmbh  Schreiben Sie einen Gästebucheintrag für BranscheidGmbh

Beiträge: 49
Registriert: 15.01.2016

Solidworks Professional 2023 SP 5

erstellt am: 12. Feb. 2024 11:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke Ralf.

Ich habe mal Deinen Makrovorschlag verfeinert,
denn es müssen ja noch u.a. der Blattformatname mit angegeben werden.

==================================================
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()

    Dim swApp As SldWorks.SldWorks
    Dim swModel As SldWorks.ModelDoc2
    Dim swDraw As SldWorks.DrawingDoc
    Dim swSheet As SldWorks.Sheet
    Dim vSheetNames As Variant
    Dim bRet As Boolean
    Dim i As Long

    Set swApp = Application.SldWorks
    Set Part = swApp.ActiveDoc

    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    Set swDraw = swModel
    Set swSheet = swDraw.GetCurrentSheet
   
    Dim Filenam As String
    Dim Sheet As String
    FileName = swModel.GetPathName
    Sheet = swSheet.GetName
   
        vSheetNames = swDraw.GetSheetNames
   
    For i = 0 To UBound(vSheetNames)
             
        Dim Maßstab As String
        Dim CurrentSheet As Variant
        Dim vSheetProps  As Variant
        Set CurrentSheet = Application.SldWorks.ActiveDoc.GetCurrentSheet
       
        vSheetProps = CurrentSheet.GetProperties
       
        Dim papersize As String
        Dim templatein As String
        Dim scale1 As String
        Dim Scale2 As String
        Dim firstAngle As String
        Dim Width As String
        Dim Height As String
       
        papersize = vSheetProps(0)
        templatein = vSheetProps(1)
        scale1 = vSheetProps(2)
        Scale2 = vSheetProps(3)
        firstAngle = CBool(vSheetProps(4))
        Width = vSheetProps(5)
        Height = vSheetProps(6)
        templatename = swSheet.GetTemplateName
                                                                                        '### False -> dritter Winkel
                                                                                        '### True -> erster Winkel
        boolstatus = Part.SetupSheet5(vSheetNames(i), papersize, templatein, scale1, Scale2, True, templatename, Width, Height, "Standard", False)
       
    Next i

End Sub

'### Get and Set Sheet Properties Example (VBA)
'### https://help.solidworks.com/2022/english/api/sldworksapi/get_and_set_sheet_properties_example_vb.htm

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2024 CAD.de | Impressum | Datenschutz