Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Neues Makro: Masse und Oberfläche in gefälligen Einheiten

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
  
Technische Kommunikation mit der 3DEXPERIENCE Plattform
Autor Thema:  Neues Makro: Masse und Oberfläche in gefälligen Einheiten (10162 mal gelesen)
Piet
Mitglied
Konstruktionsleiter & Konstrukteur


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

Beiträge: 661
Registriert: 20.11.2001

SWx 2021

erstellt am: 07. Mrz. 2005 11:11    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


Masseneinheiten.zip

 
Es ist soweit: mein erstes Makro ist IMHOIn my humble oppinion (Meiner Meinung nach) so weit, das ich es veröffentlichen kann. Na ja, der ursprüngliche Code ist von Stefan Berlitz, aber ich habe noch einiges drangestrickt.

Was das Makro macht:
Es wurde schon wiederholt diskutiert, dass SWXSolidWorks die Angaben für die gesamte Oberfläche und die Masse eines Teils nicht unbedingt in anschaulichen Einheiten anzeigt.
Dieses Makro liest die Masse und Oberfläche eines Teils aus, rechnet sie in gefällige Einheiten um und trägt diesen Wert als benutzerdefinierte Eigenschaft ein.
Im einzelnen:
Ist die Masse größer als 1000 kg, wird der Wert in Tonnen angezeigt. Ist er kleiner als 1 kg, wird die Masse in Gramm angezeigt, bei einer Masse kleiner 1 Gramm erfolgt die Anzeige in Milligramm.
Die Oberfläche wird entsprechend in m², dm², cm² oder mm² angezeigt. Auf Angström und Hektar hab ich verzichtet. ;o)
Damit lässt sich auf einer Zeichnung leicht ein Bezugshinweis setzen, der einen dieser Werte wiedergibt.
Das Makro funktioniert nur bei Einzelteilen, bei Baugruppen oder Zeichnungen erfolgt kein Eintrag.

Ich schicke das Ding auch noch an die Makro-Tauschbörse und hoffe, das jemand es gebrauchen kann und sich hierüber freut.

Piet

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

Teddibaer
Ehrenmitglied V.I.P. h.c.
Struktur-Experte



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

Beiträge: 2125
Registriert: 09.02.2004

erstellt am: 07. Mrz. 2005 11:26    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 Piet 10 Unities + Antwort hilfreich

Für die Mühe gibt's gleich mal 10Unities.

Trotzdem mal die Frage gestellt (wer immer hier auch mitliest):

Bekommen wir das hin, dass zu automatisieren? d.h. wenn's vergessen wird (Makro ausführen), soll der Wert trotzdem irgendwie aktualisiert werden?!?!

------------------
Gruß, der Teddibaer

Besucht mich doch mal ...
----------------
Sie brauchen einen Computer nicht einzuschalten um festzustellen, ob WINDOWS installiert ist.
Sehen sie einfach nach, ob die Aufschrift auf der Reset Taste noch lesbar ist.

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

Piet
Mitglied
Konstruktionsleiter & Konstrukteur


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

Beiträge: 661
Registriert: 20.11.2001

SWx 2021

erstellt am: 07. Mrz. 2005 11:59    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

Ja, das wäre natürlich sehr edel. Ich bin aber gerade mal vom programmiertechnischen Eunuchen zum Praktikanten aufgestiegen und habe dazu noch nicht mal eine Idee, wie man das verwirklichen könnte.
Ich glaube nicht, dass man in den benutzerdefinierten Eigenschaften eine if-then Abfragen direkt unterbringen kann. Ebenso wenig in Gleichungen oder Bezugshinweisen, denke ich.
Für Ideen und Anregungen bin ich gerne offen, es darf sich natürlich auch jeder an Verbesserungen meines Makros austoben.

Piet

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

Andreas Müller
Mitglied
Masch. Ing. HTL / Betriebsing. STV


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

Beiträge: 1151
Registriert: 11.04.2001

erstellt am: 07. Mrz. 2005 14:31    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 Piet 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Teddibaer:
Für die Mühe gibt's gleich mal 10Unities.

Richtig  !

------------------
Gruss
Andreas
A+E Müller AG

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

