乐筑天下

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

[编程交流] 建议:autolisp routin

[复制链接]

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 09:50:01 | 显示全部楼层 |阅读模式
我希望看到所有autolisp例程都显示某种命令行提示,告诉用户要键入什么来执行例程。例如,我注意到,尽管lisp文件可能是
名为Flatttoz。lsp启动例程的命令可能是FTZ或F2Z。用户可能不知道这一点,除非他们打开。带有ASCII文本编辑器(如记事本)或。txt文件随附。lsp文件。
 
我建议在每一个lisp例程中都包含以下内容之一(或类似的内容)。
 
(princ“\n键入XXX以启动例程”)
 
...或
 
(提示“\n键入XXX以执行。”)
(普林斯)
 
我相信还有其他方法可以传达这个信息。我认为这样的事情是有益的。
 
欢迎大家提出其他想法和意见。
 
当做
 
评论
 
P、 我不久前就停止编写lisp例程了。如果我的代码出错,请告诉我。谢谢
回复

使用道具 举报

29

主题

519

帖子

477

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
163
发表于 2022-7-6 09:58:24 | 显示全部楼层
我认为如果使用警报,会出现一个消息框,对吗。类似这样:
 
  1. (alert
  2. "Type [XX] in the command line to start the routine\n\nAuthor: Joe Soap\nweb page: http://www.cadtutor.net\n\nTHIS PROGRAM IS PROVIDED "AS IS" AND WITH ALL FAULTS.\n\nPress OK to continue."
  3. )

 
我也有很长一段时间没有写LISP了。
回复

使用道具 举报

pBe

32

主题

2722

帖子

2666

银币

后起之秀

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

铜币
211
发表于 2022-7-6 10:00:43 | 显示全部楼层
同意。
 
对于需要参数的例程,也加入语法
 
 
语法:
(make_layer layername颜色)
用法:
(make_layer“LAyer1”“2”)
 
 
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 10:03:38 | 显示全部楼层
当然,一个信息提示器是一个很好的编程实践——并非所有用户都具有AutoLISP知识,因此一些用户可能无法使用该工具。
最糟糕的情况是,开发人员在编译代码并分发代码时没有任何文档,在这种情况下,他的工作没有用,因为命令的名称在FAS/VLX文件中无法读取。
 
关于警报框而不是提示的使用,我认为在你熟悉了这个例程之后,这会变得很烦人。
 
当做
米尔恰
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 10:08:43 | 显示全部楼层
大多数人都知道,语法出现在
 
“c:”表示可以从命令行调用程序。
 
对于发布的小代码片段,我通常不添加提示,因为语法在短程序中通常很明显;然而,对于具有多行代码的大型程序,我通常会添加一条命令行消息或在代码头中添加一条消息(这有什么好处……似乎没有人读取代码头)。。。
 
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 10:14:32 | 显示全部楼层
虽然您、我和其他熟悉autolisp例程的人可能足够了解打开文件并查找语法,但许多前来寻求帮助的人不知道什么是autolisp,也不知道如何加载autolisp例程。因此,我不希望他们凭直觉知道足够的信息来打开。lsp文件并查看写入的内容。因此,我的建议。
 
问:这些人中有多少人知道什么是ASCII文本编辑器?如果你问他们或者这个,他们的脸会是这个样子。
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 10:19:18 | 显示全部楼层
 
 
评论
 
让每个LISP例程向用户提示调用命令所需的语法非常好-当您只加载了少量命令时。
 
然而,随着代码库的增长,我发现只有一个提示更容易:
 
  1. Transportation ToolBox Loaded... © 2009, by [[i]RenderMan[/i]]
  2. >>  TOOLBOX  >>  List of ToolBox Commands

 
 
当用户在命令行输入TOOLBOX(并点击enter键)时,将打开一个excel电子表格,为用户提供可用于“Transportation TOOLBOX”的完整增强功能目录。
 
我发现使用excel比使用文本文件或向代码中添加描述更简单、更完整。这样做可以让我以易于阅读的方式添加格式、描述等。
 
更重要的是,这样做很容易更新!:眨眼:
 
如果您愿意,请随意使用:
 
  1. (defun c:Toolbox  (/ f)
  2. (if (findfile (setq f "[color=red]FilePath[/color]\\[color=blue]FileName[/color].xlsx"))
  3.    (startapp "C:\\Program Files\\Microsoft Office\\Office12\\EXCEL.EXE" f)
  4.    (alert (strcat "File Cannot Be Found: \n\n" f)))
  5. (princ))

 
 
 
 
 
你失踪了
  1. tags, bud. <p> </p><p>Cheers! </p>
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 10:23:55 | 显示全部楼层
缺少代码标签?哦,不!我违反了规定。我想我现在应该期待代码标签执法小组的来访。我等不及要看他们给我写的票了。$$$
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 10:27:06 | 显示全部楼层
哦因为线程标题很模糊,足以使其具有相关性!
 
我还加入了一个验证测试,该测试在绘图打开时加载,以防止未经授权的用户。
 
如果用户不属于我们的组(我们有几个),则所有功能都会用错误消息重新定义,提示他们与我联系。
 
这是必要的,因为我们的团队工作方式非常不同,如果我们团队之外的人不小心,他们可能会无意中干扰他们的环境、系统变量、层等。
 
  1. 5

 
 
:veryevil:
 
 
无需加载!?不。。。还没有。
 
虽然我们有很多自动装置,但它们占用的内存很少,好吧,我们只是还没有做到。不过,我认为这是我们在不久的将来要做的事情。
 
希望这有帮助!
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 10:30:23 | 显示全部楼层
 
在我帖子中的所有内容中,这就是你的评论。经典笑死我了
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-7 00:37 , Processed in 0.839771 second(s), 72 queries .

© 2020-2025 乐筑天下

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