乐筑天下

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

[编程交流] 数字生成器

[复制链接]

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 08:48:40 | 显示全部楼层 |阅读模式
大家好
 
我得到了一个例程,可以为顺序编号的文本输入前缀,该例程使用Dtext例程将文本放置在当前文本样式的当前层上。
 
通常我用它来标记一根电线。。。例如:04.1,04.2,04.3。。。。其中“04”是perfix,起始数是1,增量数也是1
 
它的工作完美!!
 
现在我需要对其进行一些升级,以标记一些2/3/4线:
我的意思是这样的:
 
-2线:04.1/04.2,04.3/04.4,。。。
 
-3线:04.1/04.2/04.3,04.4/04.5/04.6,。。。
 
-4线:04.1/04.2/04.3/04.4,04.5/04.6/04.7/04.8,。。。
 
不幸的是,我的Lisp程序不太好,所以我说你可能可以帮我。
 
代码如下:
 
  1. ;;;This WSNUM.LSP routine enables you to enter a prefix for sequentially
  2. ;;;numbered text which uses the Dtext routine to place text on the current
  3. ;;;layer in the current text style.
  4. ;;;
  5. ;;;This file has been edited from the 'cabnum.lsp' routine
  6. ;;;originally created by Elise Moss of Moss Designs.
  7. ;;;[url]www.mossdesigns.com[/url], August 2001
  8. ;;;
  9. ;;;
  10. ;;;Michael E. Beall
  11. ;;;michael.beall@autocadtrainerguy.com
  12. ;;;[url]www.autocadtrainerguy.com[/url], January 2002
  13. ;;;502.633.3994 (voice + FAX)
  14. ;;;Modified 4 August 2o11 - accepts decimal numbers for text height input
  15. ;;;                       - accepts only whole numbers for all other input
  16. ;;;                       - error in incrementation corrected
  17. ;;;                       - general tidying up and reorganisation of code
  18. (defun c:wsnum        ()
  19. ; get prefix
  20. (setq prefix (getstring "\nPrefix <04.>? "))
  21. (if (= prefix "")
  22.    (setq prefix "04.")
  23. )
  24. ; get starting number
  25. (setq stnum (getint "\nStarting number <1>? "))
  26. (if (= stnum nil)
  27.    (setq stnum 1)
  28. )
  29. ; get increment
  30. (setq incrnum (getint "\nIncrement numbers by <1>? "))
  31. (if (= incrnum nil)
  32.    (setq incrnum 1)
  33. )
  34. ; get text height
  35. (setq txtht (getreal "\nSet text height to <1.4>: "))
  36. (if (= txtht nil)
  37.    (setq txtht 1.0)
  38. )
  39. ; get insertion point
  40. (setq placepoint (getpoint "\nSelect text location: "))
  41. ; set placement string
  42. (setq label (strcat prefix "" (itoa stnum)))
  43. ; loop for all subsequent insertions, ESC or right click ends loop
  44. [color="red"] (while (/= placepoint nil)
  45.    (setq label (strcat prefix " " (itoa stnum)))                ; set placement string
  46.    (command "text" placepoint txtht "0" label)                        ; place text
  47.    (setq stnum (+ stnum incrnum))                                ; increment number
  48.    (setq placepoint (getpoint "\nSelect text location: "))        ; get next insertion point[/color]
  49. )                                        ;end while
  50. (princ)
  51. )                                        ; end defun
  52. (prompt "\nType WSNUM to run. ")

 
我在那里迷路了伙计们,欢迎任何帮助
 
提前感谢
回复

使用道具 举报

4

主题

2143

帖子

2197

银币

限制会员

铜币
-24
发表于 2022-7-6 09:04:42 | 显示全部楼层
请阅读代码发布指南并编辑您的帖子。
 
我已经将此移到AutoLISP、Visual LISP和DCL论坛。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 09:12:42 | 显示全部楼层
我建议在这里找到我的编号程序,但这只允许文本的一部分递增。
回复

使用道具 举报

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 09:31:53 | 显示全部楼层
嘿,李
我用了你的一些剧本。。。非常有用,它节省了我很多时间。。。非常感谢。
 
你的剧本看起来不错。。。更多选项:是的,稍后再试。。。但我需要知道是否有任何可能允许文本的2-3-4部分递增
 
提前感谢
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 09:43:52 | 显示全部楼层
再靠近一点,这将增加字符串的多个部分,但目前仅增加1。
 
这给了我一个新的想法,为我的网站申请。。。一个程序如何提示选择文本/多行文字,并询问要增加哪些节(具有选择多个节的选项),然后要求增加。然后,用户可以连续放置选定对象的副本,增加选定的部分。
回复

使用道具 举报

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 09:57:30 | 显示全部楼层
 
好主意。。。这正是我想要的
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-7 08:29 , Processed in 0.325729 second(s), 64 queries .

© 2020-2025 乐筑天下

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