AltUnitsPrecision Example



Your Ad Here

Using Programming Languages other than VBA

Sub Example_AltUnitsPrecision()
   ' This example creates an aligned dimension in model space and
   ' uses AltUnitsPrecision to allow the user to change the
   ' precision of the alternate dimension

    Dim dimObj As AcadDimAligned
    Dim point1(0 To 2) As Double, point2(0 To 2) As Double
    Dim location(0 To 2) As Double
    Dim oldPrecision As String, newPrecision As String
    
    ' Define the dimension
    point1(0) = 0: point1(1) = 5: point1(2) = 0
    point2(0) = 5.12345678: point2(1) = 5: point2(2) = 0
    location(0) = 5: location(1) = 7: location(2) = 0
    
    ' Create an aligned dimension object in model space
    Set dimObj = ThisDrawing.ModelSpace.AddDimAligned(point1, point2, location)
    
    ' Enable alternate unit display
    dimObj.AltUnits = True
    
    ThisDrawing.Application.ZoomAll

    ' Store old Precision value as default for input box
    oldPrecision = dimObj.AltUnitsPrecision
    
    ' Allow the user to change the precision for the alternate dimension
    newPrecision = InputBox("Enter a new precision for the alternate dimension.  The value must range from 0 to 8.", "Alternate Dimension Precision", oldPrecision)
    
    Select Case newPrecision
        Case 0: newPrecision = acDimPrecisionZero
        Case 1: newPrecision = acDimPrecisionOne
        Case 2: newPrecision = acDimPrecisionTwo
        Case 3: newPrecision = acDimPrecisionThree
        Case 4: newPrecision = acDimPrecisionFour
        Case 5: newPrecision = acDimPrecisionFive
        Case 6: newPrecision = acDimPrecisionSix
        Case 7: newPrecision = acDimPrecisionSeven
        Case 8: newPrecision = acDimPrecisionEight
        Case Else
            MsgBox "The alternate precision has not been changed."
            Exit Sub
    End Select
    
    dimObj.AltUnitsPrecision = newPrecision   ' Commit changes to precision
    
    ThisDrawing.Regen acAllViewports
    
    ' Read back and display the alternate dimension precision
    newPrecision = dimObj.AltUnitsPrecision
    MsgBox "The alternate dimension precision has been set to " & newPrecision & " decimal places"
End Sub

 
   Comments? 

Return to Autodesk Index


Your Ad Here