AltUnits Property (ActiveX)

Enables dimensioning in alternate units.

Supported platforms: Windows only

Signature

VBA:

object.AltUnits
object

Type: DimAligned, DimArcLength, DimDiametric, DimOrdinate, DimRadial, DimRadialLarge, DimRotated

The objects this property applies to.

Property Value

Read-only: No

Type: Boolean

Remarks

The initial value for this property is False.

Note: This property overrides the value of the DIMALT system variable for the given dimension.

Examples

VBA:

Sub Example_AltUnits()
   ' This example creates an aligned dimension in model space and
   ' uses AltUnits to toggle the alternate dimension units on and off

    Dim dimObj As AcadDimAligned
    Dim point1(0 To 2) As Double, point2(0 To 2) As Double
    Dim location(0 To 2) As Double
    
    ' Define the dimension
    point1(0) = 0: point1(1) = 5: point1(2) = 0
    point2(0) = 5: 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)
    ThisDrawing.Application.ZoomAll
    
    ' Toggle alternate unit display
Toggle:
    Select Case MsgBox("Press OK to toggle the display of alternate dimensions", vbOKCancel)
        Case vbOK
            ' Toggle the alternate dimension display
            dimObj.AltUnits = Not (dimObj.AltUnits)
            ThisDrawing.Regen acAllViewports
        Case vbCancel
            Exit Sub
    End Select
    
    ' Display status of alternate units display
    If dimObj.AltUnits Then
        MsgBox "Alternate units display is on."
    Else
        MsgBox "Alternate units display is off."
    End If
    
    GoTo Toggle
    
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_AltUnits()
    ;; This example creates an aligned dimension in model space and
    ;; uses AltUnits to toggle the alternate dimension units on and off
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))

    ;; Define the dimension
    (setq point1 (vlax-3d-point 0 5 0)
          point2 (vlax-3d-point 5 5 0)
          location (vlax-3d-point 5 7 0))
    
    ;; Create an aligned dimension object in model space
    (setq modelSpace (vla-get-ModelSpace doc))
    (setq dimObj (vla-AddDimAligned modelSpace point1 point2 location))
    (vla-ZoomAll acadObj)
    
    ;; Toggle alternate unit display
    (setq originalValue (vla-get-AltUnits dimObj))
    (vla-Regen doc acAllViewports)

    (alert "Toggling the display of alternate units.")
    
    ;; Toggle the display of trailing zeros for the alternate dimension tolerance value
    (vla-put-AltUnits dimObj (if (= originalValue :vlax-true) :vlax-false :vlax-true))
    (setq newValue (vla-get-AltUnits dimObj))

    (vla-Regen doc acAllViewports)
    
    (alert "Toggling the display of alternate units to original value.")

    (vla-put-AltUnits dimObj (if (= newValue :vlax-true) :vlax-false :vlax-true))  
    (vla-Regen doc acAllViewports)
)