BrianTFC 发表于 2022-7-6 07:36:01

用tex将数字相加

你好
 
我想知道是否有一个lisp rountine添加以下内容,我用这种格式做了很多材料列表。
 
5'-3"
6'-4 11/16"
4'-3"
 
答案将是15'-10 11/16“,我希望能够选择它们,并将它们添加到一起。如果有任何帮助,我将不胜感激。

Lee Mac 发表于 2022-7-6 07:49:05

写得很快:
 
(defun c:addtxt ( / i n r s )
   (if (setq s (ssget '((0 . "TEXT") (1 . "*#*"))))
       (progn
         (setq r 0.0)
         (repeat (setq i (sslength s))
               (if (setq n (distof (cdr (assoc 1 (entget (ssname s (setq i (1- i))))))))
                   (setq r (+ n r))
               )
         )
         (princ (strcat "\nTotal: " (rtos r)))
       )
   )
   (princ)
)
 
将在图形中使用LUNITS和LUPREC的设置。

BrianTFC 发表于 2022-7-6 07:57:23

谢谢李你的Lisp程序的上帝!!!!!。。。效果很好。。。你又撞出公园了。。。

Lee Mac 发表于 2022-7-6 08:06:50

不客气,布莱恩,干杯

BrianTFC 发表于 2022-7-6 08:13:45

嗨,李,
 
你说它使用lunits和luprec,我想知道你是否可以使用字符串中不同类型的数字并将它们相乘?喜欢
 
数量/长度/总数
 
8/ 3'-8 9/16"/ 29'-8 1/2"
 
布瑞恩

Lee Mac 发表于 2022-7-6 08:26:45

当然可以,但我恐怕不能在这个项目上投入更多的自愿时间。

neophoible 发表于 2022-7-6 08:35:44

 
Brian,最初您要求添加选定的文本。这个问题听起来像是一个单独的请求。现在要将选定的文本乘以一定次数?为什么不只是复制或数组,然后全部选择并以这种方式添加它们?无需进一步编程即可实现相同的效果。

BIGAL 发表于 2022-7-6 08:42:52

这让人联想到各种各样的戏剧,这将是一个单独的程序,我们很容易在度量8-1.132=9.055中找到delimeter,在这种情况下-。
 
任务中的答案查找第一个空格,然后从文本中删除,然后运行Lees程序,然后乘以删除的数字。打印答案。我确信我下载了一个角色搜索。李网站上的lsp。使用Substr查找其位置,然后计算出剩余的文本。现在更好的方法是使用vl字符串搜索
页: [1]
查看完整版本: 用tex将数字相加