| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS | | | | Innovationstag mit SolidCAM und Plogmann bei HEDELIUS in Meppen |
Autor
|
Thema: API - Einstellung der Meßoptionen (1749 mal gelesen)
|
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: 21. Mai. 2001 14:43 <-- editieren / zitieren --> Unities abgeben:
Hallo, unter Extras/Eigenschaften Masse... erscheint ein Fenster zum Betrachten der Masseeigenschaften. Mit dem Button "Optionen..." kommt man in ein Fenster "Meßoptionen"! Wer weiß, wie man die dort einzustellenden Werte per API-Makro verändern kann ? Ich habe leider nur die Funktion ToolsMassProps gefunden - die öffnet mir allerdings nur das Fenster - Einstellen muß man selber. Das Aufzeichnen eines Makros führt leider auch nicht weiter, weil da nur eben diese Funktion rauskommt - die Veränderungen in dem Fenster werden mit dem MakroRecorder nicht protokolliert. mfg uc
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: 21. Mai. 2001 15:31 <-- editieren / zitieren --> Unities abgeben: Nur für u.clemens
Hallo uc, der Wert ist die Dichteeigenschaft des Parts, das kannst du mit der SetUserPreferenceDoubleValue setzen. Beispiel: Code:
' Einige Deklarationen aus der swconst.bas Const swDocPART = 1 Const swDocASSEMBLY = 2 Const swDocDRAWING = 3Const swMaterialPropertyDensity = 7 Sub Main
Dim SwApp As Object Dim ModelDoc As Object Dim retval As Boolean Dim Dichte as Double Set SwApp = CreateObject("SldWorks.Application") Set ModelDoc = SwApp.ActiveDoc ' wenn nix geladen direkt wieder raus If ModelDoc Is Nothing Then Exit Sub End If ' ' jetzt überprüfen, ob das aktive Dokument ein Modell ist, denn nur ' darin können wir sinnvoll die aktuelle Dichte setzen If ModelDoc.Gettype() <> swDocPART Then ' Kein Part, keine Äktschen :-)) Exit Sub End If ' ACHTUNG: die Dichte wird in kg/m^3 angegeben, also nicht mit den ' vielen Nullen wie im Dialog (dort g/cm^3) Dichte = 7850 ' z.B. Stahl if (ModelDoc.SetUserPreferenceDoubleValue(swMaterialPropertyDensity, Dichte)) then Msgbox "Okay" else Msgbox "Shit, hat nicht geklappt" End if End Sub
Hoffe damit kommst du weiter, ciao, Stefan ------------------ -- Inoffizielle Solidworks Hilfeseite http://solidworks.cad.de EMail: Stefan.Berlitz@solidworks.cad.de
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: 21. Mai. 2001 16:22 <-- editieren / zitieren --> Unities abgeben:
Zitat: Original erstellt von StefanBerlitz: der Wert ist die Dichteeigenschaft des Parts,
hallo stefan, ja die Dichteeigenschaft ist auch dabei - aber das ist auch der einzige Wert, den wir schon seit langem "von außen" ("Materialdatenbank") steuern. Mir gehts nun aber mehr um die Angaben: - Längenmaß (Meter, Zentimeter, Millimeter, ...) im Bild = Meter - Dezimalstellen - im Bild = 2 mfg uc
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: 22. Mai. 2001 07:55 <-- editieren / zitieren --> Unities abgeben: Nur für u.clemens
Hi uc, ups, die APIs kenn ich auch nicht, aber es gibt ja noch das gute alte Sendkeys Das könnte dann so aussehen: Code:
Dim swApp As Object Dim ModelDoc As ObjectSub main() Set swApp = CreateObject ("SldWorks.Application") Set ModelDoc = swApp.ActiveDoc ' den Extras/Masseeigenschaftsdialog aufrufen Call ModelDoc.ToolsMassProps ' und mit den Tastaturkommandos füttern ' %o - ruft die Optionen auf ' {TAB}mfm - auf Längenmaße, dann ein M (könnte Meter oder Millimeter sein, ' je nachdem was vorher eingestellt war, dann f, jetzt garantiert Fuß ' dann nochmal m, jetzt garantiert Millimeter ' alles andere nach demselben Schema ' SendKeys "%o{TAB}mfm{TAB}4{TAB}{TAB}rg{TAB}4{TAB}{TAB}{TAB}{TAB}0.00785{TAB}{ENTER}",True End Sub
Kurzbeschreibung zu Sendkeys mit Auflistung der Sondertasten usw. entweder in der MSDN oder unter http://solidworks.cad.de/apitut_kap01.htm Ciao, Stefan ------------------ -- Inoffizielle Solidworks Hilfeseite http://solidworks.cad.de EMail: Stefan.Berlitz@solidworks.cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|