我写的autolisp哪里错了,请大侠帮忙解决下。加载的时候出现(命令: ; 错误: 输入的列表有缺陷)

(defunc:bg()(setqdd(getint"输入标高精度:"))(setqbg1(getint"输入起始标高:"));getreal(setqpoint1(ge... (defun c:bg()
(setq dd (getint "输入标高精度:"))
(setq bg1 (getint "输入起始标高:")) ;getreal
(setq point1 (getpoint "选择起始点:"))
(setq px1 (nth 0 point1)) ;得到点的X坐标值
(setq py1 (nth 1 point1)) ;得到点的Y坐标值
(setq tx1 (strcat "bg1")) ;得到标高的字符串
(while
(progn
(initget 16)
(setq point2 (getpoint "选择标注的坐标点:"))
)
(setq px2 (nth 0 point2)) ;得到点的X坐标值
(setq py2 (nth 1 point2)) ;得到点的Y坐标值
(setq bg2 (rtos (+ (- py2 py1) bg1)) 2 dd) ;求得bg2值
(setq px3 (+ px2 0.15))
(setq py3 (+ py2 0.2))
(setq px4 (- px2 0.15))
(setq py4 (+ py2 0.2))
(setq px5 (+ px2 0.3))
(setq py5 (+ py2 0))
(setq tx2 (strcat "bg2")) ;得到标高的字符串
(setq p1 (list px2 py2)) ;结合px1 & py1成p1点
(setq p2 (list px3 py3)) ;结合px1 & py1成p2点
(setq p3 (list px4 py4)) ;结合px1 & py1成p3点
(setq p4 (list px5 py5)) ;结合px1 & py1成p4点
(command "line" p1 p2 p3 "C") ;添加标高符号
(command "text" p4 0.2 0 "tx2") ;添加标高数值

展开
 我来答
设计人生3n
2014-08-21 · 超过26用户采纳过TA的回答
知道答主
回答量:34
采纳率:0%
帮助的人:44万
展开全部
问题一:
(setq px2 (nth 0 point2)) ;得到点的X坐标值
(setq py2 (nth 1 point2)) ;得到点的Y坐标值
(setq bg2 (rtos (+ (- py2 py1) bg1)) 2 dd) ;求得bg2值----此句有问题,
变成了下面的这个样子
(setq bg2 (rtos (+ (- py2 py1) bg1))
2 dd
)
问题二:
最后的两个括号请将 )改成 )
即全角改成半角
更多追问追答
追问
最后那两个括号改了之后就变成(命令: ; 错误: 语法错误)了。还问题一为什么要那么改啊。谢谢
追答
帮你改了一下,至少可以运行了,请看下面的内容。(你是初学者吧,有这个样子也算不错了)
(defun c:bg ()
(setq dd (getint "输入标高精度:"))
(setq bg1 (getint "输入起始标高:")) ;getreal
(setq point1 (getpoint "选择起始点:"))
(setq px1 (nth 0 point1)) ;得到点的X坐标值
(setq py1 (nth 1 point1)) ;得到点的Y坐标值
(setq tx1 (strcat "bg1")) ;得到标高的字符串
(while
(progn
(initget 16)
(setq point2 (getpoint "选择标注的坐标点:"))
)
(setq px2 (nth 0 point2)) ;得到点的X坐标值
(setq py2 (nth 1 point2)) ;得到点的Y坐标值
(setq bg2 (rtos (+ (- py2 py1) bg1))
dd 2
) ;求得bg2值
(setq px3 (+ px2 0.15))
(setq py3 (+ py2 0.2))
(setq px4 (- px2 0.15))
(setq py4 (+ py2 0.2))
(setq px5 (+ px2 0.3))
(setq py5 (+ py2 0))
(setq tx2 (strcat "bg2")) ;得到标高的字符串
(setq p1 (list px2 py2)) ;结合px1 & py1成p1点
(setq p2 (list px3 py3)) ;结合px1 & py1成p2点
(setq p3 (list px4 py4)) ;结合px1 & py1成p3点
(setq p4 (list px5 py5)) ;结合px1 & py1成p4点
(command "line" p1 p2 p3 "C") ;添加标高符号
(command "text" p4 0.2 0 "tx2") ;添加标高数值
)
)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式