Abrufen des Dimensionswerts durch Angeben der Dimensions-ID

Hallo ihr alle

Ich suche nach dem Befehl, den ich in meinem SolidWorks-Makro verwenden soll, um in einer Variablen den Wert einer Bemaßung abzurufen, aber so wie er festgelegt ist (mit der gleichen Anzahl von Dezimalstellen), indem ich die Bemaßung in der Form "D1@Esquisse1@199999.SLDPRT" angebe.

Wenn Sie mir eine Lösung vorschlagen möchten, danke ich Ihnen im Voraus.

 

Hallo

Sie müssen sich GetSystemValue2 ansehen.

Durchlaufen von Dimensionen im Modellbeispiel (VBA)

Vielen Dank für Ihre Antwort.

GetSystemValue2 gibt 0,11092358101119 in Metern zurück , während GetValue2 110,92358101119 in mm zurückgibt , was besser ist, aber wie bringen Sie den Befehl dazu, 110,92 zurückzugeben, unter Berücksichtigung der in den Dimensionsoptionen definierten Option "Unit Accuracy"?

Und wie definiere ich den Namen der Dimension ("D2@Esquisse1@@NomConfig@199999.SLDPRT"), aus der ich den Wert abrufen möchte?

Hallo

Um die gewünschte Dimension auszuwählen, gehen Sie wie folgt vor:

        boolstatus = swModel.Extension.SelectByID2("D2@Esquisse1@199999.SLDPRT", "DIMENSION", 0, 0, 0, Falsch, 0, Nichts, 0)
        Legen Sie swSelMgr = swModel.SelectionManager fest
        Set swDispDim = swSelMgr.GetSelectedObject6(1, 0)
        Festlegen von swDim = swDispDim.GetDimension
        Debug.Print swDim.GetValue2("") 'Füge den Konfigurationsnamen zwischen dem "" ein


Um ihn mit einem Wert mit einer Genauigkeit von 2 Dezimalstellen anzuzeigen, müssen Sie eine Behandlung auf den zurückgegebenen Wert anwenden (SW gibt den vollständigen tatsächlichen Wert zurück und rundet ihn nicht gemäß den Parametern)