<FONT face=宋体>在工作中随手编的一些小程序,简单实用,趁有空的时候在这里慢慢的贴出来,说不定能帮大伙一点小忙。欢迎试用和提意见:
1)这个小程序用于选取图中的text实体,计算其数字和:
</FONT>
<DIV >
<DIV class=smallfont style="MARGIN-BOTTOM: 2px"><FONT face=宋体>代码:</FONT></DIV>
<DIV class=smallfont style="MARGIN-BOTTOM: 2px">
<FONT face=宋体>;;;拾取数字求和
(defun c:pickad (/ ss n totn adn)
(prompt "\n拾取数字求和: ")
(setq ss (ssget '((0 . "TEXT")))
n 0
)
(setq totn 0.0)
(while (setq en (ssname ss n))
(setq adn (atof (cdr (assoc 1 (entget en)))))
(setq totn (+ totn adn))
(setq n (1+ n))
)
(princ (strcat "\n数字和: "))
(princ totn)
(princ)
)</FONT></DIV>
<DIV class=smallfont style="MARGIN-BOTTOM: 2px"><FONT face=宋体></FONT> </DIV>
<DIV class=smallfont style="MARGIN-BOTTOM: 2px"><FONT face=宋体></FONT> </DIV>
<DIV class=smallfont style="MARGIN-BOTTOM: 2px"><FONT face=宋体>或简单</FONT><FONT face=宋体,verdana,arial,helvetica>代码:</FONT></DIV>
<DIV class=smallfont style="MARGIN-BOTTOM: 2px"><FONT face=宋体>(defun c:pickad1 (/ psub1 ss totn) ;拾取数字和(可作减法)
(defun psub1 (ss / tot n en adn)
(setq tot 0.0
n 0
)
(while (setq en (ssname ss n))
(setq adn (atof (cdr (assoc 1 (entget en)))))
(setq tot (+ tot adn)
n (1+ n)
)
)
tot
)
(prompt "\n拾取数字求差: ")
(prompt "\n请先选择被减的数字: ")
(setq ss (ssget '((0 . "TEXT")))
totn (psub1 ss)
)
(prompt "\n再选择要减去的数字: ")
(setq ss (ssget '((0 . "TEXT")))
totn (- totn (psub1 ss))
)
(princ (strcat "\n数字和: "))
(princ totn)
(princ)
)</FONT></DIV>
<DIV class=smallfont style="MARGIN-BOTTOM: 2px"> </DIV></DIV> |