「Vla-addellipse」の版間の差分
(ページの作成:「{{AutoLISP}} ; 構文 : (vla-addellipse ''vla-object'' ''center'' ''MajorRadius'' ''RadiusRatio'' ) ; 機能 : 楕円を作図する。 ; 引数 :* vla-object … ...」) |
細編集の要約なし |
||
33行目: | 33行目: | ||
; VLA で 楕円 追加(適当にactivex版) | ; VLA で 楕円 追加(適当にactivex版) | ||
(defun c:ax-addellipse (/ | (defun c:ax-addellipse (/ | ||
cenPt majoraxis majorpt minorpt mspace ratio tmp) | |||
(setq | |||
(setq doc (vla-get-activeDocument (vlax-get-acad-object)) | |||
mspace (vla-get-modelSpace doc) | |||
(setq | CenPt (getpoint "Specify center point: ") | ||
majorpt (getpoint "Specify endpoint of Major axis: " CenPt) | |||
(vla- | minorpt (getpoint "Specify endpoint of other axis: " CenPt) | ||
) | |||
;; 主軸と複軸のチェック | |||
(if (< (distance majorpt CenPt) (distance minorpt CenPt)) | |||
(setq tmp majorpt | |||
majorpt minorpt | |||
minorpt tmp | |||
)) | |||
(setq majorAxis | |||
(list | |||
(- (car majorpt) (car CenPt)) | |||
(- (cadr majorpt) (cadr CenPt)) ) | |||
ratio (/ (distance CenPt minorpt) (distance CenPt majorpt)) | |||
) | |||
(vla-addEllipse | |||
mspace (vlax-3d-point CenPt) (vlax-3d-point majorAxis) ratio)) | |||
(princ) | (princ) | ||
) ;defun | ) ;defun |
2013年10月30日 (水) 23:02時点における最新版
- 構文
- (vla-addellipse vla-object center MajorRadius RadiusRatio )
- 機能
- 楕円を作図する。
- 引数
-
- vla-object … 生成する空間のVLAオブジェクト
- center … 中心点の3Dポイント
- MajorRadius … 楕円の主軸(正数)
- RadiusRatio … 楕円の主軸と副軸の比率を定義する正数 1.0=円
- 戻り値
- 作成した楕円のVLAオブジェクト
- サンプル
; コマンドで 楕円 を追加 (command "._ellipse" pause pause pause) ; コマンドで 楕円 追加(変数利用版) (defun c:cm-addecone () (setq pt1 (getpoint "\n楕円の中心点: ")) (setq rad1 (getreal "\n長径: ")) (setq rad2 (getreal "\n短径: ")) (command "._ellipse" pt1 rad1 rad2) ) ; VLA で 楕円 追加(適当にactivex版) (defun c:ax-addellipse (/ cenPt majoraxis majorpt minorpt mspace ratio tmp) (setq doc (vla-get-activeDocument (vlax-get-acad-object)) mspace (vla-get-modelSpace doc) CenPt (getpoint "Specify center point: ") majorpt (getpoint "Specify endpoint of Major axis: " CenPt) minorpt (getpoint "Specify endpoint of other axis: " CenPt) ) ;; 主軸と複軸のチェック (if (< (distance majorpt CenPt) (distance minorpt CenPt)) (setq tmp majorpt majorpt minorpt minorpt tmp )) (setq majorAxis (list (- (car majorpt) (car CenPt)) (- (cadr majorpt) (cadr CenPt)) ) ratio (/ (distance CenPt minorpt) (distance CenPt majorpt)) ) (vla-addEllipse mspace (vlax-3d-point CenPt) (vlax-3d-point majorAxis) ratio)) (princ) ) ;defun
関連事項