Konvertieren in Blech in einer Funktionsbibliothek oder einem Makro

Hallo

Ich versuche, die Lautstärkekonvertierungsfunktion in eine Bibliotheksfunktion zu integrieren, aber das scheint in SW2016 sowieso nicht möglich zu sein. Gibt es einen Trick oder eine alternative Makrolösung, die es ermöglicht, mit einem einzigen Klick mehrere Körper zu kombinieren und den resultierenden Körper in Blech umzuwandeln, indem automatisch nach bereits vorhandenen Falten gesucht wird?  Vielen Dank im Voraus.

Hallo

Kannst du uns einen Screenshot von deinem Spiel machen, denn ich bin mir nicht ganz sicher, was du meinst. Probieren Sie jedoch die Funktion der Einfügefalten aus. Mit einem Klick erkennt diese Funktion Falten.

1 „Gefällt mir“

Schon um Körper zu verbinden, muss es

aus dem gleichen Werkstoff

die sich kreuzen

Sind Ihre Teile mehrkörperförmig oder werden sie unabhängig voneinander hergestellt?

Ihr Makro muss auch in der Lage sein, Kaffee zu kochen?

@+ ;-)

4 „Gefällt mir“

Hallo

Hier ist die Anweisung zur Umwandlung in Blech:

InsertConvertToSheetMetal2

Die Hilfeseite:

http://help.solidworks.com/2015/English/api/sldworksapi/SolidWorks.Interop.sldworks~SolidWorks.Interop.sldworks.IFeatureManager~InsertConvertToSheetMetal2.html

Ein Beispiel: 

http://help.solidworks.com/2013/English/api/sldworksapi/Insert_Convert_to_Sheet_Metal_Example_VB.htm

Um die Körper in VBA zu kombinieren, siehe hier:

InsertCombineFeature

http://help.solidworks.com/2015/English/api/sldworksapi/SolidWorks.Interop.sldworks~SolidWorks.Interop.sldworks.IFeatureManager~InsertCombineFeature.html

http://help.solidworks.com/2016/English/api/sldworksapi/Combine_Bodies_Example_VB.htm

Wow, 3 Antworten von den Top 3 Mitwirkenden ...  Sorry, ich hatte sie nicht gesehen, ich habe vergessen, meine eigene Frage zu abonnieren (es ist eine Schande, dass man als Fragesteller nicht automatisch abonniert ist, aber das ist nicht die Debatte). Zur Veranschaulichung sind hier die Schritte, was ich versuche, mit Unterstützung zu tun (weil ich viel davon bei mehreren Projekten brauche):

Ich beginne mit einem zentralen Körper wie einer Stange. Ich habe auch zwei Profile des gleichen Verdickungsmittels, die sich an etwas zufälligen Stellen im Raum befinden. Ziel ist es, sie miteinander und dann mit dem Mast zu verbinden, um schließlich das abgewickelte Blech herauszunehmen, das all diese Bedingungen erfüllt.

Durch Funktionsbibliotheken verknüpfe ich also alle Körper richtig. Alles, was bleibt, ist, sie zu kombinieren (denn wenn ich während der Verknüpfungen zusammenführe, führt SW auch den Mast zusammen), dann in Blech umwandeln.

Danach habe ich noch einiges zu tun, ich muss den Körper in Blech umbenennen, um ihn automatisch zu extrahieren und ihn in dxf zu einer Wohnung zu machen. Meine anfängliche Frage ist also noch nicht auf der Ebene der Kaffeezubereitung, aber sie ist noch weit vom endgültigen Ziel entfernt. ;-)

Das ist die vollständige Erklärung. Um schneller voranzukommen (ich habe etwa zwanzig solcher Körper zu erstellen und flach auf jede Datei zu legen), habe ich mich für die Funktionsbibliothek entschieden, die die Verbindungen für mich herstellt. Jetzt beherrsche ich das ziemlich gut. Sobald der Körper jedoch zusammengeführt ist, kann er nicht mehr in Blech in derselben Funktionsbibliothek konvertiert werden. Und da ich dahinter noch viele Aktionen ausführen muss, warum nicht ein Makro durchgehen, wenn die Funktionsbibliothek es nicht zulässt. Der Nachteil von Makros ist, dass ich im Code nicht sehe, wie er mit der Abflachung umgehen kann, ohne dass ich die Kanten einheitlich angebe, was ich unbedingt (zu lange) vermeiden möchte. Ich finde in seiner Kodierung nicht die automatische Suche nach bereits vorhandenen Falten.

Ich hoffe, ich habe Sie über das Ziel und die Probleme aufgeklärt, jetzt unterschreibe ich mein Fach, um schneller auf Ihre vielen aufgeklärten Ratschläge zu reagieren ;-)).


2016-04-08_13h38_27.png
1 „Gefällt mir“

Ein Link, der Ihnen für den Esport des Abflachens helfen kann:

http://gupta9665.com/export-sheet-metal-part-configurations-as-dwg/

Andernfalls müssen Sie genau wissen, wo Sie im Makro feststecken.

Wenn du während der Bindung zusammenführst, verschmilzt SW auch die Stange. Dann erstellen Sie eine Konfiguration ohne den Pfosten  und wandeln sie dann in Blech um. Funktioniert es nicht?