Jan
Mitglied
Dipl.-Ing.


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

Beiträge: 1270
Registriert: 23.12.2000

Dienstl. Lenovo 64GB, nVidia, Win10, SW 2019, 2021 u. 2022
Priv. Dell M7740 16GB, nVidia , Win10,
SW 2012, SW 2021 und SW 2022 Prem.

erstellt am: 08. Mrz. 2005 06:47    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 Piet 10 Unities + Antwort hilfreich

Moin!

@Teddibär
Es gibt die Möglichkeit Macro-Feature zu erzeugen! Findet man in der API Hilfe. Unter den Whats New in 2003 gibt es dazu Beispiel!
Vielleicht kann man da ja was draus machen!

Jan

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

Thomas5
Mitglied
Konstrukteur, SWX-Admin


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

Beiträge: 420
Registriert: 14.07.2003

SWX2013

erstellt am: 08. Mrz. 2005 11:31    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 Piet 10 Unities + Antwort hilfreich


Masseneinheiten.zip

 
Hallo Jan,
die Methode
MassProp = ModelDoc.GetMassProperties2(status) liefert für status immer nur "unbekannter Fehler". Wäre halt zu einfach, wenn´s auf Anhieb funktionieren würde.
Vielleicht hat noch jemand eine Idee, die Sache in Schwung zu bringen.
Viele Grüße
Thomas

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

Jan
Mitglied
Dipl.-Ing.


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

Beiträge: 1270
Registriert: 23.12.2000

Dienstl. Lenovo 64GB, nVidia, Win10, SW 2019, 2021 u. 2022
Priv. Dell M7740 16GB, nVidia , Win10,
SW 2012, SW 2021 und SW 2022 Prem.

erstellt am: 08. Mrz. 2005 15:14    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 Piet 10 Unities + Antwort hilfreich


VolumeinFeet.zip

 
Habe das hier gefunden! Ist ein Macrofeature und liest das Volumen in Fuß aus. Wenn man es startet, dann erscheint das Macro-Feature im Featurebaum und es wird ein Eintrag in die Eigenschaften geschrieben.
Vieleicht hilft es dir wieter.

Jan

[Diese Nachricht wurde von Jan am 08. Mrz. 2005 editiert.]

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

Thomas5
Mitglied
Konstrukteur, SWX-Admin


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

Beiträge: 420
Registriert: 14.07.2003

SWX2013

erstellt am: 08. Mrz. 2005 17:47    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 Piet 10 Unities + Antwort hilfreich


Masseneinheiten.zip

 
Hallo, Jan
Dein Tipp war´s, was es gebracht hat.
Also nun ein Makrofeature für Maße umrechnen.
Viele Grüße
Thomas

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

Jan
Mitglied
Dipl.-Ing.


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

Beiträge: 1270
Registriert: 23.12.2000

Dienstl. Lenovo 64GB, nVidia, Win10, SW 2019, 2021 u. 2022
Priv. Dell M7740 16GB, nVidia , Win10,
SW 2012, SW 2021 und SW 2022 Prem.

erstellt am: 14. Mrz. 2005 10:29    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 Piet 10 Unities + Antwort hilfreich

Moin Thomas,

habe noch eine Anregung!
Gibt es die Möglichkeit, dass sich das FeatureMacro nach einem z.B. Strg+Q immer an das Ende des Featurebaum stellt?
Das Macro liest sonst nur die Volumina und Oberflächen die oberhalb des Macros stehen! Man kann es sicherlich im Featurebaum an das Ende schieben, aber ob da jeder drann denkt?!?

Jan

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

Thomas5
Mitglied
Konstrukteur, SWX-Admin


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

Beiträge: 420
Registriert: 14.07.2003

SWX2013

erstellt am: 14. Mrz. 2005 16:47    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 Piet 10 Unities + Antwort hilfreich

Hallo Jan,
soweit ich das rausbekommen habe, geht das nicht. Man kann sicherlich noch ein Makro schreiben, das das dann tut. Aber das wäre ja von hinten durchs Auge ....
Viele Grüße
Thomas

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

u.clemens
Mitglied
Konstrukteur


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

Beiträge: 964
Registriert: 04.07.2000

