Specifies the placement of text and arrowheads inside or outside extension lines, based on the available space between the extension lines.
Supported platforms: Windows only
VBA:
object.Fit
Type: Dim3PointAngular, DimAligned, DimAngular, DimArcLength, DimDiametric, DimRadial, DimRadialLarge, DimRotated
The objects this property applies to.
Read-only: No
Type: acDimFit enum
When enough space is available for text and arrowheads, this option places both between the extension lines.
When enough space is available for text only, this option places the text between the extension lines and places the arrowheads outside the extension lines.
When enough space is available for arrowheads only, this option places them between the extension lines and places the text outside the extension lines.
When space is available for neither text nor arrowheads, this option places them both outside the extension lines.
The initial value for this property is acBestFit.
The Fit property sets priorities for moving text and arrowheads when space is not available to fit both within the extension lines.
VBA:
Sub Example_Fit() ' This example creates an aligned dimension in model space ' and cycles the text fit of the dimension to a couple of common values 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 CurrentFit As String ' Define the dimension point1(0) = 5: point1(1) = 5: point1(2) = 0 point2(0) = 6: 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 ' Read and display current dimension line fit information Select Case dimObj.Fit Case acTextAndArrows: CurrentFit = "Text and Arrows" Case acArrowsOnly: CurrentFit = "Arrows Only" Case acTextOnly: CurrentFit = "Text Only" Case acBestFit: CurrentFit = "Best Fit" End Select MsgBox "The current dimension fit is set to: " & CurrentFit ' Change the fit to arrows only dimObj.Fit = acArrowsOnly ThisDrawing.Regen acAllViewports MsgBox "The dimension fit has been changed to arrows only" ' Change the fit to text only dimObj.Fit = acTextOnly ThisDrawing.Regen acAllViewports MsgBox "The dimension fit has been changed to text only" End Sub
Visual LISP:
(vl-load-com) (defun c:Example_Fit() ;; This example creates an aligned dimension in model space ;; and cycles the text fit of the dimension to a couple of common values (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) ;; Define the dimension (setq point1 (vlax-3d-point 5 5 0) point2 (vlax-3d-point 6 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) ;; Read and display current dimension line fit information (setq CurrentFit (vla-get-Fit dimObj)) (cond ((= acTextAndArrows CurrentFit)(setq CurrentFit "Text and Arrows")) ((= acArrowsOnly CurrentFit)(setq CurrentFit "Arrows Only")) ((= acTextOnly CurrentFit)(setq CurrentFit "Text Only")) ((= acBestFit CurrentFit)(setq CurrentFit "Best Fit")) (setq CurrentFit (itoa CurrentFit)) ) (alert (strcat "The current dimension fit is set to: " CurrentFit)) ;; Change the fit to arrows only (vla-put-Fit dimObj acArrowsOnly) (vla-Regen doc acAllViewports) (alert "The dimension fit has been changed to arrows only") ;; Change the fit to text only (vla-put-Fit dimObj acTextOnly) (vla-Regen doc acAllViewports) (alert "The dimension fit has been changed to text only") )