Die Idee soll getestet werden, aber da ich beim Zusammenführen 1 von 2 Mal die Fehlermeldung "Bibliotheksfunktion kann nicht angewendet werden" habe, habe ich die Idee aufgegeben. Es muss gesagt werden, dass ich je nach Profil, da meine Beschläge tangential zur Stange sind, sehr feine und zufällige Verschmelzungen habe.

1 „Gefällt mir“

Und wenn Sie ein kleines Spiel zwischen Ihrem zukünftigen Blechteil und dem Pfosten lassen, z. B. 0,01 (einen Plan erstellen, damit Sie sagen können, bis und wählen Sie ihn anstelle der Oberfläche), damit er nicht verschmelzen kann.

Ich kann keine Versatzebene erstellen, die Skizze meiner Funktion hängt am Schnittpunkt zwischen der Skizzenebene und den Kanten der Stütze. In dem Wissen, dass es sich bei diesem Mast um eine Konstruktion handelt, die auf einer 3D-Skizze angeschweißt wurde, ist es schwierig, ...  Und natürlich möchte ich die Anzahl der zu klickenden Referenzen für meine Funktionsbibliothek so weit wie möglich begrenzen.

Der "Mähdrescher"-Teil erscheint mir weniger problematisch als die Umwandlung in Blech, die ich nicht einrichten kann:

Gibt es einen Trick, um die in der Konvertierungsfunktion verwendeten Referenzen durch Referenzen zu ersetzen, die ich bestimme, mich möglichst auf den Grundplan der Blechfunktion zu beschränken und die Suche nach bereits vorhandenen Falten automatisch aktiviert? Ich habe versucht, das Makro zur Körperauswahl in Kombination mit der Konvertierungsfunktion zu verwenden, aber ich bin etwas zu langsam in Bezug auf die Programmierung, um dorthin zu gelangen. Bei diesem Makro wird davon ausgegangen, dass der Körper oder eine Fläche vor dem Anwenden des Makros ausgewählt ist. Ich möchte lieber, dass das Makro mich auffordert, die Ebene auszuwählen, bevor ich die Konvertierung anwende, und ggf. die Fläche und die Kanten für diese Konvertierung auszuwählen. Und oben, dass sie mich bittet, vorher alle Körper auszuwählen, die zusammengeführt werden sollen, um alles außer dem Kaffee zu machen ;-).

Ich finde gute Tutorials, um Feature-Parameter mit userform zu füllen, aber nicht, um eine Auswahl von Körpern, Flächen, Kanten oder anderen notwendigen Funktionen wie der Konvertierung in Blech oder Kombinieren zu treffen.

Nochmals vielen Dank für Ihren Rat.

In der Tat suchen Sie nach einer schnellen Möglichkeit, in Blech umzuwandeln, ohne die Falten, sondern nur die Fläche auszuwählen. Versuchen Sie, die eingefügte Funktion der Falten zu sehen, diese Funktion erkennt die scharfen Kanten und wandelt sie in Blech um, indem Sie einfach die Fläche auswählen. Um dieses Makro zu erstellen, haben Sie ein neues Makro aufgezeichnet, führen alle Vorgänge manuell aus und beenden die Aufzeichnung. Dann wirst du sehen, was passiert.

1 „Gefällt mir“

Interessant ist, dass ich bei diesem letzten Vorschlag immer (fälschlicherweise) die Funktion "In Blech umwandeln" anstelle von "Falten einfügen" verwendet habe. Die gute Nachricht ist, dass es so funktioniert hat. Das erste Schlechte ist, dass durch die Anwendung der Methode zweimal hintereinander mit genau den gleichen Parametern beim ersten Mal funktionierte, beim zweiten Mal sagte mir SW, dass die Falten nicht erstellt werden konnten. Vielleicht in SP3... Ich habe gelesen, dass sich ein anderer Benutzer über das Blech unter SW2016 in SP1 und in geringerem Maße in SP2 beschwert hat. Die zweite schlechte Nachricht für mich ist, dass "Falten einfügen"  immer noch nicht in die Bibliotheksfunktion passt. Grrrr. Also gezwungen, ein Makro zu durchlaufen.

So würde es aussehen:


Dimmen swApp als Objekt

Teil als Objekt dimmen
Dim boolstatus als boolescher Wert
Dim longstatus As Long, longwarnings As Long

Sub main()

swApp = _ setzen
Anwendung.SldWorks

Set Part = swApp.ActiveDoc
boolstatus = Part.Extension.SelectByID2("", "GESICHT", 1.71659798004902, 0.35623999999999957, -0.21627010114517, False, 0, Nichts, 0)
boolstatus = Part.InsertBends2(0.001, "", 0.5, -1, True, 0.5, True)
Part.ClearSelection2 Wahr
Ende Sub
 

Es bleibt zu finden, wie das "Gesicht" und alle seine Positionierungsargumente durch eine Interaktion "Gesicht auswählen" ersetzt werden können.

Fortsetzung folgt... Danke Manu für diese erste Idee, es bleibt noch SW, die Funktion stabil zu machen (ich werde mir die Zeit nehmen, ein Video zu machen und es am Wochenende an den Support zu senden), es wird schon ein Schritt nach vorne sein.

OK, es funktioniert, ich hoffe, Sie werden Erfolg haben und sind froh, dass Sie sich dabei ein wenig helfen konnten. ;-)