指定视图或视口的目标点。 支持的平台:仅窗口 属性值只读:不 类型:变体(双精度的三元素数组) 表示目标点的 3D WCS 坐标。 言论视线从中心绘制到目标点。 ![]() 例子工 务 局: Sub Example_Target()
' This example changes the target for a model space viewport.
' Create a new model space viewport
Dim viewportObj As AcadViewport
Set viewportObj = ThisDrawing.Viewports.Add("NewViewport")
' Add a circle
Dim circleObj As AcadCircle
Dim center(0 To 2) As Double
Dim radius As Double
center(0) = 0: center(1) = 0: center(2) = 0
radius = 1
Set circleObj = ThisDrawing.ModelSpace.AddCircle(center, radius)
' Find the current target
Dim currTarget As Variant
currTarget = viewportObj.target
MsgBox "The current target is " & viewportObj.target(0) & ", " & viewportObj.target(1) & ", " & viewportObj.target(2), , "Target Example"
' Change the target
Dim newTarget(0 To 2) As Double
newTarget(0) = 2#: newTarget(1) = 2#: newTarget(2) = 0
viewportObj.target = newTarget
ThisDrawing.ActiveViewport = viewportObj
ThisDrawing.Regen acAllViewports
MsgBox "The new target is " & viewportObj.target(0) & ", " & viewportObj.target(1) & ", " & viewportObj.target(2), , "Target Example"
End Sub
Visual LISP: (vl-load-com)
(defun c:Example_Target()
;; This example changes the target for a model space viewport.
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
;; Create a new model space viewport
(setq viewportObj (vla-Add (vla-get-Viewports doc) "NewViewport"))
;; Add a circle
(setq center (vlax-3d-point 0 0 0)
radius 1)
(setq modelSpace (vla-get-ModelSpace doc))
(setq circleObj (vla-AddCircle modelSpace center radius))
;; Find the current target
(setq currTarget (vlax-variant-value (vla-get-Target viewportObj)))
(alert (strcat "The current target is " (rtos (vlax-safearray-get-element currTarget 0) 2) ", "
(rtos (vlax-safearray-get-element currTarget 1) 2) ", "
(rtos (vlax-safearray-get-element currTarget 2) 2)))
;; Change the target
(setq newTarget (vlax-3d-point 2 2 0))
(vla-put-Target viewportObj newTarget)
(vla-put-ActiveViewport doc viewportObj)
(vla-Regen doc acAllViewports)
(setq currTarget (vlax-variant-value (vla-get-Target viewportObj)))
(alert (strcat "The new target is " (rtos (vlax-safearray-get-element currTarget 0) 2) ", "
(rtos (vlax-safearray-get-element currTarget 1) 2) ", "
(rtos (vlax-safearray-get-element currTarget 2) 2)))
)
|
|Archiver|CAD开发者社区
( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-10-29 06:01
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.