乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 52|回复: 1

帮我看看,哪儿有问题???

[复制链接]

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2003-1-20 10:51:00 | 显示全部楼层 |阅读模式
帮我看看下面这段程序到底哪儿出错了,输入部分应该没有问题了,就是最后的“command”命令无法画出线框。(defun pri (getx prompt_ val / x)
;;;变元getx为用户输入函数getxxx
;;;变元prompt_为getxxx函数的提示语句
;;;变元val为默认的缺省值
(princ (strcat prompt_ " :" T))
(setq x (getx ">:"))
)
(if (and x
(/= x "")
)
x
val
)
)
PRI
(defun CrawBase()
  (setq cmd (getvar "cmdecho"))
  (setvar "cmdecho" 0)
  (setq Type_list '(("0" 841 1189) ("1" 594 841) ("2" 420 594) ("3" 297 420) ("4" 210 297)))
  (setq Drawing_type (pri getstring "输入图纸型号:0/1/2/3/" "4"))
  (setq Drawing_Direct (getstring "图纸方向:纵向(B)/横向[A]:"))
  (setq BasePoint (pri getpoint "输入插入点:" '(0,0)))
  (setq Paper_Type (cdr (assoc Drawing_type Type_list)))
  (if (or (= Drawing_Direct "A") (= Drawing_Direct "")) (setq Paper_Type (list (cadr Paper_Type) (car Paper_Type))))
  ;(a:setlayer)
  ;(setq BasePoint '(0 0));定义左下角为0点,沿逆时针方向转
  (setq pt2 (list (car Paper_Type) 0))
  (setq pt3 (list (car Paper_Type) (cadr Paper_Type)))
  (setq pt4 (list 0 (cadr Paper_Type)))
  (print BasePoint)
  (print pt2)
  (print pt3)
  (print pt4)
  (command "pline" BasePoint pt2 pt3 pt4 "c")
  ;(print 4)
  (setvar "cmdecho" cmd)
  (princ)
)
回复

使用道具 举报

2

主题

46

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
54
发表于 2003-1-20 11:08:00 | 显示全部楼层
程序未仔细看,提供一点意见:
  (print BasePoint)
  (print pt2)
  (print pt3)
  (print pt4)
  (command "pline" BasePoint pt2 pt3 pt4 "c")
打印时,BasePoint pt2 pt3 pt4 是否有值?若没有,点求错了,往回找。若点都在,很可能是捕捉未关闭造成的,可在画线前加上(setvar "osmode" 0),试试。
另外,在关键字输入时,应用initget控制一下。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-5-31 14:02 , Processed in 0.292351 second(s), 56 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表