Vla-get-isprimary

提供:GizmoLabs - だいたい CAD LISP なサイト
構文
(vla-get-isprimary vla-object)


機能
CopyObjects オペレーション内のソース オブジェクトが、コピー中のオブジェクトの主セットの一部か、または主セット内のメンバーによって単に所有されていたかを取得する。


引数
  • vla-object … IDPair の VLAオブジェクト


戻り値
ブール型
  • :vlax-True: ソース オブジェクトはクローン化されるオブジェクトの主セットの一部。
  • :vlax-False: ソース オブジェクトはクローン化されるオブジェクトの主セットのメンバーに所有されている。


サンプル
(vl-load-com)
(defun c:Example_isprimary ()
    ;; 円 オブジェクトを作成し、CopyObjects メソッドを使用して円のコピーを作成するサンプル。
    ;; CopyObjects 操作に使用されるソース オブジェクトに関するいくつかの情報を表示する。
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
  
    ;; 円の定義
    (setq centerPoint (vlax-3d-point 0 0 0) 
          radius1 5
          radius1Copy 1)
    
    ;; 2つの円を追加
    (setq modelSpace (vla-get-ModelSpace doc))  
    (setq circleObj (vla-AddCircle modelSpace centerPoint radius1))
    (vla-ZoomAll acadObj)
    
    ;; オブジェクトをコピー
    ;;
    ;; CopyObjects と互換性のある形式にコピーされるオブジェクトを最初に置く
    (setq objCollection (vlax-make-safearray vlax-vbObject '(0 . 0)))
    (vlax-safearray-put-element objCollection 0 circleObj)
    
    ;; オブジェクトをコピーし、新しいオブジェクト (コピー) のコレクションを取得
    (setq retObjects (vla-CopyObjects doc objCollection nil 'IDPairs))
    
    ;; 新しく作成されたオブジェクトを取得し、コピーに新しいプロパティを適用
    (setq circleObjCopy (vlax-safearray-get-element (vlax-variant-value retObjects) 0))
    
    (vla-put-radius circleObjCopy radius1Copy)
        
    (vla-ZoomAll acadObj)
    (vla-Regen doc acAllViewports)
    
    ;; 最初のソースオブジェクトが複製を持っているかどうかを表示
    (setq IsClonedState (if (= (vla-get-IsCloned (vlax-safearray-get-element IDPairs 0)) :vlax-true) 
                           "はクローン。"
                           "はクローンでない。"))
    (setq IsPrimary (if (= (vla-get-IsPrimary (vlax-safearray-get-element IDPairs 0)) :vlax-true) 
                           "は、オブジェクトのプライマリメンバーがコピーされています。"
                           "は、オブジェクトのプライマリメンバーが所有していますがコピーされています。"))
    (setq IsXLated (if (= (vla-get-IsOwnerXlated (vlax-safearray-get-element IDPairs 0)) :vlax-true) 
                           "翻訳されてます。"
                           "翻訳されていません。"))
   
    (alert (strcat "新しい円ソースオブジェクト : " IsClonedState
                   "\n新しい円ソースオブジェクト : " IsPrimary
                   "\n新しいサークルオブジェクトのソース : " IsXLated))
)

関連事項