Vla-get-basepoint

提供:GizmoLabs - だいたい CAD LISP なサイト
2016年2月4日 (木) 23:33時点におけるGizmon (トーク | 投稿記録)による版
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
構文
(vla-get-basepoint vla-object )


機能
放射線または構築線が通過する点を取得する。


引数
  • vla-object … VLAオブジェクト(Ray、XLine)


戻り値
放射線または構築線が通過する点を表す 3D 座標。


サンプル
(vl-load-com)
(defun c:Example_BasePoint()
    ;; 放射線を作成して基点を変更するサンプル
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    
    ;; 基点と放射線の方向ベクトル。
    (setq basePoint (vlax-3d-point 3 3 0)
          directionVec (vlax-3d-point 1 1 0))
    
    ;; 放射線を作成。
    (setq modelSpace (vla-get-ModelSpace doc))  
    (setq rayObj (vla-AddRay modelSpace basePoint directionVec))
    
    (vla-Regen doc :vlax-true)
    (alert "放射線が追加されました。")
    
    ;; 基点の定義
    (setq newBase (vlax-3d-point 4 2 0))
    
    ;; 放射線の新しい基点
    (vla-put-basePoint rayObj newBase)
            
    ;; 放射線の基点を変更
    (setq currBase (vlax-safearray->list (vlax-variant-value (vla-get-BasePoint rayObj))))
    (setq msg (strcat (rtos (nth 0 currBase) 2) ", "
		      (rtos (nth 1 currBase) 2) ", "
		      (rtos (nth 2 currBase) 2)))
    
    (vla-Regen doc :vlax-true)
    (alert (strcat "放射線の新しい基点 : " msg))
)

関連事項