克鲁格,
我希望你不要介意,我没有冒犯你(如果我有,我道歉,并将立即删除我的片段),但我在周末消磨时间,并认为我会抓取这作为一个非常简单的演示。。。
- (defun c:DimSearch (/ flt lst n gr)
- ;; Alan J. Thompson, 09.27.10
- (vl-load-com)
- (if (and (/= "" (setq flt (strcase (getstring T "\nSpecify search filter: "))))
- (princ "\nSelect dimensions to search <All>: ")
- ((lambda (ss / dims ss)
- (if (setq dims (cond ((ssget '((0 . "DIMENSION"))))
- ((ssget "_X" '((0 . "DIMENSION"))))
- )
- )
- (progn
- (vlax-for x (setq dims (vla-get-activeselectionset
- (cond (*AcadDoc*)
- ((setq *AcadDoc* (vla-get-activedocument
- (vlax-get-acad-object)
- )
- )
- )
- )
- )
- )
- (if (vl-member-if
- (function (lambda (s) (wcmatch s flt)))
- (mapcar (function (lambda (p) (strcase (vlax-get-property x p))))
- '(TextOverride TextPrefix TextSuffix)
- )
- )
- (setq lst (cons (trans (vlax-get x 'TextPosition) 0 1) lst)
- ss (ssadd (vlax-vla-object->ename x) ss)
- )
- )
- )
- (vla-delete dims)
- (sssetfirst nil ss)
- (ssget "_I")
- )
- )
- )
- (ssadd)
- )
- (setq n -1)
- )
- (while (and (eq 5 (car (setq gr (grread T 15 0)))) (vl-consp (cadr gr)))
- (redraw)
- (foreach p lst (grdraw (cadr gr) p 1))
- )
- )
- (redraw)
- (princ)
- )
|