「Vla-addray」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
(ページの作成:「{{AutoLISP}} ; 構文 : (vla-addray ''vla-object'' ''pt1'' ''pt2'') ; 機能 : 線分を作図する。 ; 引数 :* vla-object … 生成する空間のVLAオブジ...」)
 
編集の要約なし
 
5行目: 5行目:


; 機能
; 機能
: 線分を作図する。
: 放射線を作図する。




20行目: 20行目:
; サンプル
; サンプル
<pre class="brush:autolisp;">
<pre class="brush:autolisp;">
  ; コマンドで線分追加
  ; コマンドで放射線追加
(command "._ray" pause pause "")
(command "._ray" pause pause "")


; コマンドで線分追加(変数利用版)
; コマンドで放射線追加(変数利用版)
(defun c:cm-addray ()
(defun c:cm-addray ()
  (setq pt1 (getpoint "\n始点: "))
  (setq pt1 (getpoint "\n始点: "))
30行目: 30行目:
)
)


; コマンドで線分追加(VLコマンド版)
; コマンドで放射線追加(VLコマンド版)
(vl-cmdf "._ray" (getpoint "始点:") (getpoint "方向点:") "")
(vl-cmdf "._ray" (getpoint "始点:") (getpoint "方向点:") "")




; entmakeで線分追加
; entmakeで放射線追加
(defun c:em-addray ()
(defun c:em-addray ()
   (setq pt1 (getpoint "\n始点: "))
   (setq pt1 (getpoint "\n始点: "))
45行目: 45行目:
   )))
   )))


; VLA で線分追加(適当にactivex版)
; VLA で放射線追加(適当にactivex版)
(defun c:ax-addray ()
(defun c:ax-addray ()
   (vl-load-com)
   (vl-load-com)
58行目: 58行目:


;-------------------------------
;-------------------------------
; VLA で線分追加(ActiveX的版)
; VLA で放射線追加(ActiveX的版)
(defun c:ax-addray ()
(defun c:ax-addray ()
   (vl-load-com)
   (vl-load-com)

2013年9月20日 (金) 14:29時点における最新版

構文
(vla-addray vla-object pt1 pt2)


機能
放射線を作図する。


引数
  • vla-object … 生成する空間のVLAオブジェクト
  • pt1 … 始点の3Dポイント
  • pt2 … ベクトル方向の3Dポイント


戻り値
作成した線分のVLAオブジェクト


サンプル
 ; コマンドで放射線追加
(command "._ray" pause pause "")

; コマンドで放射線追加(変数利用版)
(defun c:cm-addray ()
 (setq pt1 (getpoint "\n始点: "))
 (setq pt2 (getpoint "\n方向点: " pt1))
 (command "._ray" pt1 pt2 "")
)

; コマンドで放射線追加(VLコマンド版)
(vl-cmdf "._ray" (getpoint "始点:") (getpoint "方向点:") "")


; entmakeで放射線追加
(defun c:em-addray ()
  (setq pt1 (getpoint "\n始点: "))
  (setq pt2 (getpoint "\n方向点: " pt1))
  (entmake 
   '((0 . "RAY") 
     (cons 10 pt1) 
     (cons 11 pt2)
     (210 0.0 0.0 1.0) 
  )))

; VLA で放射線追加(適当にactivex版)
(defun c:ax-addray ()
  (vl-load-com)
  (setq *actdoc* (vla-get-activedocument (vlax-get-acad-object)))
  (setq mspace (vla-get-modelspace *actdoc*))
  (setq pt1 (getpoint "\n始点: "))
  (setq pt2 (getpoint "\n方向点: " pt1))
  (setq myline (vla-addray mspace (vlax-3d-point pt1)(vlax-3d-point pt2)))
  (princ)
) ;defun
(princ)

;-------------------------------
; VLA で放射線追加(ActiveX的版)
(defun c:ax-addray ()
  (vl-load-com)
  (setq *actdoc* (vla-get-activedocument (vlax-get-acad-object)))
  (setq mspace (vla-get-modelspace *actdoc*))
  (setq util (vla-get-utility *actdoc*))
  (setq pt1 (vla-getpoint util nil "\n始点 : "))
  (setq pt2 (vla-getpoint util pt1 "\n方向点 : "))
  (setq myline (vla-addray mspace pt1 pt2))
  (princ)
) ;defun


関連事項