CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

ActiveX 开发指南

相关分类

水平文本位置属性 (ActiveX)

2023-1-3 14:48| 发布者: admin| 查看: 338| 评论: 0|来自: AutoCAD

摘要: 指定尺寸文本的水平对齐。

指定尺寸文本的水平对齐。

支持的平台:仅窗口

签名

工 务 局:

object.HorizontalTextPosition
对象

类型:三点角度,暗对齐,暗,暗弧长度旋转

此属性适用的对象。

属性值

只读:

类型:枚举acDimHorizontalJustification

  • acHorzCentered:文本沿延伸线之间的尺寸线居中。
  • acFirstExtensionLine:文本位于第一个扩展线旁边。
  • acSecondExtensionLine:文本位于第二个扩展线旁边。
  • acOverFirstExtension:文本位于上方并与第一个扩展行对齐。
  • acOverSecondExtension:文本在上方并与第二个扩展线对齐。

言论

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

例子

工 务 局:

Sub Example_HorizontalTextPosition()
    ' This example creates an aligned dimension in model space
    ' and cycles the dimension text through different
    ' horizontal alignments
    
    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 CurrentValue As String
    
    ' Define the dimension
    point1(0) = 5: point1(1) = 5: point1(2) = 0
    point2(0) = 9: 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 text position
    Select Case dimObj.HorizontalTextPosition
        Case acHorzCentered:        CurrentValue = "centered"
        Case acFirstExtensionLine:  CurrentValue = "aligned to first extension line"
        Case acSecondExtensionLine: CurrentValue = "aligned to second extension line"
        Case acOverFirstExtension:  CurrentValue = "aligned over first extension line"
        Case acOverSecondExtension: CurrentValue = "aligned over second extension line"
    End Select
    
    MsgBox "The dimension is " & CurrentValue

    ' Force the alignment of the dimension text to the first extension line
    dimObj.HorizontalTextPosition = acFirstExtensionLine
    ThisDrawing.Regen acAllViewports
    MsgBox "Dimension text is now aligned to the first extension line"
   
    ' Force the alignment of the dimension text to the second extension line
    dimObj.HorizontalTextPosition = acSecondExtensionLine
    ThisDrawing.Regen acAllViewports
    MsgBox "Dimension text is now aligned to the second extension line"

End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_HorizontalTextPosition()
    ;; This example creates an aligned dimension in model space
    ;; and cycles the dimension text through different
    ;; horizontal alignments
    (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 9 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 text position
    (cond
        ((= (vla-get-HorizontalTextPosition dimObj) acHorzCentered) (setq CurrentValue "centered"))
        ((= (vla-get-HorizontalTextPosition dimObj) acFirstExtensionLine) (setq CurrentValue "aligned to first extension line"))
        ((= (vla-get-HorizontalTextPosition dimObj) acSecondExtensionLine) (setq CurrentValue "aligned to second extension line"))
        ((= (vla-get-HorizontalTextPosition dimObj) acOverFirstExtension) (setq CurrentValue "aligned over first extension line"))
        ((= (vla-get-HorizontalTextPosition dimObj) acOverSecondExtension) (setq CurrentValue "aligned over second extension line"))
    )
    
    (alert (strcat "The dimension is " CurrentValue))

    ;; Force the alignment of the dimension text to the first extension line
    (vla-put-HorizontalTextPosition dimObj acFirstExtensionLine)
    (vla-Regen doc acAllViewports)
    (alert "Dimension text is now aligned to the first extension line")
   
    ;; Force the alignment of the dimension text to the second extension line
    (vla-put-HorizontalTextPosition dimObj acSecondExtensionLine)
    (vla-Regen doc acAllViewports)
    (alert "Dimension text is now aligned to the second extension line")
)

路过

雷人

握手

鲜花

鸡蛋

最新评论

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

GMT+8, 2024-5-11 21:42

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部