DecimalSeparator Property (ActiveX)

Specifies the character to be used as the decimal separator in decimal dimension and tolerance values.

Supported platforms: Windows only

Signature

VBA:

object.DecimalSeparator
object

Type: Dim3PointAngular, DimAligned, DimAngular, DimArcLength, DimDiametric, Dimension, DimOrdinate, DimRadial, DimRadialLarge, DimRotated

The objects this property applies to.

Property Value

Read-only: No

Type: String

A single character used as the separator in decimal values.

Remarks

The initial value for this property is ".".

Any character will be accepted as a valid value for this property.

This property will be used only when the UnitsFormat property is set to acDimDecimal.

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

Examples

VBA:

Sub Example_DecimalSeparator()
    ' This example creates a Dim3PointAngular object in model space
    ' and allows the user to change the decimal separator appearance
    ' using the DecimalSeparator property
    
    Dim DimPointAngularObj As AcadDim3PointAngular
    Dim AngleVertex(0 To 2) As Double
    Dim FirstPoint(0 To 2) As Double, SecondPoint(0 To 2) As Double
    Dim TextPoint(0 To 2) As Double
    Dim oldSeparator As String, newSeparator As String
    
    ' Define the new Dim3PointAngular object
    AngleVertex(0) = 0: AngleVertex(1) = 0: AngleVertex(2) = 0
    FirstPoint(0) = 2: FirstPoint(1) = 2: FirstPoint(2) = 0
    SecondPoint(0) = 1: SecondPoint(1) = 4: SecondPoint(2) = 0
    TextPoint(0) = 6: TextPoint(1) = 6: TextPoint(2) = 0

    ' Create the new Dim3PointAngular object in model space
    Set DimPointAngularObj = ThisDrawing.ModelSpace.AddDim3PointAngular(AngleVertex, FirstPoint, SecondPoint, TextPoint)
    
    ' Set precision so that degrees are visible
    DimPointAngularObj.TextPrecision = acDimPrecisionFour
    
    ThisDrawing.Application.ZoomAll

    ' Read and display current decimal separator
    MsgBox "The decimal separator for this object is currently set to: [" & DimPointAngularObj.DecimalSeparator & "]"

    ' Alter the decimal separator property for this object
    oldSeparator = DimPointAngularObj.DecimalSeparator
    newSeparator = InputBox("Enter a new decimal separator", "Change Decimal Separator", oldSeparator)
    
    If newSeparator = "" Then
        Exit Sub
    Else
        ' Set new decimal separator, making sure to use only one character
        DimPointAngularObj.DecimalSeparator = Left(newSeparator, 1)
    End If
    
    ThisDrawing.Regen acAllViewports
    
    ' Read and display current decimal separator
    MsgBox "The decimal separator for this object is now set to: [" & DimPointAngularObj.DecimalSeparator & "]"
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_DecimalSeparator()
    ;; This example creates a Dim3PointAngular object in model space
    ;; and allows the user to change the decimal separator appearance
    ;; using the DecimalSeparator property
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    
    ;; Define the new Dim3PointAngular object
    (setq AngleVertex (vlax-3d-point 0 0 0)
          FirstPoint (vlax-3d-point 2 2 0)
          SecondPoint (vlax-3d-point 1 4 0)
          TextPoint (vlax-3d-point 6 6 0))

    ;; Create the new Dim3PointAngular object in model space
    (setq modelSpace (vla-get-ModelSpace doc))
    (setq DimPointAngularObj (vla-AddDim3PointAngular modelSpace AngleVertex FirstPoint SecondPoint TextPoint))
    
    ;; Set precision so that degrees are visible
    (vla-put-TextPrecision DimPointAngularObj acDimPrecisionFour)
    
    (vla-ZoomAll acadObj)

    ;; Read and display current decimal separator
    (alert (strcat "The decimal separator for this object is currently set to: [" (vla-get-DecimalSeparator DimPointAngularObj) "]"))

    ;; Alter the decimal separator property for this object
    (setq oldSeparator (vla-get-DecimalSeparator DimPointAngularObj))
    (setq newSeparator (getstring "\nEnter a new decimal separator: "))
    
    (if (/= newSeparator "")
        ;; Set new decimal separator, making sure to use only one character
        (vla-put-DecimalSeparator DimPointAngularObj newSeparator)
    )
    
    (vla-Regen doc acAllViewports)
    
    ;; Read and display current decimal separator
    (alert (strcat "The decimal separator for this object is now set to: [" (vla-get-DecimalSeparator DimPointAngularObj) "]"))
)