Vla-put-displaygrips

提供:GizmoLabs - だいたい CAD LISP なサイト
構文
(vla-put-displaygrips vla-object 'bool')


機能
ストレッチ、移動、回転、尺度変更、および鏡像の各グリップ モード、選択されたオブジェクトすべてにグリップを表示するかどうかをコントロールする。


引数
  • vla-object … PreferencesSelection の VLAオブジェクト
  • bool … :vlax-true グリップを表示。or :vlax-false グリップを表示しない。


戻り値
nil


  • グリップのサイズと、グリップにスナップしたときにカーソルが使用する有効な選択領域のサイズを調整するには、GripSize プロパティを使用する。
  • 選択または選択解除したグリップの色を調整するには、GripColorSelected または GripColorUnselected プロパティを使用する。

注: このプロパティの値は、システム変数 GRIPS に格納される。


サンプル

(setq *ActDoc* (vla-get-ActiveDocument (vlax-get-Acad-Object)))
(setq *prefs* (vla-get-preferences (vlax-get-Acad-Object)))
(setq *seltobj* (vla-get-selection *prefs*))

(setq ret (vla-get-displaygrips *seltobj*))
; :vlax-true 

; LISPでは 素直に (getvar "grips") (setvar "grips" 0) 使っとけばいいと思うよ。


(vl-load-com)
(defun c:Example_DisplayGrips()
    ;; グリップの設定値を変更して元に戻すサンプル
    (setq acadObj (vlax-get-acad-object))
    (setq preferences (vla-get-Preferences acadObj))
    
    ;; selection preferences オブジェクトを取得
    (setq ACADPref (vla-get-Selection preferences))
    
    ;; 現在の値を読み込み
    (setq originalValue (vla-get-DisplayGrips ACADPref))
    (alert (strcat "現在の DisplayGrips preference は : " (if (= originalValue :vlax-true) "True" "False")))

    ;; DisplayGrips preference の値をトグルで変更
    (vla-put-DisplayGrips ACADPref (if (= originalValue :vlax-true) :vlax-false :vlax-true))
    (setq newValue (vla-get-DisplayGrips ACADPref))
    (alert (strcat "DisplayGrips preference の値を変更 : " (if (= newValue :vlax-true) "True" "False")))

    ;; 元の値に戻す
    ;; * 変更したままにしたいときは、コメントアウト
    (vla-put-DisplayGrips ACADPref originalValue)
    (alert (strcat "DisplayGrips preference の値を元に戻しました : " (if (= originalValue :vlax-true) "True" "False")))
)

関連事項