Cze wszystkim
Szukam polecenia, którego mógłbym użyć w moim makrze SolidWorks, aby pobrać w zmiennej wartość wymiaru, ale taką, jaka jest ustawiona (z tą samą liczbą miejsc po przecinku), określając wymiar w postaci "D1@Esquisse1@199999.SLDPRT".
Jeśli masz rozwiązanie, które możesz mi zasugerować, z góry dziękuję.
Witam
Musisz spojrzeć na GetSystemValue2.
Iterowanie wymiarów w przykładzie modelu (VBA)
Dziękuję za odpowiedź.
GetSystemValue2 zwraca 0,11092358101119 w metrach, podczas gdy GetValue2 zwraca 110,92358101119 w mm, co jest lepsze, ale jak sprawić, by polecenie zwracało 110,92, respektując wybór "Dokładność jednostki" zdefiniowany w opcjach wymiaru?
A jak zdefiniować nazwę wymiaru ("D2@Esquisse1@@NomConfig@199999.SLDPRT"), z którego chcę pobrać wartość?
Witam
Aby wybrać żądany wymiar, wykonaj następujące czynności:
boolstatus = swModel.Extension.SelectByID2("D2@Esquisse1@199999.SLDPRT", "WYMIAR", 0, 0, 0, Fałsz, 0, Nic, 0)
Ustaw swSelMgr = swModel.SelectionManager
Ustaw swDispDim = swSelMgr.GetSelectedObject6(1, 0)
Ustaw swDim = swDispDim.GetDimension
Debug.Print swDim.GetValue2("") 'Wstaw nazwę konfiguracji między ""
Aby wyświetlić go z wartością z dokładnością do 2 miejsc po przecinku, należy zastosować zabieg do zwracanej wartości (SW zwraca pełną wartość rzeczywistą i nie zaokrągla jej zgodnie z parametrami)