明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3777|回复: 19

[已解答] 一句简单的画直线代码,却动摇了我对AUTOLISP的信心

[复制链接]
发表于 2014-12-13 16:28 | 显示全部楼层 |阅读模式
本帖最后由 布朗运动 于 2014-12-13 21:00 编辑

初学AUTOLISP,写了一句代码:
(command "line" '(1.5 0) '(8.5 0) "")
在命令行输入后生成了一条以(1.5,0)和(8.5,0)为端点的直线,这一切看上去再正常不过。
然而,当我事先画了一条以(1.5,0)和(9,0)为端点的直线,再次运行同样的代码后,怪事出现了:
代码生成了一条和事先画好的直线完全重合的直线,也就是以(1.5,0)和(9,0)为端点的直线!
AutoCAD2008、AutoCAD2010版本中均测试过,都存在这样的问题。
请高手赐教,谢谢!
发表于 2020-9-5 00:21 | 显示全部楼层
我为什么在发布的帖子 lisp的开头和结尾写法分享l直接关闭捕捉,就是这个原因,我刚刚开始写代码的时候也遇到过这个现象,因为在手工画图时,开着捕捉是没有问题的,而代码就会默认靠近的就捕捉上了,高级的代码不好理解,只能学习前辈们的代码,新手从command的角度去写代码会很直观,精通CAD的人,及时没接触过lisp,也可以从command的角度去认知lisp
发表于 2020-9-4 13:43 | 显示全部楼层
建议找点书系统学习下,推荐两本看下!
①AutoCAD完全应用指南—AutoLISP+DCL+Visual LISP程序设计篇
②AUTOLISP&DCL基础篇
发表于 2020-9-4 12:41 | 显示全部楼层
,,问题知道了,也就不会动摇了,论坛里的大神好多,慢慢学,多逛逛论坛,看看帖子
发表于 2014-12-13 16:56 来自手机 | 显示全部楼层
关闭捕捉!!
发表于 2014-12-13 17:01 | 显示全部楼层
解决办法一:用command函数前,关闭捕捉模式。
解决办法二:不用command函数,可以用entmake、entmakex、vla-add等函数代替。
发表于 2014-12-13 19:00 | 显示全部楼层
井蛙
(command "line" "non" '(1.5 0) "non" '(8.5 0) "")
 楼主| 发表于 2014-12-13 20:56 | 显示全部楼层
感谢自贡黄明儒、lijiao、crtrccrt的帮助,按照你们提供的方法,问题已经解决。
发表于 2014-12-14 21:49 | 显示全部楼层
哈哈,多多学习
发表于 2014-12-14 22:05 | 显示全部楼层
刚开始碰到一些无法理解的问题很正常,好在现在网络方便,自己实在找不出原因后及时问一下,一般都能较快得到解决
发表于 2014-12-15 21:15 | 显示全部楼层
我还没入门竟然看懂了楼主的问题
发表于 2014-12-16 08:49 | 显示全部楼层
我只想对楼主的帖子标题提出遗憾...
发表于 2014-12-16 09:19 | 显示全部楼层
以为是Autolisp的BUG吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-20 04:54 , Processed in 0.299794 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表