乐筑天下

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

[编程交流] LISP例程:如何。

[复制链接]

19

主题

119

帖子

100

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
95
发表于 2022-7-6 10:14:05 | 显示全部楼层
@李:你真棒!这正是我需要它做的!你是最棒的。
 
很高兴我找到了这个论坛!
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 10:17:46 | 显示全部楼层
非常欢迎你们,我希望我激发了你们对LISP的兴趣
回复

使用道具 举报

19

主题

119

帖子

100

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
95
发表于 2022-7-6 10:20:55 | 显示全部楼层
你真的有。事实上,我将看看是否可以修改您的代码以删除其中的一个输入选项。我们总是需要更改一个特定的标签,所以我想我可以去掉这个提示。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 10:22:25 | 显示全部楼层
祝你好运如果你需要帮助,就喊出来
回复

使用道具 举报

19

主题

119

帖子

100

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
95
发表于 2022-7-6 10:26:33 | 显示全部楼层
好的,李:这个Lisp程序的编辑有问题。我似乎做得不对。我试图更新上面的LISP,使其始终更改名为LINE#的属性,并使数字长度的默认值为3。但我似乎总是把事情搞砸。(幸运的是,我足够聪明,可以保留一份我一直要回去的原件。)有什么提示吗?
回复

使用道具 举报

1

主题

16

帖子

15

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 10:29:40 | 显示全部楼层
试试教程。。我知道他们帮了我。。在学习过程中,您可能需要重读几次(我重读了大约20次我发出的4行命令)
这些是李·麦克推荐我去看AfraLISP或JeffreySanders的教程
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 10:32:07 | 显示全部楼层
只需删除这些参数的提示即可:
 
  1. (defun c:AttNum ( / *error* _StartUndo _EndUndo _PadLeft doc ss lst len ) (vl-load-com)
  2. ;; © Lee Mac 2010
  3. (defun *error* ( msg )
  4.    (if doc (_EndUndo doc))
  5.    (or (wcmatch (strcase msg) "*BREAK,*CANCEL*,*EXIT*")
  6.        (princ (strcat "\n** Error: " msg " **")))
  7.    (princ)
  8. )
  9. (defun _StartUndo ( doc ) (_EndUndo doc)
  10.    (vla-StartUndoMark doc)
  11. )
  12. (defun _EndUndo ( doc )
  13.    (if (= 8 (logand 8 (getvar 'UNDOCTL)))
  14.      (vla-EndUndoMark doc)
  15.    )
  16. )
  17. (defun _PadLeft ( str cha len )
  18.    (if (< (strlen str) len)
  19.      (_PadLeft (strcat cha str) cha len)
  20.      str
  21.    )
  22. )
  23. (setq doc  (vla-get-ActiveDocument (vlax-get-acad-object)))  
  24. [color=red]  (setq *tag "LINE#" len 3)[/color]
  25. (setq *pre (getstring t "\nSpecify Prefix <None> : "))
  26. (setq *num
  27.    (1-
  28.      (cond
  29.        (
  30.          (getint
  31.            (strcat "\nSpecify Starting Number <"
  32.              (itoa
  33.                (setq *num
  34.                  (1+
  35.                    (cond ( *num ) ( 0 ))
  36.                  )
  37.                )
  38.              )
  39.              "> : "
  40.            )
  41.          )
  42.        )
  43.        ( *num )
  44.      )
  45.    )
  46. )
  47. (if (ssget "_:L" '((0 . "INSERT") (66 . 1)))
  48.    (progn      
  49.      (vlax-for o (setq ss (vla-get-ActiveSelectionSet doc))
  50.        (setq lst
  51.          (cons
  52.            (cons (vlax-get o 'InsertionPoint) o) lst
  53.          )
  54.        )
  55.      )
  56.      (vla-delete ss)
  57.      (_StartUndo doc)
  58.      (mapcar
  59.        (function
  60.          (lambda ( block )
  61.            (mapcar
  62.              (function
  63.                (lambda ( attrib )
  64.                  (if (eq *tag (strcase (vla-get-TagString attrib)))
  65.                    (vla-put-TextString attrib
  66.                      (strcat *pre
  67.                        (_PadLeft (itoa (setq *num (1+ *num))) "0" (cond ( len ) ( 0 )))
  68.                      )
  69.                    )
  70.                  )
  71.                )
  72.              )
  73.              (vlax-invoke (cdr block) 'GetAttributes)
  74.            )
  75.          )
  76.        )
  77.        (vl-sort lst
  78.          (function
  79.            (lambda ( a b ) (< (caar a) (caar b)))
  80.          )
  81.        )
  82.      )
  83.      (_EndUndo doc)
  84.    )
  85. )
  86. (princ)
  87. )

 
但未经测试。
回复

使用道具 举报

19

主题

119

帖子

100

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
95
发表于 2022-7-6 10:37:01 | 显示全部楼层
好的,我这么做是希望有人能进一步帮助我。
 
我需要修改Lisp程序,就像LeeMac在这个线程中提供的那样。我只需要删除一些用户输入,并将其默认为我指定的属性。但是我能找到的关于如何学习LISP的唯一方法是关于AutoLisp的。有什么东西不需要我花18年的时间去学习吗?
回复

使用道具 举报

4

主题

2143

帖子

2197

银币

限制会员

铜币
-24
发表于 2022-7-6 10:38:12 | 显示全部楼层
试试AFRALISP。
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 10:42:21 | 显示全部楼层
 
这完全取决于你,学生眨眼:
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-7 00:14 , Processed in 0.403564 second(s), 70 queries .

© 2020-2025 乐筑天下

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