乐筑天下

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

[编程交流] 扫描所选内容一次并递增

[复制链接]

10

主题

18

帖子

8

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-5 16:36:13 | 显示全部楼层 |阅读模式
大家好!
我希望扫描选择一次,并逐步希望大家帮助请
我发了一张照片。谢谢大家
173613jwz0asuc9w87cagg.jpg
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-5 16:49:51 | 显示全部楼层
你好
 
测试这个例程并让我知道;
 
  1. (defun c:Test (/ i s e)
  2. ;; Tharwat - Date: 11.Mar.2017        ;;
  3. (if (setq i (getint "\nSpecify increment number :"))
  4.    (while
  5.      (progn
  6.        (if (setq s (car (entsel "\nPick text object :")))
  7.          (if (eq (cdr (assoc 0 (setq e (entget s)))) "TEXT")
  8.            (progn
  9.              (entmod
  10.                (subst (cons 1 (strcat (itoa i) (substr (cdr (assoc 1 e)) 2)))
  11.                  (assoc 1 e)
  12.                  e
  13.                )
  14.              )
  15.              (setq i (1+ i))
  16.            )
  17.            (princ "\nInvalid object!. Try again.")
  18.          )
  19.        )
  20.        s
  21.      )
  22.    )
  23. )
  24. (princ)
  25. )
回复

使用道具 举报

10

主题

18

帖子

8

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-5 17:02:42 | 显示全部楼层
非常感谢你。你的方式只是选择一个文本,我希望但得到所有的文字,以subst如何??非常感谢。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 17:22:07 | 显示全部楼层
请尝试以下操作:
  1. (defun c:test ( / i l n s )
  2.    (if (setq s (ssget "_:L" '((0 . "TEXT"))))
  3.        (progn
  4.            (repeat (setq i (sslength s))
  5.                (setq l (cons (entget (ssname s (setq i (1- i)))) l))
  6.            )
  7.            (setq n 0)
  8.            (foreach x (vl-sort l '(lambda ( a b ) (< (cadr (assoc 10 a)) (cadr (assoc 10 b)))))
  9.                (entmod
  10.                    (subst
  11.                        (cons 1
  12.                            (strcat (itoa (setq n (1+ n)))
  13.                                (vl-list->string
  14.                                    (vl-member-if-not
  15.                                       '(lambda ( x ) (< 47 x 58))
  16.                                        (vl-string->list (cdr (assoc 1 x)))
  17.                                    )
  18.                                )
  19.                            )
  20.                        )
  21.                        (assoc 1 x) x
  22.                    )
  23.                )
  24.            )
  25.        )
  26.    )
  27.    (princ)
  28. )
回复

使用道具 举报

10

主题

18

帖子

8

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-5 17:27:10 | 显示全部楼层
非常感谢李和大家。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 17:36:18 | 显示全部楼层
不客气
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-13 13:05 , Processed in 0.943722 second(s), 67 queries .

© 2020-2025 乐筑天下

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