找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 707|回复: 7

[求助] [求助]:各们兄弟能否帮我找出这段程序的错误

[复制链接]
发表于 2004-4-17 11:30:59 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
各位高手:本人是AUTOLISP初学者近日做一道练习:“在TEST.LSP程式檔中,新增程式RECT,以對角的兩點建立矩形(聚合線),再詢問是否在矩形中加上對角線,最後將圖形以輸入的角度旋轉”
程序如下:
(defun c:rect ( )     (setq pt_stat (getpoint "select first point")
        pt_end  (getcorner "select second point")
                     pt_tmp1 (list (car pt_stat) (cadr pt_end))
                     pt_tmp2 (list (car pt_end) (cadr pt_stat)))

                 (command "pline" pt_stat pt_tmp1 pt_end pt_tmp2 "c" )
                 (command "select" "l" "")
                 (initget 128 "Yes No")
  (setq YesNo (getkword "diagonal line(y/n): "))
  (if (= YesNo "yes")  (progn
                  (command "line" pt_stat pt_end "")
                  (command "select" "p" "l" "")
                  (command "line" pt_tmp1 pt_tmp2 "")
                  (command "select" "p" "l" "")))
         (command "rotate" "p" "" pt_stat
         (*(getangle pt_stat "rotate angle:") (/ 180 pi))
  (princ))
         
运行程序后却出现 “输入的列表有缺陷” 能否找出错误
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-4-17 15:35:16 | 显示全部楼层
这样就可以啦!
(defun c:rect ()
  (setq        pt_stat        (getpoint "select first point")
        pt_end        (getcorner pt_stat "select second point")
        pt_tmp1        (list (car pt_stat) (cadr pt_end))
        pt_tmp2        (list (car pt_end) (cadr pt_stat))
  )

  (command "pline" pt_stat pt_tmp1 pt_end pt_tmp2 "c")
  (command "select" "l" "")
  (initget 128 "Yes No")
  (setq YesNo (getkword "diagonal line(y/n): "))
  (if (= YesNo "yes")
     (progn
        (command "line" pt_stat pt_end "")
        (command "select" "p" "l" "")
        (command "line" pt_tmp1 pt_tmp2 "")
        (command "select" "p" "l" "")
      )
    )
    (command "rotate"   "p"           ""   pt_stat           (* (getangle pt_stat "rotate angle:") (/ 180 pi))
    )
    (princ)
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-4-17 19:28:58 | 显示全部楼层
楼上:是哪一行错了说清楚点好吗
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-4-17 19:38:36 | 显示全部楼层
“输入的列表有缺陷”一般是括弧不配对,相信你自己能找出来。
养成良好的书写习惯有助于避免这类问题。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-4-18 08:32:54 | 显示全部楼层
第三行
pt_end  (getcorner pt_stat "select second point")
中,少了第一点pt_stat  ;
最后的COMMAND括号不匹配
(command "rotate" "p" "" pt_stat (*(getangle pt_stat "rotate angle:") (/ 180 pi))
加上就好了!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-4-18 15:58:01 | 显示全部楼层
楼上谢了。。是啊要养成良好的书写习惯是重要的
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-5-9 09:33:18 | 显示全部楼层
请问,怎样检查程序的错误啊,只提示有错,可是不知道错在那里,怎样检查啊
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-5-9 10:54:23 | 显示全部楼层
用VL的编辑环境
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2025-9-27 10:14 , Processed in 0.302496 second(s), 45 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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