TextPosition 属性 (ActiveX)
指定尺寸文本位置。 支持的平台:仅限 Windows 签名VBA: object.TextPosition 属性值只读:不 类型:变体(双打的三元素阵列) 表示尺寸文本位置的 3D WCS 坐标。 言论![]() 例子VBA: Sub Example_TextPosition()
' This example creates an aligned dimension and then changes the
' TextPosition property for that dimension.
Dim dimObj As AcadDimAligned
Dim point1(0 To 2) As Double
Dim point2(0 To 2) As Double
Dim location(0 To 2) As Double
' Define the dimension
point1(0) = 5#: point1(1) = 3#: point1(2) = 0#
point2(0) = 10#: point2(1) = 3#: point2(2) = 0#
location(0) = 7.5: location(1) = 5#: location(2) = 0#
' Create an aligned dimension object in model space
Set dimObj = ThisDrawing.ModelSpace.AddDimAligned(point1, point2, location)
ZoomAll
MsgBox "The current text position for the dimension is " & dimObj.TextPosition(0) & ", " & dimObj.TextPosition(1) & ", " & dimObj.TextPosition(2), vbInformation, "TextPosition Example"
' Change the text position location
location(0) = 8.5: location(1) = 7: location(2) = 0
dimObj.TextPosition = location
dimObj.Update
' Return the endpoint of the first extension line
' Note that the return value is a Variant
Dim retPoint As Variant
retPoint = dimObj.TextPosition
MsgBox "The new text position for the dimension is " & dimObj.TextPosition(0) & ", " & dimObj.TextPosition(1) & ", " & dimObj.TextPosition(2), vbInformation, "TextPosition Example"
End Sub
可视化 LISP: (vl-load-com)
(defun c:Example_TextPosition()
;; This example creates an aligned dimension and then changes the
;; TextPosition property for that dimension.
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
;; Define the dimension
(setq point1 (vlax-3d-point 5 3 0)
point2 (vlax-3d-point 10 3 0)
location (vlax-3d-point 7.5 5 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)
(setq textPosition (vlax-variant-value (vla-get-TextPosition dimObj)))
(alert (strcat "The current text position for the dimension is " (rtos (vlax-safearray-get-element textPosition 0) 2) ", "
(rtos (vlax-safearray-get-element textPosition 1) 2) ", "
(rtos (vlax-safearray-get-element textPosition 2) 2)))
;; Change the text position location
(setq location (vlax-3d-point 8.5 7 0))
(vla-put-TextPosition dimObj location)
(vla-Update dimObj)
;; Return the endpoint of the first extension line
;; Note that the return value is a Variant
(setq retPoint (vlax-variant-value (vla-get-TextPosition dimObj)))
(alert (strcat "The new text position for the dimension is " (rtos (vlax-safearray-get-element retPoint 0) 2) ", "
(rtos (vlax-safearray-get-element retPoint 1) 2) ", "
(rtos (vlax-safearray-get-element retPoint 2) 2)))
)
|
|Archiver|CAD开发者社区
( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-10-29 22:44
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.