Marvin7 发表于 2022-7-6 06:28:49

关于a的初级口齿不清问题

编辑:[已解决]请参阅下面李的第二篇文章。
 
使用这些论坛,我发现了一些LISP代码,可以创建视口边界的副本并将其放置在模型空间中,效果很好。
http://www.jtbworld.com/lisp/vp-outline.htm
 
但我想更进一步。
 
所以我在原始代码的最后一个括号之前添加了一些新代码。。。但它不能正常工作。我的目标是通过选择新创建的边框,然后将其放入一个新创建的具有自动分配名称的组(这就是为什么我没有在.group命令前加“-”来完成LISP。
 
我在原始代码最后一个右括号之前添加的新代码:
运行LISP会在命令行历史记录中产生以下错误:
 
命令:VP-OUTLINE-ANDGROUP
.选择
选择对象:找到1个
选择对象:。组
*无效的选择*
需要一个点或窗口/Last/Crossing/BOX/ALL/Fence/WPolygon/CPolygon/Group/Add/Remove/Multiple/Previous/Undo/AUto/SIngle/SUbobject/Object
; 错误:功能已取消
 
 
我做错了什么?

Marvin7 发表于 2022-7-6 06:40:29

此外;在第一行代码中没有引号,因为在它周围加引号不起作用。它给出了另一个错误,因为它显然是在输入分号,而不是模仿按下回车按钮,这正是我试图做的,但现在我担心;没有引号只是在补救它之后的(普林斯)。
 
我做这一切的最终原因是自动在三维对象周围创建视口边界,这将允许我移动三维几何体,同时使用Zoom/“Object”/“Group”命令使图纸空间视口自动跟随几何体。

Lee Mac 发表于 2022-7-6 06:44:56

我还没有看过这个程序,但试着在期末考试之前加上这个(普林斯):
 
(if (setq sel (ssget "_L"))
   (command "_.group" sel "")
)

Marvin7 发表于 2022-7-6 06:57:26

 
如果我用你的代码替换我附加的代码,但需要注意的是,代码在原始代码的最后一个(princ)之前,我会得到以下错误:
 
命令:VP-OUTLINE
_.组输入组选项
[?/Order/Add/Remove/Explode/REName/selective/Create]:
选项关键字无效。
; 错误:功能已取消
 
从字面上理解你的回答,李.麦克,我也试着在我的附加代码的最后一个(princ)之前插入你的代码,没有删除我的任何附加代码,这也不起作用。
 
我只是想澄清一下,换句话说,我试图编写的代码是“选择最后创建的对象,然后将其分配给一个组”。

Lee Mac 发表于 2022-7-6 07:03:12

 
啊,我看到通过AutoLISP调用GROUP命令会默认启动旧版本的命令。
 
试试这个:
2
 
在原始程序代码(不是您的修改版本)的最后一个(princ)之前插入上述内容。

Marvin7 发表于 2022-7-6 07:11:41

作品非常感谢。
 
我将查看您的代码以了解更多关于LISP的信息。
 
如果我能再问一个问题。。。
似乎我的代码无法模拟最后按Enter键结束。选择command,然后继续。group命令。“或”也没有工作。然而,我在网上找到了一个说“或者”应该是指按下回车按钮。这不对吗?

Lee Mac 发表于 2022-7-6 07:17:34

 
不客气!
 
 
在宏中,空格模拟用户按空格键,分号(模拟用户按Enter键(宏引用)。
 
在AutoLISP中,当向命令函数提供参数时,空字符串(“”)等同于用户按Enter键;分号(后面同一行上的任何内容都被视为注释,不由解释器评估。

Marvin7 发表于 2022-7-6 07:24:44

这是有道理的。我尝试了“”,但没有“”。

Marvin7 发表于 2022-7-6 07:33:24

编辑:事实上,后来我发现下面发布的代码没有选择正确的对象放入组(尽管运行整个lisp确实会创建边界,进入模型空间,并创建自动指定的组),因此下面的代码毕竟不能正确工作。
 
在另一条帖子中,李·麦克发布了他版本的副总裁大纲。lsp,我决定用他的lisp代替。
http://www.cadtutor.net/forum/showthread.php?21820-图纸空间视口中的模型空间坐标/第3页
 
因此,我从这个线程中学到了什么,并将其与李·麦克的lisp结合使用,这样他的lisp创建的每个边界也会立即保存到一个自动命名的组中。只需将下面的代码复制粘贴到李Mac的VPOutlineV1-0的正确位置。lsp‎.*
 
正确的点就在……的正前方。。。
 
(普林斯)
)
 
;; ssget-李Mac
;; ssget函数的包装器,允许使用自定义选择提示
页: [1]
查看完整版本: 关于a的初级Lisp程序问题