将指定的文本值放置在
你好我需要一个lisp,可以在指定层“卡钳”中选定块(无属性)的插入点放置指定文本,例如0.20。Lisp应调用以下命令
1、以米为单位输入卡尺。
2.输入文字高度。
3、选择块。
提前感谢
Suriwaits。 你能澄清第一个问题吗?
我需要一个lisp,可以将指定的文本(为问题1输入的任何值)放置在指定层“卡钳”中选定块(无属性)的插入点。Lisp应调用以下命令
1、以米为单位输入卡尺。
2.输入文字高度。
3、选择块。 现在试试这个
(defun c:Test (/ _Pt ss st ht st)
;; Tharwat 11.11.2013 ;;
(defun _t (p s h) (entmakex (list '(0 . "TEXT") (cons 10 p) (cons 11 p) (cons 1 s) (cons 40 h))))
(if (and (if (tblsearch "LAYER" "Caliper")
t
(progn (alert "Layer < Caliper > is not found !!") nil)
)
(/= "" (setq st (getstring t "\Enter the Caliper in meter :")))
(setq ht (getdist "\n Specify Text height :"))
(progn (princ "\n Select Blocks only ......") (setq ss (ssget '((0 . "INSERT")))))
)
((lambda (i / sn p)
(while (setq sn (ssname ss (setq i (1+ i)))) (_t (cdr (assoc 10 (entget sn))) st ht))
)
-1
)
)
(princ)
)
(vl-load-com)
不确定你真的需要一个专门的工具来实现这一点-只需将所述层设置为当前层,并在运行Osnap模式时激活插入;然后使用内置命令文本。 谢谢塔瓦。
它对我来说很有魅力。
在对其他块重复相同的命令时,我意外地再次选择了块,它在先前放置的相同文本上再放置一个文本。如果我对同一块再次重复该命令,请您重新编写lisp,以便删除旧文本并插入新文本。
Suriwaits。
页:
[1]