放射線または構築線の 2 番目の点を指定します。
サポートされているプラットフォーム: Windows のみ
読み込み専用: いいえ
タイプ: バリアント型(倍精度実数の 3 要素配列)
放射線、構築線の 2 番目の点を表す 3D WCS 座標
放射線の 2 番目の点には、基点と等しい点を設定できません。
VBA:
Sub Example_SecondPoint()
' This example creates a ray object. It then finds the
' second point of the ray, changes the second point, and
' queries the new second point.
Dim basePoint(0 To 2) As Double
Dim directionVec(0 To 2) As Double
Dim rayObj As AcadRay
Dim currSecondPoint As Variant
Dim msg As String
Dim newSecondPoint(0 To 2) As Double
' Establish the base point and directional vector for the ray
basePoint(0) = 3: basePoint(1) = 3: basePoint(2) = 0
directionVec(0) = 1: directionVec(1) = 1: directionVec(2) = 0
' Create a Ray object in model space
Set rayObj = ThisDrawing.ModelSpace.AddRay(basePoint, directionVec)
ThisDrawing.Regen True
MsgBox "A new Ray has been added.", vbInformation
' Define a new second point
newSecondPoint(0) = 4: newSecondPoint(1) = 2: newSecondPoint(2) = 0
' Update the ray using the new second point
rayObj.SecondPoint = newSecondPoint
' Query the new second point for the Ray
currSecondPoint = rayObj.SecondPoint
msg = currSecondPoint(0) & vbCrLf & _
currSecondPoint(1) & vbCrLf & _
currSecondPoint(2)
ThisDrawing.Regen True
MsgBox "We've just changed the second point of the new Ray to: " & vbCrLf & msg, vbInformation
End Sub
Visual LISP:
(vl-load-com)
(defun c:Example_SecondPoint()
;; This example creates a ray object. It then finds the
;; second point of the ray, changes the second point, and
;; queries the new second point.
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
;; Establish the base point and directional vector for the ray
(setq basePoint (vlax-3d-point 3 3 0)
directionVec (vlax-3d-point 1 1 0))
;; Create a Ray object in model space
(setq modelSpace (vla-get-ModelSpace doc))
(setq rayObj (vla-AddRay modelSpace basePoint directionVec))
(vla-Regen doc :vlax-true)
(alert "A new Ray has been added.")
;; Define a new second point
(setq newSecondPoint (vlax-3d-point 4 2 0))
;; Update the ray using the new second point
(vla-put-SecondPoint rayObj newSecondPoint)
;; Query the new second point for the Ray
(setq currSecondPoint (vlax-safearray->list (vlax-variant-value (vla-get-SecondPoint rayObj))))
(setq msg (strcat (rtos (nth 0 currSecondPoint) 2) ", "
(rtos (nth 1 currSecondPoint) 2) ", "
(rtos (nth 2 currSecondPoint) 2)))
(vla-Regen doc :vlax-true)
(alert (strcat "We've just changed the second point of the new Ray to: " msg))
)