我只是认为,当人们张贴印有教育标志的DWG时,他们应该提前通知。
同意,但当您尝试插入加盖图章的dwg或复制并粘贴该dwg的任何元素时,Cad会就此发出警告,不是吗?
塔瓦特 不知道;不打算尝试。 我所提供的一切,除了你的分数系统。您可以使用ssget crossing和polar每个顶点来查找文本点编号标签。问题是过滤掉距离文本。
现在有点忙,但如果时间允许,我会玩一玩。 层或更高版本。 两者都可以。我不挑剔。 你需要我之前发布的子程序。
(defun c:Test2 (/ _closest ss)
;; Alan J. Thompson,
(defun _closest (pt)
(caar
(vl-sort textlist (function (lambda (a b) (< (distance pt (cadr a)) (distance pt (cadr b))))))
)
)
(if (setq ss (ssget '((0 . "LINE,*POLYLINE,TEXT"))))
((lambda (i / e d textlist pts lst)
(while (setq e (ssname ss (setq i (1+ i))))
(cond ((eq (cdr (assoc 0 (setq d (entget e)))) "TEXT")
(setq textlist (cons (list (cdr (assoc 1 d)) (cdr (assoc 10 d))) textlist))
)
((wcmatch (cdr (assoc 0 d)) "LINE,*POLYLINE")
(mapcar (function (lambda (a b) (setq lst (cons (list a b (distance a b)) lst))))
(setq pts (AT:GetVertices e))
(cdr pts)
)
)
)
)
;;; (setq lst
;;; (mapcar
;;; (function (lambda (x)
;;; (reverse (cons (caddr x) (mapcar (function _closest) (cdr (reverse x)))))
;;; )
;;; )
;;; lst
;;; )
;;; )
(setq lst
(mapcar
(function (lambda (x)
(strcat (_closest (car x))
","
(_closest (cadr x))
","
(rtos (caddr x) (getvar 'LUNITS) 0)
)
)
)
lst
)
)
(mapcar 'print lst)
)
-1
)
)
(princ)
)
页:
1
[2]