engineer's law
o cheap
o fast
o good
check only two !

erstellt am: 15. Mrz. 2005 12:13    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 Piet 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Thomas5:
Hallo Jan,
soweit ich das rausbekommen habe, geht das nicht.


Das geht schon!
Die Funktion FeatureMgr.INsertMacroFeature hat einen Parameter namens options. Dieser Parameter kann 2 Werte annehmen:
- swMacroFeatureByDefault
- swMacroFeatureAlwaysAtEnd
Du solltest also den zweiten nehmen, wenn das "fette M" immer am Ende stehen sollte ...

------------------
mfg uc

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

Thomas5
Mitglied
Konstrukteur, SWX-Admin


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

Beiträge: 420
Registriert: 14.07.2003

SWX2013

erstellt am: 15. Mrz. 2005 13:35    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 Piet 10 Unities + Antwort hilfreich

Hallo uc,
vielen Dank!
Es geht doch. Prima, klasse...
Also für alle, die das noch korrigieren wollen... So muß die Zeile aussehen:
swModel.FeatureManager.InsertMacroFeature "Masseinheiten", "", (methods), (paramNames), (paramTypes), (paramValues), Nothing, 1
Also den letzten Parameter von "0" in "1" ändern.

Viele Grüße
Thomas

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

Piet
Mitglied
Konstruktionsleiter & Konstrukteur


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

Beiträge: 661
Registriert: 20.11.2001

SWx 2021

erstellt am: 29. Sep. 2005 17:19    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


Masseinheit.zip

 
Nach längerer Zeit hab ich mich jetzt endlich daran gesetzt, das Makro-Feature bei mir einzuführen. Die Variante von Thomas funktioniert bei mir nicht richtig, ich kriege immer falsche Werte für die Masse eingetragen.

Also versuche ich es neu. Mein ursprüngliches Makro (siehe oben) funktioniert immer noch tadellos, wenn ich auch nicht recht verstehe warum. Der Code
MassProp = ModelDoc.GetMassProperties2(status)
hat m.E. eigentlich eine falsche Syntax, haut da aber hin.

Wenn ich denselben Code in das Makro-Feature eintrage, funktioniert es nicht. Hmm.

Dann versuche ich es so:
MassProp = swDocExt.GetMassProperties(0, status)
, aber hierbei bekomme ich immer den status=1, d.h. swMassPropertiesStatus zeigt "Unknown error".

Nach einigem Suchen versuche ich es mit der Luxusversion: GetBodies und AddBodies, damit würden auch Multibody-Parts richtig verarbeitet. Beim Durchlauf bleibt das Makro hängen mit "Automatisierungsfehler: Das aufgerufene Objekt wurde von den Clients getrennt". Die Zeile, in der das passiert, habe ich unten markiert.
Ich bin mir nicht sicher, ob die Objekte richtig aufgerufen werden, "Extension" zum Beispiel.
Hat jemand eine Idee? Es darf natürlich jeder nach Herzenslust selber probieren und programmieren.

Piet

Anmerkung: Aus Platzgründen den alten Code hier gelöscht.
Piet, 18.10.05

[Diese Nachricht wurde von Piet am 18. Okt. 2005 editiert.]

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

rhrumpel
Mitglied
Konstrukteur


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

Beiträge: 648
Registriert: 21.03.2004

Firma:
SWX 2017 Premium SP3.0 (Primär)
SWX 2021 Premium SP3.0
Lenovo P70
32 GB RAM
i7-6820HQ 2,7Ghz
Quadro M4000M
WIN10 PRO 64bit
3d Connexion SpacePilot

erstellt am: 30. Sep. 2005 08:22    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 Piet 10 Unities + Antwort hilfreich

Guten morgen zusammen,

habe das Makro gerade mal ausprobiert, funktioniert soweit auch ganz gut. Jedoch rechnet das von Thomas falsch. Wenn ich einen Würfel mit 1 dm³ zeichne (100x100x100mm) rechnet Solidworks mit einem Stahl aus meiner Mat-Datenbank 7800 gr. aus.

Das Makro von Thomas trägt Oberfläche 6,0 dm² und Masse 1,0 g ein !?

