乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 30|回复: 15

[编程交流] 需要一些Lisp程序。。。

[复制链接]

2

主题

7

帖子

5

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 22:41:45 | 显示全部楼层 |阅读模式
大家好
 
我需要一些lisp,将增加这样的文本。。
 
1R 1Y 1B 2R 2Y 2B 3R 3Y 3B…)
回复

使用道具 举报

5

主题

956

帖子

963

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-5 22:47:59 | 显示全部楼层
嗨,mfadzli没有人回应,因为人们不理解?你能解释清楚吗?或者试试其他的线索http://www.cadtutor.net/forum/showthread.php?79801-递增数字。。。。但有特殊的东西。
 
 
 
.
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 22:49:49 | 显示全部楼层
了解你想要什么,你能再详细一点吗?是文字还是多行文字,是在一个层面上。您可以搜索第一个apha字符的所有文本,然后找到最大数字add 1并添加文本。发布dwg进行测试。随着文本数量的增加,如果不是在一层上,可能意味着每一层之间都会有轻微的犹豫。
回复

使用道具 举报

2

主题

7

帖子

5

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 22:55:09 | 显示全部楼层
对不起,这个简单的问题。。呵呵。。
 
我正在寻找一个lisp来增加文本
例如,我有文本“01”“02”“03”“04”“05”“06”需要替换为“01R”“01Y”“01B”“02R”“02Y”“02B”。
只需选择文本,它就会替换并按照上面示例中的顺序进行操作。
 
例如,见附件。
样品图纸
回复

使用道具 举报

5

主题

956

帖子

963

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-5 22:58:39 | 显示全部楼层
 
我试图弄明白:
这意味着什么
9=“03B”?
28=“10R”?
38=“13Y”?
 
如果我是对的,那么你可以试试下面的代码,
命令:BRY
选择文字或多行文字
  1. ;Add incremental suffix B R Y
  2. ;hp# 22/07/14
  3. ;http://www.cadtutor.net/forum/showthread.php?87667-Need-some-lisp...
  4. (defun C:BRY  (/  *error* e tx #)
  5. (defun *error* (msg)
  6.     (if (wcmatch (strcase msg) "*CANCEL*,*EXIT*")
  7.      (princ msg)
  8.      (princ (strcat "\n*Error: " msg))
  9.    )
  10. )
  11. (while (setq e (entsel "\nSelect *TEXT: ")) ; *edited thanx mr.Tharwat
  12.    (if        (and (setq e (car e))
  13.      (setq tx (cdr (assoc 1 (entget e))))
  14.      (/= (setq # (atof tx)) 0)
  15.     ;(not (wcmatch (strcase tx) "*B,*R,*Y")) ; *removed
  16.                      (numberp(read tx)) ; *added
  17.      )
  18.      (vla-put-textstring
  19. (vlax-ename->vla-object e)
  20. ('((# / i n)
  21.    (setq
  22.     n
  23.     (fix (abs #))
  24.     i
  25.     (rem n 3.))
  26.    (strcat
  27.     (if
  28.      (minusp #)
  29.      "-"
  30.      (if
  31.       (< n 10)
  32.       "0"
  33.       ""))
  34.     (rtos
  35.      (if
  36.       (zerop i)
  37.       (/ n 3.)
  38.       (1+ (fix (/ n 3.))))
  39.      2
  40.      0)
  41.     (cond
  42.      ((zerop i) "B")
  43.      ((= i 1) "R")
  44.      ((= i 2) "Y"))))
  45.   #)))))
  46. (princ "command: BRY")
  47. (princ)
回复

使用道具 举报

2

主题

7

帖子

5

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 23:02:19 | 显示全部楼层
哇!谢谢韩。。。你太棒了。。。这就是我想要的。。
谢谢你的帮助。。我想我需要从现在开始学习lisp。。。呵呵。。
回复

使用道具 举报

5

主题

956

帖子

963

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-5 23:07:30 | 显示全部楼层
 
不客气
我编辑了一点
i替换:(not(wcmatch(strcase tx)“*B,*R,*Y”)
收件人:(numberp(read tx))
ie:它只适用于数字文本,例如:01,02,03
所以它不会聚集“卡考”字母文本,例如:ABC、03X、P123等。。
回复

使用道具 举报

2

主题

7

帖子

5

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 23:10:10 | 显示全部楼层
 
 
 
哇!谢谢你。。。
你会说马来语吗?呵呵
回复

使用道具 举报

5

主题

956

帖子

963

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-5 23:17:04 | 显示全部楼层
对不起,这个论坛是关于CAD和LISP主题的,呵呵
我假设你是新加坡或马来西亚的BCO,他们通常会说“.lah”“…hehe”“…meh”等等。。
我同意@BIGAL:再详细一点,有很多杰出的大师也可以帮助你,我也需要他们的指导
回复

使用道具 举报

pBe

32

主题

2722

帖子

2666

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
211
发表于 2022-7-5 23:21:11 | 显示全部楼层
 
你是怎么想出那个hanhphuc的?你能给我们其他人解释一下吗。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-11 03:02 , Processed in 0.393535 second(s), 72 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表