Ich hab da mal was ähnliches geschrieben
Du mußt es vorher auswählen und dann:
Variablen deklarieren:
Dim selMaß As Object
Dim selDD As Object
Dim SelMgr As Object
Dim AnfangsWert, Maßtyp, GradBogen As Double
Dim Maß, Maßeinheit As String
Dim linear As Boolean
Const swDimensionTypeUnknown = 0
Const swOrdinateDimension = 1
Const swLinearDimension = 2
Const swAngularDimension = 3
Const swArcLengthDimension = 4
Const swRadialDimension = 5
Const swSelDIMENSIONS = 14 'ein Maß
Codeschnipsel einfügen:
Set SelMgr = Part.SelectionManager ' SelectionMgr zuweisen
selType = SelMgr.GetSelectedObjectType2(1) ' Objekttyp ermitteln
linear = False
GradBogen = 1.74532925199433E-02 'Bogenmaßausgleich
If (selType = swSelDIMENSIONS) Then ' Wenn Maß ausgewählt ist
Set selDD = SelMgr.GetSelectedObject3(1) ' Gewähltes DimensionsObjekt zuweisen; ist ein DisplayDimensions-Objekt
Maßtyp = selDD.GetType
Set selMaß = selDD.GetDimension ' daraus das Dimension-Objekt holen
Maß = selMaß.FullName ' Namen des Maßes auslesen
If Maßtyp = swAngularDimension Then Maßeinheit = " Grad"
If Maßtyp = swLinearDimension Then
Maßeinheit = " mm"
GradBogen = 0.001
linear = True
End If
End If
AnfangsWert = Part.Parameter(Maß
.SystemValue / GradBogen 'Wert holen
If linear = False Then ' für Wert >360
While AnfangsWert > 360
AnfangsWert = AnfangsWert - 360
Wend 'Jetzt ist er zwischen 0 und 360°
End If
AnfangsWert = Round(AnfangsWert, 1)
------------------
Lutz Federbusch
Mein Gästebuch
Der Mensch, Herr oder Sklave der Technik?
[Diese Nachricht wurde von Lutz Federbusch am 22. Jun. 2007 editiert.]
[Diese Nachricht wurde von Lutz Federbusch am 22. Jun. 2007 editiert.]
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP