*VS* (vla-get-Views *DOC*)
*DICS* (vla-get-Dictionaries *DOC*)
;;常用的几个外部接口对象
*FSO* (vlax-get-or-create-object \
*WSH* (vlax-get-or-create-object \
*SHELL* (vlax-get-or-create-object \
*SCR* (vlax-get-or-create-object \
*WBEM* (vlax-get-or-create-object \ )
;;3 [功能] 返回活动空间vla对象
(defun MJ:ActiveSpace()
(if (= 1 (vlax-get-Property DOC* 'ActiveSpace));模型1,布局0
*MS*
*PS* ) )
;;4.1 [功能] 返回当前活动空间名称(\
(defun MJ:ActiveSpace-Name ()
(if (= 1 (vla-get-ActiveSpace *DOC*))
\
\ )
)
;;4.2 [功能] 返回空间名称,如\或者\
(defun MJ:ActiveSpace1 ()
(vla-get-Name (vla-get-ActiveLayout *DOC*)) )
;;5 [功能] 返回Preferences vla对象
(defun MJ:AcadPrefs ()
(vlax-Get-Property *ACAD* 'Preferences) )
;;6 [功能] 返回指定引用的属性
;;TabName:Application,Display,Drafting,Files,OpenSave,Output,Profiles,Selection,System,User
;; 示例 (MJ:GetPrefKey 'Files 'SupportPath) 获取支持文件路径
(defun MJ:GetPrefKey (TabName KeyName)
(vlax-get-property
(vlax-get-property
(MJ:AcadPrefs)
TabName
)
KeyName ) )
;;7 [功能] 更改引用设置
;; 示例 (MJ:SetPrefKey \
(defun MJ:SetPrefKey (TabName KeyName NewVal)
(vlax-put-property
(vlax-get-property
(MJ:AcadPrefs)
TabName
)
KeyName
NewVal ) )
;;8 [功能] 返回 acad对象的属性
;;PropName:ActiveDocument,Application,Caption,Documents,FullName,Height,HWND,LocaleId,MenuBar,
;;MenuGroups,Name,Path,Preferences,StatusId,VBE,Version,Visible,Width,WindowLeft,WindowState,WindowTop
;; 示例 (MJ:AcadProp 'FullName)
(defun MJ:AcadProp (PropName)
(vlax-get-property *ACAD* PropName) )
;;9 [功能] 对象名称
;; 示例 (MJ:Name *ACAD*) returns \
;; 示例 (MJ:Name *MS*)返回\
(defun MJ:Name (obj)
(if (vlax-property-available-p obj 'Name)
(vlax-get-property obj 'Name)
\ ) )
;;10.1 [功能] 打开文件名列表
;;verbose:T,nil
;; 示例: (MJ:DocsList T)
;; NOTES: Verbose为T时full path+filename ; nil时filenames
(defun MJ:DocsList (verbose / docname out)
(vlax-for each *DOCS*
(if verbose
(setq docname
(strcat
(vlax-get-property each 'Path)
\
(MJ:Name each)
)
)
(setq docname (MJ:Name each))
)
(setq out (cons docname out)) )
(reverse out) )
;;10.2 [功能] (打开文件 未打开文件)列表
;;示例(car (MJ:DocsList1 DwgFileLst))取得列表文件中打开的文件列表
(defun MJ:DocsList1 (DwgFileLst / OPENFILELST)
(setq OpenFileLst (vl-remove-if 'VL-FILE-SYSTIME DwgFileLst)
DwgFileLst (vl-remove-if-not 'VL-FILE-SYSTIME DwgFileLst) )
(if DwgFileLst
(setq DwgFileLst (vl-sort DwgFileLst '<)) )
(if OpenFileLst
(setq OpenFileLst (vl-sort OpenFileLst '<)) )
(list OpenFileLst DwgFileLst) )
;;11 [功能] 查询对象属性和方法
(defun C:HHDump (/ ent)
(while (setq ent (entsel))