Das Original von Piet rechnet richtig: Oberfläche 6,0 dm² und Masse 7,8 kg.

Gruß
Ralf

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

Piet
Mitglied
Konstruktionsleiter & Konstrukteur


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

Beiträge: 661
Registriert: 20.11.2001

SWx 2021

erstellt am: 19. Okt. 2005 09:35    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


Masseneinheiten.zip

 
Jetzt ist es (anscheinend) endlich so weit: Das MakroFeature funktioniert und rechnet richtig.
Aus wirklich rätselhaften Gründen ist es sauschwer, die Masseneigenschaften korrekt in die swmRebuild Funktion zu bekommen, da hab ich mir lange die Zähne dran ausgebissen. Um ehrlich zu sein, verstehe ich nicht genau, warum das jetzt funktioniert, aber ich hab keinen Fehler mehr gefunden.

Hier nochmal die Funktion:
Dies Makro fügt in Teilen ein Makrofeature an das Ende des Featurebaums an. Bei jedem Rechendurchlauf werden Gesamtoberfläche, Volumen und Gewicht ausgelesen und in anschaulichen Eigenschaften ausgegeben (z.B. Gewicht in kg). Diese Werte werden als benutzerdefinierte Eigenschaften in das Teil eingetragen, so dass man in einem Zeichnungsrahmen leicht einen Verweis darauf machen kann.
Wenn das Makro einmal eingefügt ist, braucht man nichts mehr machen, die Werte werden bei jedem Durchlauf aktualisiert.

Piet

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

G. Dawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 19. Okt. 2005 10:47    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 Piet 10 Unities + Antwort hilfreich

Hallo Piet!

Super Ding, Dein Makro!!

Doch, woher nimmt Dein Makro das spez. Gewicht?
Wir habe eine eigene Matrerial Datenbank (eifach eine neue definiert) und dort haben wir "unsere" Daten drin. Doch Dein Makro stimmt nicht mit den SolidWorks Eigenschaften Masse überein...?!?! 

EDIT: Egal welches Material ich wähle (SWXSolidWorks Standard, unsere db), das Teil bleibt immer gleich schwer...

[Diese Nachricht wurde von G. Dawg am 19. Okt. 2005 editiert.]

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

Piet
Mitglied
Konstruktionsleiter & Konstrukteur


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

Beiträge: 661
Registriert: 20.11.2001

SWx 2021

erstellt am: 19. Okt. 2005 13:18    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

Wir nutzen die Materialdatenbank nicht, von daher bin ich nicht auf dieses Problem gestoßen. Ich kann den Fehler nachvollziehen. Solange keine Materialdatenbank ausgewählt ist, und die Dichte über die Materialeigenschaften gesetzt wird, funktioniert alles.
Wenn man die Dichte ändert, wird die Masse allerdings erst nach einem Ctrl-Q aktualisiert, nicht nach einem Ampeldurchlauf.

Anscheinend benutzt SWx bei Verwendung der Materialdatenbank eine andere Variable für Dichte als vorher.

In meinem Makro passiert es hier:

    Dim swApp As SldWorks.SldWorks
    Dim ModelDoc As SldWorks.ModelDoc2
    Dim swDocExt As SldWorks.ModelDocExtension
    Dim swMass As SldWorks.MassProperty
    ...
    Set swApp = CreateObject("SldWorks.Application")
    Set ModelDoc = swApp.ActiveDoc
    ...
    Set swDocExt = ModelDoc.Extension
    Set swMass = swDocExt.CreateMassProperty
    masse = swMass.Mass

Zitat aus der Onlinehilfe über CreateMassProperty:
The MassProperty object obtains mass property information about one or more solid bodies in the document from which the MassProperty object is obtained.

Man sollte meinen, dass damit die Masseneigenschaften zu kriegen sind, aber das gilt wohl für die Materialdatenbank nicht, verstehe das, wer wolle.

An dieser Stelle passe ich. Ich hab erbärmlich viel Zeit reingesteckt, damit das Ding soweit läuft, und da wir die Materialdatenbank nicht nutzen, lass ich es dabei.
Wenn sich damit noch jemand auseinandersetzen will, gerne. Zum Zugriff auf die Materialdatenbank per API ist dieser alte Beitrag von mir eventuell hilfreich: http://ww3.cad.de/foren/ubb/Forum2/HTML/008295.shtml

