iCAx开思网

标题: 帮我看看这个程序有什么不对 [打印本页]

作者: jeff0701    时间: 2005-12-6 19:46
标题: 帮我看看这个程序有什么不对
;---------------------------
 (defun C:Bxh (/ p1 p2 p3 1 ang 1 bx bxh radi txth) ;标序号
  (setq radi 5) ;圆圈半径
  (setq txth 5) ;字高
  (if (not bx) (setq bx 1))
  (setq p1 (getpoint "\n请选择起点:")) ;在零件上选一点
  (setq p2 (getpoint "\n请选择第二点或回车表示无第二点")) ;标注位置处一点
  (setq bxh (getint (gstr "\n请输入序号" bx))) ;序号数
  (if bxh (setq bx bxh))
  (cond (p2
   (command "layer" "set" 2 " ") ;改到画细线图层
   (setq ang 1 (angle p1 p2))
   (setq p3 (polar p1 ang (-(distance p1 p2) radi))) ;画圆、线
   (command "pline"
   (polar p1 ang 1 0.25)
   "w" 0.5 0,5 "A" "CE"p1"A"359.9"L""W"0 0 p3"")
   (command"circle"p2 radi)
   (command "layer" "set" 6 " " ;改到写文字图层
   "text" "J" "M" p2 txth 0 bx) ;写文字
  )
   ((not p2) ;如果在零件中直接标注
   (command "layer" "set" 2 " ") ;改到画细线图层
   (Command "circle" p1 radi) ;画圆
   (command "layer" "set" 6 " " ;改到写文字图层
   "text" "J" "M" p1 txth 0 bx) ;写文字
   )
  )
  (setq bx (+ bx_1))
  (princ)
 )
  ;----------------------
这是个标注序号的小程序,我怎么运行不了,总提示错误!
作者: Joseph Lin    时间: 2005-12-7 12:35
左右括号数量不一样,自己先check看看。
作者: chenxin_98    时间: 2005-12-10 17:53
gstr未知命令
作者: Andyes    时间: 2005-12-11 09:46
(defun C:Bxh (/ p1 p2 p3 1 ang 1 bx bxh radi txth) ;标序号
    
  (setq radi 5)                                ;圆圈半径
  (setq txth 5)                                ;字高
  (if (not bx) (setq bx 1))
    
  (setq p1 (getpoint "\n请选择起点:"))        ;在零件上选一点
  (setq p2 (getpoint "\n请选择第二点或回车表示无第二点"))
  (setq bxh (getint (getstring "\n请输入序号" bx))) ;序号数
    
  (if bxh (setq bx bxh))
    
  (cond
    (p2
     (command "layer" "set" 2 " ")        ;改到画细线图层
     (setq ang 1 (angle p1 p2))
       
     (setq p3 (polar p1 ang (- (distance p1 p2) radi))) ;画圆、线
     (command "pline"
              (polar p1 ang 1 0.25)
              "w" 0.5 0,5  "A" "CE" p1"A" 359.9 "L" "W" 0 0 p3 ""
     )
     (command "circle" p2 radi)
     (command "layer" "set" 6 " "        ;改到写文字图层
            "text" "J" "M" p2 txth 0 bx) ;写文字
    )
    ((not p2)                                ;如果在零件中直接标注
     (command "layer" "set" 2 " ")        ;改到画细线图层
     (Command "circle" p1 radi)                ;画圆
     (command "layer" "set" 6 " "        ;改到写文字图层
                  "text" "J"        "M" p1 txth 0 bx) ;写文字
    )
  )
  (setq bx (+ bx_1))
  (princ)
)




欢迎光临 iCAx开思网 (https://www.icax.net/) Powered by Discuz! X3.3