Vla-put-viewtoplot
- 構文
- (vla-put-viewtoplot vla-object name)
- 機能
- 印刷するビューの名前を指定する。
- 引数
-
- vla-object … Layout、PlotConfiguration の VLAオブジェクト
- name … 印刷するビューの名前
- 戻り値
- nil
- サンプル
(vl-load-com)
(defun c:Example_ViewToPlot()
;; 使用可能な名前付きビューのリストを読み取り、ユーザーが選択したビューの印刷プレビューを
;; 表示するサンプル。'*' の場合、現在のビューをプロットする。
;;
;; * 注意: プロットをプレビューした後する必要が VBA の例が停止し、制御が返される前に、
;; 印刷プレビューを終了する。
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
;; 印刷に使用できるビューのリストを取得する
(setq viewList (vlax-make-safearray vlax-vbObject (cons 0 (vla-get-Count (vla-get-Views doc))))
cnt 0)
(vlax-for view (vla-get-Views doc)
(vlax-safearray-put-element viewList cnt view)
(setq cnt (1+ cnt))
)
;; 印刷する任意の名前の付いたビューを探す。
(if (> (vla-get-Count (vla-get-Views doc)) 0)
(progn
;; Read and display the current plot style table path
(setq iCount 0
msg "")
(while (> (vla-get-Count (vla-get-Views doc)) iCount)
(setq viewName (vla-get-Name (vlax-safearray-get-element ViewList iCount)))
(if (= viewName (vla-get-ViewToPlot (vla-get-ActiveLayout doc))) ;; カレントビューを印刷
(setq ViewNum (1+ iCount)
ViewName (strcat "*" ViewName))
)
(setq iCount (1+ iCount)
msg (strcat msg "(" (itoa iCount) ") " viewName "\n"))
)
;; ビューをプロットするプロンプトを表示。
(setq viewNum (vla-GetInteger (vla-get-Utility doc) (strcat "\n汝はどのビューをプロットするのかえ?\n" msg)))
(if (and (<= viewNum (vla-get-Count (vla-get-Views doc)))
(> viewNum 0))
(progn
;; 印刷するビューの図面を知らせる
(vla-put-ViewToPlot (vla-get-ActiveLayout doc) (vla-get-Name (vlax-safearray-get-element ViewList (1- viewNum))))
;; 印刷の設定を指示。
(vla-put-PlotType (vla-get-ActiveLayout doc) acView)
(vla-put-ConfigName (vla-get-ActiveLayout doc) "DWF6 ePlot.pc3")
;; 印刷プレビューを表示
(vla-DisplayPlotPreview (vla-get-Plot doc) acFullPreview)
)
(alert "入力されたビュー番号は無効。")
)
)
(alert "名前の付いたビューがないです。")
)
)
関連事項