Piet

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

G. Dawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 19. Okt. 2005 14:10    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 Piet 10 Unities + Antwort hilfreich

Ok! Ich habe in zusammenarbeit mit unserem Makro-Spezialisten herausgefunden woran es liegt: Solidworks!

Nachdem das Material geändert wurde, das Teil speicher, dann das Teil NEU LADEN und CTRL+Q (STRG+Q für alle die, die keine schweizer Tastatur haben  ) drücken ... die Masse wird aktualisiert!

Vielen Dank nochmals für Dein Makro!!!

------------------
you can't change the world but you can leave a dent
------------------

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

Piet
Mitglied
Konstruktionsleiter & Konstrukteur


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

Beiträge: 661
Registriert: 20.11.2001

SWx 2021

erstellt am: 19. Okt. 2005 14:28    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


Masseneinheiten.zip

 
Na super!

Ich häng das Makro noch mal an, nachdem ich noch ein paar überflüssige Zeilen rausgeschmissen hab, um Verwirrung zu vermeiden.
Den Volumenwert hab ich auskommentiert, wer das braucht, kann es leicht wieder aktivieren.

An die Makro-Tauschbörse schick ich es auch noch.

Piet

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

Piet
Mitglied
Konstruktionsleiter & Konstrukteur


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

Beiträge: 661
Registriert: 20.11.2001

SWx 2021

erstellt am: 25. Jan. 2006 17:15    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


Masse.zip

 
In der vorigen Version gab's bei manchen Geometrieänderungen Fehlermeldungen. Dank Frank Lindeman vom API-Support funktioniert es jetzt richtig.

Piet

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

Jan
Mitglied
Dipl.-Ing.


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

Beiträge: 1270
Registriert: 23.12.2000

Dienstl. Lenovo 64GB, nVidia, Win10, SW 2019, 2021 u. 2022
Priv. Dell M7740 16GB, nVidia , Win10,
SW 2012, SW 2021 und SW 2022 Prem.

erstellt am: 26. Jan. 2006 07:42    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 Piet 10 Unities + Antwort hilfreich


Makro_01.jpg


Makro_02.jpg

 
Moin Piet,

leider bekomme ich folgende Fehlermeldung beim öffnen eines neuen teils, wenn ich das Featuremakro in die Vorlage einbinde!
Ist bei SW 2004 und SW 2006 der Fall!

Jan

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

Piet
Mitglied
Konstruktionsleiter & Konstrukteur


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

Beiträge: 661
Registriert: 20.11.2001

SWx 2021

erstellt am: 26. Jan. 2006 10:44    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

Hallo Jan,

da haben wir wieder mal das alte Problem: Ich hab das Makro in Early Binding geschrieben, d.h. das Makro enthält diverse Verweise auf SWXSolidWorks-Libraries, in diesem Fall auf Version 2006. Mit 2004 wird es daher nicht laufen. Wieso es bei 2006 nicht läuft, ist mir nicht klar. Bei uns läuft SP 3.0, habt ihr eine frühere?

Ich hab eben auf die Schnelle eine Version in Late Binding versucht, bei der diese Verweise nicht enthalten sind, aber die hat dann auf die Schnelle auch nicht funktioniert. Weiß nicht, ob ich das hinkrieg.

Piet

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

CASIOfx-991ES
Mitglied
Techniker

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

Beiträge: 1
Registriert: 19.12.2013

erstellt am: 19. Dez. 2013 11:56    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 Piet 10 Unities + Antwort hilfreich

Hallo, erstmal möchte ich mich für dieses super Makro, bei allen Mitwirkenden bedanken, echt super!
Ich habe aber noch eine Frage: Gibt es die Möglichkeit dieses Makro vielleicht auch auf eine Baugruppe anzuwenden? Also ich meine damit, dass ich diese Funktion gerne nutzen würde, um in einer Baugruppenzeichnung das Gewicht in einer sinnigen Einheit im Schriftfeld anzugeben. Ich bin für jede Anregung/Idee dankbar. MFG CASIOfx-991ES

------------------
nää ne!!??!!

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