「Vla-additems」の版間の差分
(ページの作成:「{{AutoLISP}} ; 構文 : (vla-additems ''vla-object'' ''Items'') ; 機能 : 1 つまたは複数のオブジェクトを、指定した選択セットに追加する。...」) |
細編集の要約なし |
||
90行目: | 90行目: | ||
* [[vlax-get-acad-object]] | * [[vlax-get-acad-object]] | ||
* [[vla-get-activedocument]] | * [[vla-get-activedocument]] | ||
* [[vla-get-selectionsets]] | |||
[[Category:AutoLISP]] | [[Category:AutoLISP]] |
2015年5月3日 (日) 12:58時点における最新版
- 構文
- (vla-additems vla-object Items)
- 機能
- 1 つまたは複数のオブジェクトを、指定した選択セットに追加する。
- 引数
-
- vla-object … SelectionSet の VLAオブジェクト
- Items … 選択セットに追加するオブジェクトの配列。
- 戻り値
- nil
- MEMO
- 現在指定されている選択セット内のオブジェクトは、選択セットに残される。
- 選択セットのオブジェクトを置き換えるには、Clear メソッドを使用して選択セットをクリアしてから、オブジェクトを追加する。
- 選択セットから個々のオブジェクトを除去するには、RemoveItems メソッドを使用する。
- サンプル
(vl-load-com) (defun c:Example_AddItems() ;; 図形作ってから選択セットを作成するサンプル (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) (setq modelSpace (vla-get-ModelSpace doc)) ;; 新しい選択セットを作成 (setq ssets (vla-get-SelectionSets doc)) (setq ssetObj (vla-Add ssets "TEST_SELECTIONSET")) ;; 構築線を作成 (setq basePoint (vlax-3d-point 3 3 0) secondPoint (vlax-3d-point 1 3 0)) (setq rayObj (vla-AddRay modelSpace basePoint secondPoint)) ;; ポリラインを作成 (setq points (vlax-make-safearray vlax-vbDouble '(0 . 5))) (vlax-safearray-fill points '(3 7 9 2 3 5 ) ) (setq plineObj (vla-AddLightWeightPolyline modelSpace points)) (vla-put-Closed plineObj :vlax-true) ;; 線分を作成 (setq startPoint (vlax-3d-point 0 0 0) endPoint (vlax-3d-point 2 2 0)) (setq lineObj (vla-AddLine modelSpace startPoint endPoint)) ;; 円を作成 (setq centerPt (vlax-3d-point 20 30 0) radius 3) (setq circObj (vla-AddCircle modelSpace centerPt radius)) ;; 楕円を作成 (setq center (vlax-3d-point 5 5 0) majAxis (vlax-3d-point 10 20 0) radRatio 0.3) (setq ellObj (vla-AddEllipse modelSpace center majAxis radRatio)) (vla-ZoomAll acadObj) ;; モデル空間コレクションを走査。 ;; 見つ買った図形を選択セット用のリストに追加 (setq ssobjs (vlax-make-safearray vlax-vbObject (cons 0 (- (vla-get-Count modelSpace) 1)))) (setq cnt 0) (vlax-for each-item modelSpace (vlax-safearray-put-element ssobjs cnt each-item) (setq cnt (1+ cnt)) ) ;; 図形リストを選択セットに追加 (vla-AddItems ssetObj ssobjs) (vla-Regen doc acActiveViewport) )
関連事項