Automatisches Ausführen eines Solidworks Makros

Hallo

 

Ist es möglich, ein Makro, das mit einem Teil verknüpft ist, automatisch auszuführen, wenn es in eine Solidworks Baugruppe eingefügt wird?

 

Vielen Dank im Voraus!

 

 

Ich habe den Beitrag, den ich gemacht habe, in die andere Frage eingefügt

 

Um diese Art der Automatisierung durchzuführen, ist es komplizierter, Sie müssen ein SW-Add-In erstellen, das die Ereignisse der Anwendung verwaltet. Tatsächlich müssen Sie mehr als ein Makro programmieren, Sie müssen ein Entwicklungstool wie Microsoft Visual Studio durchlaufen.

 

Hierfür gibt es ein myCAD-Tool namens CustomToolBar, in dem es möglich ist, ein Makro in Bezug auf Ereignisse (z.B. Einfügen einer Komponente) auszulösen

 

Ohne dieses Tool ist es jedoch einfacher, eine Makroverknüpfung in den Symbolleisten zu erstellen.

 

Oder erstellen Sie ein Makro, das die Einfügefunktion dieser Komponente startet und dann das Fenster zur Größenanpassung anzeigt...

5 „Gefällt mir“

Hallo

Ich wäre versucht zu sagen, dass ein einzelnes Makro nicht ausreichen würde, aber mit einer Abfolge von Makros könnte es es schaffen.

Es sei denn, Sie können mehrere Makros miteinander verknüpfen, aber ich weiß nicht genug darüber.

Für die Öffnung beim Einfügen eines Teils in eine Baugruppe hängt es davon ab, ob Sie Folgendes wünschen:

 

  • Machen Sie es in einer bestimmten Assembly (abhängig vom Namen),
  • Tun Sie es für ein bestimmtes Teil,
  • Tun Sie es die ganze Zeit.

 

Für den letzteren Fall ist es einfach, Sie können dann die SolidWorks Einfügeschaltfläche durch eine Schaltfläche für Ihr Makro ersetzen!

1 „Gefällt mir“

Konkret möchte ich, dass, wenn ich mein Geländer in eine beliebige Baugruppe einfüge, das Größenfenster (und damit das Makro, das dem Geländer zugeordnet ist) ausgeführt wird.

Ich werde dann weitere Standardelemente für uns erstellen (Tor, Leiter,...) und ich möchte, dass es auch bei diesen Teilen so ist.

 

Ich bin wirklich offen für alle Arten von Ideen, mit dem Endziel ist es, das Leben des Endbenutzers einfacher zu machen:D

 

Hallo

 

Warum verwenden Sie dazu nicht die standardmäßigen SolidWorks Funktionen, anstatt Makros zu entwickeln, die in zukünftigen Versionen von SolidWorks aktualisiert werden müssen?

Um ein Bauteil oder eine Baugruppe mit einem Dialogfeld zum Verwalten von Parametern einzufügen, können Sie entweder DriveWorks xpress oder den Konfigurationsmanager (auf der Registerkarte "Konfigurationen") verwenden.

 

@+

3 „Gefällt mir“

In diesem Video werden die Makros erläutert, die in Assemblys integriert sind:

http://www.youtube.com/watch?v=zbvp1v7_bec

 

Die Lösung, etwas kompliziert, besteht darin, das Makro in Ihrer Assembly zu erstellen, wie im Video gezeigt.

 

Erstellen Sie eine benutzerdefinierte "Geländer"-Eigenschaft bei 0.

 

Fügen Sie dem Makro eine Bedingung hinzu: Erkennen, wenn das "Geländer"-Teil hinzugefügt wird.

 

Das Makro erledigt seine Aufgabe und ändert dann die Eigenschaft "railing" in 1, um das Makro nicht mehr zu starten.

 

Problem: Dieses Makro prüft die benutzerdefinierte Eigenschaft "Leitplanke" und wenn Sie das Teil bei jedem Neuaufbau einfügen: Überlastung des Prozessors!

 

Fazit: Viel Arbeit für nicht viel... Ein Knopf wäre wirklich einfacher!

Weitere Möglichkeiten zum Starten von Makros:

 

Durch eine Gleichung aus dem Design-Binder aus einem Feature-Makro:

 

http://www.cadsharp.com/blog/4-ways-to-run-solidworks-api-macro-without-run-button/

 

Makro-Funktion: http://www.youtube.com/watch?v=I-cIGMFSBOg

Kojote

 

Ich habe die DriveWorksXpress-Methode getestet, indem ich ein Modell definiert habe, indem ich die Abmessungen erfasst habe, die ich variieren möchte, aber ich verstehe nicht, wie dieses Konfigurationsfenster angezeigt werden soll, wenn das Teil anschließend in die Baugruppe eingefügt wird?

@jfaradon,

 

Ich nerve bei Ihrer Idee, ein Makro zu erstellen, um das Teil einzufügen und das Öffnen des Fensters zu generieren.

 

Wenn du mir einen Anhaltspunkt oder das Programm geben kannst:D

Die Idee ist einfach, in der Makro ta das Einfügen des Teils am Anfang hinzuzufügen!

Mit Komponente hinzufügen:

http://help.solidworks.com/2012/English/api/sldworksapi/Add_Components_Example_VB.htm

Re

 

Tatsächlich habe ich bei DriveWorks Xpress etwas Dummes gesagt: Das Fenster öffnet sich beim Einfügen nicht.

Auf der anderen Seite funktioniert es mit meiner zweiten angegebenen Methode, nämlich dem Konfigurationsmanager, so, dass zum Zeitpunkt des Einfügens des Modells das Konfigurationsfenster im Feature-Manager angezeigt wird.

 

@+

 

Es gibt zwei Möglichkeiten, das Einfügen einer Komponente zu programmieren, entweder man programmiert alles (AddComponent)

oder Sie führen den Befehl einfach so aus, als ob Sie auf die Schaltfläche "Komponenten einfügen" klicken würden

 

Zu diesem Zweck müssen Sie die RunCommnand-Methode verwenden, mit der Sie SW-Befehle ausführen können

Beispiel in Ihrem Fall

 

swDoc.Extension.RunCommand(swCommands_e.swCommands_InsertComponents, "")

 

Sie müssen dem Projekt die swCommands-Referenz hinzufügen

 

Seien Sie vorsichtig, der Befehl ist asynchron, d.h. der Code wird fortgesetzt, ohne darauf zu warten, dass der Einfügebefehl abgeschlossen ist...

 

 

2 „Gefällt mir“

 Tag zusammen.

 

Tut mir leid, dass ich dem Thread nicht gefolgt bin, aber ich musste eine Weile weg sein.

Naja, ich stagniere immer noch und da treffe ich, dass ich wirklich ein Anfänger bin;)

 

Nun, wenn eine wohltätige Seele es direkt mit meinem Makro versuchen kann, wäre ich ihm für immer zu Dank verpflichtet:D

 

Vielen Dank im Voraus an alle.


garde-corps.zip