chelsea1307 发表于 2022-7-6 14:27:46

一个行不通的口齿不清练习

下面是我的第二次Lisp程序的尝试,李在几个月前帮我完成了第一次,现在我又有时间尝试了。我希望lisp绘制一个圆,然后从圆心到选定点绘制一条线。然而,它没有做到这一点,它没有做任何事情,它错误了太多的论点立即任何帮助都将是巨大的
(defun C:practice()(varA varB varC)
(setq A(getreal "\n radius of circle: "))
(setq B(getpoint "\n select center of circle: "))
(setq C(getpoint "\n select end of line: "))
(command "_.circle" B A "")
(command "_.line" B C "")
(princ)
)

Lee Mac 发表于 2022-7-6 14:33:33

我喜欢你花时间定位变量,很多人都忽略了这一点,除了你没有很好地定位它们:
 

(defun C:practice (/ A B C)
(setq A (getreal "\n radius of circle: "))
(setq B (getpoint "\n select center of circle: "))
(setq C (getpoint "\n select end of line: "))
(command "_.circle" B A "")
(command "_.line" B C "")
(princ)
)

 
除此之外,第一次尝试做得很好

chelsea1307 发表于 2022-7-6 14:35:21

谢谢,李知道它必须是简单的,需要修正我的笔记,在变量之前去掉额外的括号和var。

Lee Mac 发表于 2022-7-6 14:40:20

 
在Visual LISP编辑器中查看关于“defun”的帮助文件。

chelsea1307 发表于 2022-7-6 14:43:06

好的,vlide刚刚崩溃并带走了我的整个电脑,希望这次不会,我可以找到帮助文件

chelsea1307 发表于 2022-7-6 14:46:44

很酷,我不知道有自己的帮助部分!

Lee Mac 发表于 2022-7-6 14:53:44

 
我认为你可以从阅读帮助文件中学到几乎所有的LISP和大部分的Visual LISP。。。大量示例代码和大量信息。。。快乐阅读

chelsea1307 发表于 2022-7-6 14:56:29

visual LISP和LISP之间有什么区别?

Lee Mac 发表于 2022-7-6 14:59:39

Visual LISP于1999年在ACAD 2000中引入,它提供了更多的编程功能,它包括所有VL函数,例如:vlax get ACAD object、vlax curve getClosestPointto等

MSasu 发表于 2022-7-6 15:05:04

@chelsea1307:
由于您在命令调用结束时添加了一个额外的圆圈,因此您的例程不会添加圆圈–只需从以下位置删除“”即可:

(command "_.circle" B A "")
页: [1] 2
查看完整版本: 一个行不通的Lisp程序练习