| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| |
| myCAD 2024 Visiativ-Kundentag in Rosenheim, eine Veranstaltung am 29.10.2024
|
Autor
|
Thema: Makro gesucht: Abmasse eines Teils oder Baugruppe (4242 mal gelesen)
|
T. Steffen Mitglied Konstrukteur
Beiträge: 339 Registriert: 27.03.2002
|
erstellt am: 23. Sep. 2004 14:54 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen Da ich für unseren Katalog von allen Teilen die maximalen Abmasse raussuchen muss, wollte ich fragen ob jemand ein Makro dafür hat das einfach nur anzeigt "X = ???mm, Y = ???mm, Z = ???mm"? Besten Dank. Tom Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
u.clemens Mitglied Konstrukteur
Beiträge: 964 Registriert: 04.07.2000 engineer's law o cheap o fast o good check only two !
|
erstellt am: 23. Sep. 2004 15:24 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
|
T. Steffen Mitglied Konstrukteur
Beiträge: 339 Registriert: 27.03.2002
|
erstellt am: 23. Sep. 2004 15:39 <-- editieren / zitieren --> Unities abgeben:
|
u.clemens Mitglied Konstrukteur
Beiträge: 964 Registriert: 04.07.2000 engineer's law o cheap o fast o good check only two !
|
erstellt am: 23. Sep. 2004 16:02 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Zitat: Original erstellt von T. Steffen: Schade funktionierts nicht mit Baugruppen.
Nunja, in Deiner ersten Anfrage war ja auch von Teilen die Rede ... Als Ausweg für Baugruppen fallen mir spontan zwei Auswege ein: 1. Baugruppe als Part speichern 2. Makro modifizieren - für Baugruppen gibts eine Methode AssemblyDoc.GetBox, die sollte das gleiche für Baugruppen tun. ------------------ mfg uc Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kalle Mitglied Student
Beiträge: 706 Registriert: 14.04.2002
|
erstellt am: 23. Sep. 2004 17:01 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Aheu, ich hab zu Automatisierungszwecken heute mal ein bisschen mit den BoundingBoxes rumgespielt. Da gibt's auf der SWX-Homepage auch ein Beispielprogramm, welches auch noch versucht die BoundingBox so im Raum zu drehen, dass man wirklich die kleinsten Abmaße kriegt. Dummerweise sind die Ergebnisse nicht genau genug um damit anständig arbeiten zu können. Ich rate von den GetBox-Geschichten ab. Bis dann, Kalle Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
u.clemens Mitglied Konstrukteur
Beiträge: 964 Registriert: 04.07.2000 engineer's law o cheap o fast o good check only two !
|
erstellt am: 24. Sep. 2004 09:41 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Zitat: Original erstellt von Kalle: Ich rate von den GetBox-Geschichten ab.
Wie so oft kommt es auf den konkreten Einsatzfall an. Wenn man sein Modell so aufgebaut hat / aufbauen kann, daß die betreffenden Abmaße entlang der Hauptachsen liegen oder/und das Gerät sowieso nicht irgendwie schräg-diagonal in der Kiste liegen soll - dann klappt`s schon. Aber es stimmt, man sollte sich den Restriktionen bei der Anwendung dieser Funktion bewußt sein ... ------------------ mfg uc Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kalle Mitglied Student
Beiträge: 706 Registriert: 14.04.2002
|
erstellt am: 24. Sep. 2004 09:50 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Aheu, sicherlich kommt es drauf an wofür man es genau braucht. Bei meinen Tests habe ich die Abmaße entlang der Hauptachsen benötigt und habe eine Bounding Box bekommen, die um einiges größer war. Wenn's ausreicht isses ok, mir ist es zu ungenau. Bis dann, Kalle Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kessi Mitglied
Beiträge: 27 Registriert: 14.05.2003 Windows XP SP2 SWX2006 SP4.1 Intel P Dualcore, 3.2GHz, 2GB RAM NVIDIA Quadro FX540
|
erstellt am: 24. Sep. 2004 17:40 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Hallo zusammen seit geraumer Zeit schlage ich mich mit der gleichen Fragestellung herum und kann einfach nicht begreifen, wieso sowas so kompliziert sein kann. SW kennt jederzeit das Volumen eines Teils, kann sämtliche Trägheitsmomente, etc. auf Knopfdruck ausgeben, aber die Grösstmasse eines Bauteiles anzugeben scheint ein Riesenact zu sein! Leider sieht's auch in 2005 nicht anders aus. Frust... Falls jemand das angesprochene Macro (das genaue Masse ausgibt) zum Laufen gebracht hat, wär ich echt froh und dankbar, wenn er (sie) es den anderen Leidtragenden zur Verfügung stellen könnte! Gruss Martin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kalle Mitglied Student
Beiträge: 706 Registriert: 14.04.2002
|
erstellt am: 27. Sep. 2004 08:20 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Aheu, ich hab übers Wochenende nochmal ein bisschen mit der Thematik rumgespielt und die angehängten Makros sind dabei rausgekommen. Das Makro "Ausmasse.swp" generiert ein neues Feature, dass dynamisch in den Dateieigenschaften (konfigurationsspezifisch) die Werte Länge, Breite, Höhe einträgt, welche duch eine Bounding Box entlang der Hauptachsen generiert werden. Des weiteren werden die Werte XMin, XMax, YMin, YMax, ZMin und ZMax eingetragen. Das Makro DrawBoundingBox liest die letzen 6 Werte wieder aus und erstellt eine 3DSkizze, welche dann die BoundingBox darstellt. Somit kann man sich die Abmasse bei jedem Neuaufbau und in jeder Konfiguration erstellen lassen und zu Überprüfungszwecken die 3DSkizze hinzuziehen. Es gibt zwar eine Funktion CreateBodyFromBox, nur dummerweise funktioniert die derzeit anscheinend nicht, ansonsten könnte man direkt über das MakroFeature eine BoundingBox erstellen lassen. Aber sonst muss es erstmal so gehen. Wer die Bezeichnungen für Länge, Breite und Höhe ändern möchte, der muss nur im Ausmasse-Makro die String-Konstanten am Anfang des Makros ändern. Dies sollte recht selbsterklärend sein. Ansonsten ist geplant das ganze auch noch für Baugruppen auszubauen bzw. auch eine Auswahl einzelner Körper bei Mehrkörpermodellen zu zulassen, da ich mir sowieso schon die BoundingBoxes der einzelnen Bodies hole, da's mit der vom Part nicht geht (warum auch immer). Bis dann, Kalle Edit: Hab noch ein bisschen rumgespielt und festgestellt, dass die großen Ungenauigkeiten, die ich oben schonmal angesprochen hab nur auftreten, wenn ich Oberflächenkörper habe und von denen die BoundingBox hole. Das Makro arbeitet nur mit Volumenkörpern und stoppt mit einer Fehlermeldung wenn kein Volumenkörper vorhanden ist. Wer's mit Oberflächenkörpern testen will, der muss die Zeile params = swModel.GetBodies(swSolidBodies) durch params = swModel.GetBodies(swAllBodies) ersetzen. [Diese Nachricht wurde von Kalle am 27. Sep. 2004 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kalle Mitglied Student
Beiträge: 706 Registriert: 14.04.2002
|
erstellt am: 27. Sep. 2004 09:51 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
|
Amos Mitglied Konstrukteur
Beiträge: 34 Registriert: 17.03.2004 SWX2005 SP3.0 XEON3.06 2GB FX3000
|
erstellt am: 28. Sep. 2004 14:40 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Hallo Kalle Danke erstmal für das super Makro Was ist aber wenn das Teil rund is Kann man das Makro für runde Teile anpassen. Ich denke da an ø oder so... Wenn ja wie? ------------------ Grüess Amos Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kalle Mitglied Student
Beiträge: 706 Registriert: 14.04.2002
|
erstellt am: 29. Sep. 2004 21:43 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Aheu Amos, Man könnte vielleicht 'nen Fenster aufmachen und den User Fragen ob's rund ist oder nicht. Dann ist aber auch das Problem mit der Ausrichtung. Woher weiss ich denn in welcher Ausrichtung dein zylinderischer Körper im Raum liegt? Wenn's in der Standard XYZ Ausrichtung liegt isses kein Problem die Bounding Box umzurechnen. Lichtblick: Es gibt ein API-Beispiel bzgl. der Bounding Boxes in dem die Teile irgendwie gedreht werden. Werd mir das bei Gelegenheit mal anschauen und vielleicht kann ich dann 'ne Abfrage an den User stellen bzgl. der gewünschten Ausrichtung. Wird aber nicht heute und auch nicht morgen passieren. @alle, die's interessiert: Ich kann (dank schnellem SWX-API-Support) nun die Bounding Box als Modell darstellen und muss nicht mehr auf das Zusatzmakro zurückgreifen. Will irgendwer die BoundingBox als Flächenmodell dargestellt haben? Falls ja, dann reiche ich das ins Makro implementiert noch nach. Bis dann, Kalle Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kessi Mitglied
Beiträge: 27 Registriert: 14.05.2003 Windows XP SP2 SWX2006 SP4.1 Intel P Dualcore, 3.2GHz, 2GB RAM NVIDIA Quadro FX540
|
erstellt am: 30. Sep. 2004 11:17 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Hallo Kalle das ist ja schon fast zu schön um war zu sein. Wenn Du jetzt auch noch hinkriegst, dass die Werte bis in den Tausendstel-Bereich stimmen, kannst Du alle meine gesammelten Punkte haben... Also bitte, bitte dranbleiben Gruss Martin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kalle Mitglied Student
Beiträge: 706 Registriert: 14.04.2002
|
erstellt am: 30. Sep. 2004 13:21 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Aheu Martin, ich hab leider nur die Möglichkeiten, die mir SolidWorks bietet. Und deren Befehl in der API bringt's halt eben nicht immer genau. Ich versteh zwar nicht warum dem so ist, aber ich kann's derzeit leider nicht ändern. Tut mir leid Bis dann, Kalle Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Rainer Prade Mitglied werkzeugmachermeister
Beiträge: 12 Registriert: 15.10.2004
|
erstellt am: 15. Okt. 2004 10:29 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Hallo Kalle, arbeite seit 6 Monaten jetzt mit swx2004 und habe auch sp4.2 drauf. dieses Macro finde hilfreich, aber jetzt tut das nicht mehr. Auf sp4.1 keine Probleme. gedrehte Teile werden auch nicht in der kleinsten Abmessung erkannt oder bediene ich da was falsch? mfg Rainer Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kalle Mitglied Student
Beiträge: 706 Registriert: 14.04.2002
|
erstellt am: 15. Okt. 2004 11:33 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Aheu Rainer, falsch zu bedienen gibt's da ja eigentlich nicht viel. Das Makro-Feature sollte auf jeden Fall am Ende der Feature Liste im FeatureManager stehen, da es die Abmaße zu dem Zeitpunkt berechnet an dem es im Aufbau steht. Ansonsten wüsste ich nicht was es da noch gibt. Haben andere mit SP4.2 auch Probleme? Wenn ja, dann bitte kurze Rückmeldung und ich schau ob ich irgendwas finde. Hab nur derzeit wenig Freizeit um mich grad um Programmpflege zu kümmern. Bis dann, Kalle Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Rainer Prade Mitglied werkzeugmachermeister
Beiträge: 12 Registriert: 15.10.2004
|
erstellt am: 15. Dez. 2004 09:00 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
|
Kalle Mitglied Student
Beiträge: 706 Registriert: 14.04.2002
|
erstellt am: 15. Dez. 2004 13:59 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Aheu Rainer, hab leider nur SWX 2004 im Einsatz. Daher das Teil entweder in 2004 nochmal erzeugen oder per Parasolid oder so rüberholen. Bis dann, Kalle ------------------ ----------------------------------------- Es gibt immer mehr Lösungen als Probleme. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Rainer Prade Mitglied werkzeugmachermeister
Beiträge: 12 Registriert: 15.10.2004
|
erstellt am: 17. Dez. 2004 09:33 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
|
Rainer Zufall Mitglied Projektleiter
Beiträge: 158 Registriert: 27.09.2004 Solid Egde 2023 Windows 11 64-bit Intel Core i7-2600 CPU @3,40GHz 32,00GB Arbeitsspeicher
|
erstellt am: 14. Nov. 2006 13:50 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Zitat: Original erstellt von Kalle: ...Es gibt zwar eine Funktion CreateBodyFromBox, nur dummerweise funktioniert die derzeit anscheinend nicht, ansonsten könnte man direkt über das MakroFeature eine BoundingBox erstellen lassen. Aber sonst muss es erstmal so gehen...
Hallo Kalle, hat sich hier etwas getan? Aber viel interressanter fände ich, wenn ich beim Erstellen der Skizze diese sofort ausblenden könnte. Weißt du da Rat? bis denn Rainer Zufall ------------------ Auch Kopfarbeit sollte Hand und Fuß haben. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Lutz Federbusch Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau
Beiträge: 3094 Registriert: 03.12.2001 alle SW seit 97+ AutoCAD2016-2022 ERP ProAlpha + CA-Link Intel Core i7-7820K 32GB Win10x64 Quadro K5000 SpacePilot
|
erstellt am: 14. Nov. 2006 14:01 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
|
Kalle Mitglied Student
Beiträge: 706 Registriert: 14.04.2002
|
erstellt am: 15. Nov. 2006 08:00 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Zitat: Original erstellt von Rainer Zufall: Hallo Kalle,hat sich hier etwas getan? Aber viel interressanter fände ich, wenn ich beim Erstellen der Skizze diese sofort ausblenden könnte. Weißt du da Rat? bis denn Rainer Zufall
Also wenn ich ehrlich bin - keine Ahnung. Hab das Makro nicht weiter vergfolgt, da ich meine Abmasse mittlerweile über ein anderes Makro direkt in die Stückliste hole. Hab auch nicht wirklich die Zeit mich grade um irgendwas in der Richtung zu kümmern. Sorry. Bis dann, Kalle ------------------ ----------------------------------------- Es gibt immer mehr Lösungen als Probleme. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Lutz Federbusch Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau
Beiträge: 3094 Registriert: 03.12.2001 alle SW seit 97+ AutoCAD2016-2022 ERP ProAlpha + CA-Link Intel Core i7-7820K 32GB Win10x64 Quadro K5000 SpacePilot
|
erstellt am: 15. Nov. 2006 09:40 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
|
BET Mitglied Konstrukteur
Beiträge: 3 Registriert: 25.10.2008 Cimatron SolidWorks
|
erstellt am: 04. Nov. 2008 10:13 <-- editieren / zitieren --> Unities abgeben: Nur für T. Steffen
Zitat: Original erstellt von Kalle: [B]Aheu,hier noch ein Beispiel warum es auch bei Volumenkörpern zwingend erforderlich ist die generierten Werte auf Tauglichkeit zu überprüfen. Bis dann, Kalle [/b] Hallo Kalle,
Dein Makro ist immer noch super. Kannst Du mir noch sagen, wie ich die vielen Nachkommastellen auf zwei reduzieren kann? Wenn ich "krumme" Maße habe, dann macht SWx2008 13 Nachkommastellen. Danke für die Hilfe! Gruß BET ------------------ Gruß BET! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |