| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| |
| AMB 2024 |
Autor
|
Thema: Dichte aus Teil auslesen (2226 mal gelesen)
|
oma1 Mitglied designer
Beiträge: 131 Registriert: 22.03.2005 SW 2007 SP 3.4<P>Windows XP SP2<P>DELL Precision M65 Intel Core 2 2Ghz 2GB RAM
|
erstellt am: 19. Okt. 2006 07:39 <-- editieren / zitieren --> Unities abgeben:
Was muss man im Eigenschftsnamenfeld unter Dateieigenschften eingeben, um dei Dichte in der Liste stehen zu haben, die SW auch verwendet, um die Masse zu berechnen ???? Oder geht das gar nicht ???? ------------------ cma Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Oberli Mike Ehrenmitglied V.I.P. h.c. Dipl. Maschinen Ing.
Beiträge: 3814 Registriert: 29.09.2004 SOLIDWORKS 2024 SP1.0 SOLIDWORKS 2023 SP5.0 SOLIDWORKS 2022 SP5.0 SOLIDWORKS 2021 SP5.1 SOLIDWORKS 2020 SP5 SOLIDWORKS 2019 SP5 (VM)
|
erstellt am: 19. Okt. 2006 07:55 <-- editieren / zitieren --> Unities abgeben: Nur für oma1
Hab da mal was probiert. Eigentlich ganz einfach. In den Eigenschaften beim Wert einfach die Dichte auswählen. --> "SW-Density@Teil1.SLDPRT" Leider aber gibt es da ein Schluckauf für mich. Für die Auswahl der Volumeneinheit gibt es Angström^3 Nanometer^3 Mikrometer^3 Milimeter^3 Zentimeter^3 Meter^3 Mikrozoll^3 Milizoll^3 Zoll^3 Fuss^3 das Dezimeter^3, welches für eine Dichteangabe üblich ist (jedenfalls in der Schweiz) fehlt. Bei uns steht dieses Angabe auf Millimeter^3 und zeigt somit immer 0.000 an. Kann man dieses Auswahlmenu irgendwo ergänzen, so dass auch die Dezimeter^3 habe? ------------------ The Power Of Dreams Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
G. Dawg Ehrenmitglied V.I.P. h.c. Teamleiter FEM Simulation
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. 2006 08:10 <-- editieren / zitieren --> Unities abgeben: Nur für oma1
Genau so wie Mike sagt! -> nur per Mausklick und nicht per handeingabe! Hier (siehe Bild) sind noch ein paar andere Sachen, welche sich per Mausklick einfügen lassen. ------------------ SolidWorks is my friend... SolidWorks, frieeeend! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
oma1 Mitglied designer
Beiträge: 131 Registriert: 22.03.2005 SW 2007 SP 3.4<P>Windows XP SP2<P>DELL Precision M65 Intel Core 2 2Ghz 2GB RAM
|
erstellt am: 19. Okt. 2006 08:13 <-- editieren / zitieren --> Unities abgeben:
|
G. Dawg Ehrenmitglied V.I.P. h.c. Teamleiter FEM Simulation
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. 2006 08:16 <-- editieren / zitieren --> Unities abgeben: Nur für oma1
|
oma1 Mitglied designer
Beiträge: 131 Registriert: 22.03.2005 SW 2007 SP 3.4<P>Windows XP SP2<P>DELL Precision M65 Intel Core 2 2Ghz 2GB RAM
|
erstellt am: 19. Okt. 2006 08:43 <-- editieren / zitieren --> Unities abgeben:
Das hilft mir leider alles nix. Ich habe ien Macro mit einem Userform, und fülle Dait alle Variabelfelder aus, die ich brauche, um dann das Schriftfeld automatisch zu befüllen, wenn das Teil in eine Zeichnung eingefügt wird. Bei uns ist also das 3D-Teil der Träger aller informationen. Diese Variabeln werden nun durch das Userform in dem Macro befüllt. Z.B. der EIgenschftsname Werkstoff: Er wird hirmit ausgelesen : dummy = Model.AddCustomInfo("Werkstoff", "Text", Werkstoff.Text) Geht das auch mit der Dichte ???? ------------------ cma Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
G. Dawg Ehrenmitglied V.I.P. h.c. Teamleiter FEM Simulation
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. 2006 08:49 <-- editieren / zitieren --> Unities abgeben: Nur für oma1
Wieso sollte es nicht funktionieren? Du musst nur die Namen ändern. Eigenschaftsname: Dichte Typ: Text Wert/Ausdruck: "SW-Density" Wenn ich Du wäre, würd ich diese Informationen gleich in die Vorlage speichern! Dann brauchst Du kein Makro für die Dichte mehr. ------------------ SolidWorks is my friend... SolidWorks, frieeeend! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Piet Mitglied Konstruktionsleiter & Konstrukteur
Beiträge: 661 Registriert: 20.11.2001 SWx 2021
|
erstellt am: 19. Okt. 2006 08:51 <-- editieren / zitieren --> Unities abgeben: Nur für oma1
Um die Dichte in anschaulichen Einheiten zu bekommen, wäre ein MakroFeature möglich, welches die Dichte ausliest, umrechnet und als benutzerdefinierte Eigenschaft speichert. Natürlich geht das auch mit einem normalen Makro, aber dann würde bei einem Wechsel des Materials die berechnete Dichte nicht aktualisiert. In meinem MakroFeature "Masseneigenschaften" (Makrotauschbörse Nr. 27) hab ich ähnliches gemacht, das lässt sich leicht anpassen. http://solidworks.cad.de/mm_boerse03.htm Piet Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
oma1 Mitglied designer
Beiträge: 131 Registriert: 22.03.2005 SW 2007 SP 3.4<P>Windows XP SP2<P>DELL Precision M65 Intel Core 2 2Ghz 2GB RAM
|
erstellt am: 19. Okt. 2006 10:01 <-- editieren / zitieren --> Unities abgeben:
Aber ich schaff es einfach nicht die Dichte, die in einem Teil hinterlegt ist mit einem Makro auszulesen, und dann mit einem andern Wert, den man eingibt zu überschreiben !!!! Es helfne mir da leider auch die schon vorhandenen Makros in der Börse nicht. Hat sowas schón mal wer gemacht ??? ------------------ cma Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
G. Dawg Ehrenmitglied V.I.P. h.c. Teamleiter FEM Simulation
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. 2006 10:23 <-- editieren / zitieren --> Unities abgeben: Nur für oma1
Frag doch einmal die richtige Frage!!! Was GANZ GENAU willst Du tun/erreichen? Willst Du die Dichte ändern? ....studier einmal das Kopfausfüll Programm von Stefan's Seite. So lese ich die SWX Version aus, beim Kopfausfüllen:
Code: dummy = Zeichnung.AddCustomInfo3("", "swx_version", swCustomInfoText, "swx_version")
So fülle ich das aktuelle Datum in den Zeichnungskopf:
Code: If Zeichnung.CustomInfo("GEZDAT") <> "" And Zeichnung.CustomInfo("GEZDAT") <> " " Then Formular.Gezeichnet_Datum.Value = Zeichnung.CustomInfo("GEZDAT") Else Formular.Gezeichnet_Datum.Value = Date End If
Vielleicht hilft Dir das ja weiter...
------------------ SolidWorks is my friend... SolidWorks, frieeeend! 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: 19. Okt. 2006 10:26 <-- editieren / zitieren --> Unities abgeben: Nur für oma1
MassProp = ModelDoc.GetMassProperties() Masse = MassProp(5) Volumen = MassProp(3) Masse = Masse * 1000 ' umgerechnet in g Dichtewert = (Masse / Volumen / 1000) ' g/cm3 Das war das Auslesen und Berechnen der Dichte. Und so kannst Du sie wieder setzen: ModelDoc.SetUserPreferenceDoubleValue swMaterialPropertyDensity, 7850 Dann liest SW in seiner Dichteeigenschaft anschließend den Wert von Stahl aus...
------------------ Lutz Federbusch Mein Gästebuch Der Mensch, Herr oder Sklave der Technik? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)
Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 19. Okt. 2006 10:31 <-- editieren / zitieren --> Unities abgeben: Nur für oma1
Hallo oma1, Zitat: Original erstellt von oma1: Aber ich schaff es einfach nicht die Dichte, die in einem Teil hinterlegt ist mit einem Makro auszulesen, und dann mit einem andern Wert, den man eingibt zu überschreiben !!!!
Jetzt bin ich verwirrt, Dichte auslesen und in eine Dateieigenschaft schreiben ist eine Sache, Dichte setzen eine ganz andere. Oder hast du erwartet, du setzt eine Dateieigenschaft gleich der Dichte, änderst die Dateieigenschaft und SolidWorks schluckt das und berechnet von da aus die Masseeigenschaften neu? Du kannst dir ja mal mein Beispiel aus dem API Tutorial anschauen ( http://solidworks.cad.de/apitut_kap04.htm ), das ist zwar alt, aber wohl das was du suchst, wenn du das setzen willst. Zumindest ein Anfang Oder schau einfach das Beispiel aus der API Hilfe zum Stichwort MassProperty: ensity an, da ist das ganze etwas moderner. Ciao, Stefan ------------------ Inoffizielle deutsche SolidWorks Hilfeseite http://solidworks.cad.de Member of CAD.de BOINC Team - | Seti@Home | CPDN | Einstein@Home Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
oma1 Mitglied designer
Beiträge: 131 Registriert: 22.03.2005 SW 2007 SP 3.4<P>Windows XP SP2<P>DELL Precision M65 Intel Core 2 2Ghz 2GB RAM
|
erstellt am: 19. Okt. 2006 13:46 <-- editieren / zitieren --> Unities abgeben:
@StefanBerlitz Das habe ich gesucht :-) 10 Us sind abgeschickt !!! Aber was mache ich, wenn er mir trotz aktivem Part die Meldung gibt, es ist kein Part geöffnet ????
Dies passiert, wenn ich den Makroteil "Dichte auslesen", der allein funtioniert in ein anderes Makro integriere, das Makro aber komplett gleich lasse ????????????????????????? ------------------ cma 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: 19. Okt. 2006 14:57 <-- editieren / zitieren --> Unities abgeben: Nur für oma1
Makro im Makro ausführen klingt mir nicht gut. Mach Dir lieber ein Modul und kopiere das ins andere Teil. Zu Deinem aktiven Teil solltest Du kontrollieren, ob Du bei der richtigen SolidWorks-Session bist (klinkst Du Dich an die aktive oder startest Du eine neue?)... ------------------ Lutz Federbusch Mein Gästebuch Der Mensch, Herr oder Sklave der Technik? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
oma1 Mitglied designer
Beiträge: 131 Registriert: 22.03.2005 SW 2007 SP 3.4<P>Windows XP SP2<P>DELL Precision M65 Intel Core 2 2Ghz 2GB RAM
|
erstellt am: 19. Okt. 2006 15:08 <-- editieren / zitieren --> Unities abgeben:
|
| Konstrukteur / Entwickler [m/w/d] | Herzlich willkommen bei KOQOON, einem innovativen Startup, welches die Art und Weise, wie wir grillen, neu definiert. Als Premiummarke sind wir stolz darauf, unsere einzigartigen und intelligenten Produkte in Deutschland zu entwickeln und herzustellen. Diese zeichnen sich nicht nur durch technologische Überlegenheit aus, sondern bestechen auch durch ihr ästhetisches Design und ihre Benutzerfreundlichkeit.... | Anzeige ansehen | Entwicklung |
|
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: 19. Okt. 2006 15:11 <-- editieren / zitieren --> Unities abgeben: Nur für oma1
Da man auch versteckte (unsichtbare) Sessions erzeugen kann, lohnt es sich vielleicht doch, über meine Frage nachzudenken... Und ob Du in Deinem Makro noch ein aktives Dokument hast, kannst Du Dir ja über dessen Namen nach jedem Befehl wieder anzeigen lassen. ------------------ Lutz Federbusch Mein Gästebuch Der Mensch, Herr oder Sklave der Technik? [Diese Nachricht wurde von Lutz Federbusch am 19. Okt. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |