帮助添加CFM或信用证文本wi
尊敬的各位:,请查收随附的SUM lisp,我想在两个数学加法后添加文本CFM或L/S。文本值。
例如:-
2+3答案为5
我需要
2+3 5升/秒
或
2+3 5 CFM
提前感谢。。
总和。LSP (defun C:ss (/ ss i lst)
(if
(setq ss (ssget '((0 . "*TEXT"))))
(progn
(repeat
(setq i (sslength ss))
(setq lst (cons (atof (cdr (assoc 1 (entget (ssname ss (setq i (1- i))))))) lst))
)
(entmake
(list
'(0 . "TEXT")
'(100 . "AcDbEntity")
(cons 8(getvar 'clayer))
'(100 . "AcDbText")
(cons 10 (getpoint "Pick a point for text placement: "))
(cons 40 (getvar 'textsize))
(cons 1 (strcat (itoa (fix (apply '+ lst))) " CFM"))
(cons 7 (getvar 'textstyle))
'(100 . "AcDbText")
)
)
)
)
) 谢谢jdiala,做得很好,
但得到的文本高度非常小,我可以在lisp例程中更改文本高度
或者您可以修改我的lisp,因为在我的lisp例程中,生成的文本高度是完美的。
或者请在我的lisp例程中告诉我在哪里添加CFM单词。 文本的高度由文本样式控制,如果设置为零,则可能需要首先检查文本样式,这意味着需要高度。我们将样式“标准”保持为零,因此可以设置高度。
(setq ts (cdr (assoc 40 (tblsearch "STYLE" (getvar "TEXTSTYLE")))))
(if (zerop ts)
(command "TEXT" "498,18" "3.5" "0" ans)
(command "TEXT" "498,18" "0" ans)
)
请你能在我附加的lisp例程中添加CFM单词吗。
因为它采用相同的文本样式、文本高度和图形中第一个选定文本/单词的文本对齐方式。 更换该零件;
(setq sumtxt
;; concatenate strings :
(strcat
;; convert digits to string :
(rtos
;; add to summ the digital value of text :
(setq sum (+ (atof txt) sum))
;; 2 is for metric units (3 for engineering) :
2
;; set precision by current :
(getvar "dimdec")) " CFM")
)
是的,很完美,
正是我想要的。。。
谢谢,塔瓦,还有你们所有人。。。。。 不客气。
页:
[1]