CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

ActiveX 开发指南

相关分类

适合属性 (ActiveX)

2023-1-3 16:28| 发布者: admin| 查看: 368| 评论: 0|来自: AutoCAD

摘要: 根据延长线之间的可用间距,指定文本和箭头在延长线内部或外部的位置。

根据延长线之间的可用间距,指定文本和箭头在延长线内部或外部的位置。

支持的平台:仅窗口

签名

工 务 局:

object.Fit
对象

类型:三点角度,暗对齐,暗,暗弧长度,暗直径,暗径向,暗径大,旋转

此属性适用的对象。

属性值

只读:

类型:枚举acDimFit

  • acTextAndArrows:此选项将文本和箭头都放在延长线内。
  • acArrowsOnly:此选项仅将箭头放置在延长线内。文本放置在箭头之外。
  • acTextOnly:此选项仅将文本放在扩展线内。箭头放置在延长线之外。
  • acBestFit:此选项在给定可用空间的情况下将文本和箭头放置在最合适的位置。

    当有足够的空间可用于文本和箭头时,此选项会将两者放置在延长线之间。



    当有足够的空间仅用于文本时,此选项将文本放在延长线之间,并将箭头放在延长线之外。



    当只有箭头有足够的空间可用时,此选项将它们放置在延长线之间,并将文本放在延长线之外。



    当文本和箭头都没有可用空间时,此选项将它们都放在延长线之外。



言论

此属性的初始值为。acBestFit

该属性设置在扩展线内没有空间时移动文本和箭头的优先级。Fit

注意:此属性将覆盖给定维度的 DIMATFIT 系统变量的值。

例子

工 务 局:

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")
)

路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )

GMT+8, 2024-5-12 10:58

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部