「Vla-highlight」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
(ページの作成:「{{AutoLISP}} ; 構文 : (vla-highlight ''vla-object'' ''HighlightFlag'' ) ; 機能 : 指定されたオブジェクトまたは指定された選択セットのハイ...」)
 
編集の要約なし
 
19行目: 19行目:




* 注意 : オブジェクトにハイライト フラグを設定すると、変更を表示する際に Update メソッドまたは Regen メソッドを呼び出す必要がある。この関数は、オブジェクトの現在のハイライト ステータスは返しない。
* 注意 : オブジェクトにハイライト フラグを設定すると、変更を表示する際に Update メソッドまたは Regen メソッドを呼び出す必要がある。この関数は、オブジェクトの現在のハイライト ステータスは返さない。





2016年6月17日 (金) 11:08時点における最新版

構文
(vla-highlight vla-object HighlightFlag )


機能
指定されたオブジェクトまたは指定された選択セットのハイライト ステータスを設定する。


引数
  • vla-object … VLAオブジェクト(すべての図形オブジェクト、AttributeReference、Dimension、Group、SelectionSet )
  • HighlightFlag … ブール型
  • vlax-True: オブジェクトはハイライト表示される。
  • vlax-False: オブジェクトから既存のハイライト表示が除去される。


戻り値
nil


  • 注意 : オブジェクトにハイライト フラグを設定すると、変更を表示する際に Update メソッドまたは Regen メソッドを呼び出す必要がある。この関数は、オブジェクトの現在のハイライト ステータスは返さない。


サンプル
(vl-load-com)
(defun c:Example_Highlight()
    ;; モデル空間に複数のオブジェクトを作成して、
    ;; 各オブジェクトの ハンドルを表示するサンプル。
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    (setq modelSpace (vla-get-ModelSpace doc))

    ;; モデル空間で線オブジェクトを作成
    (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)
    
    ;; モデル空間のコレクションを反復処理し、検出された各オブジェクトのオブジェクト名が表示される。
    (vlax-for entry (vla-get-ModelSpace doc)
        (setq entName (vla-get-ObjectName entry))
        (vla-Highlight entry :vlax-true)
        (alert (strcat "The name of this object is " entName))
        (vla-Highlight entry :vlax-false)
    )
)

関連事項