ou_y_x 发表于 2013-12-13 21:02:24

LSP可正常运行,却出现“未知命令”。

LSP可正常运行,但在再次空格的时候出现:未知命令XD.
请各位大神帮忙看看

;;画一个矩形,用云线代替,引出注释文字
(defun c:xd( / cm name os en1 x db p1 p2 p3 p4 en2 orth en3)
(if (=(tblobjname "LAYER" "修订云线-OU") nil)
      (progn
      (COMMAND "-LAYER" "M" "修订云线-OU" "C" "3" "" "P" "N" "" "")
      ))
(if (=(tblobjname "STYLE" "TSSD_Rein") nil)
      (progn
      (entmake (list '(0 . "STYLE")
                     '(100 . "AcDbSymbolTableRecord")
                     '(100 . "AcDbTextStyleTableRecord")
                     '(2 . "TSSD_Rein")
                     '(70 . 0)
                     '(40 . 0)
                     '(41 . 0)
                     '(3 . "tssdeng.shx")
                     '(4 . "hztxt.shx")))))
(prompt "框选云线 By-OU")
(setq cm (getvar "cmdecho"))
(setvar "cmdecho" 0)
(setq name (getvar "clayer"))
(setvar "clayer" "修订云线-OU")
(setq os (getvar "osmode"))
(setvar "osmode" 0)
(setq orth (getvar "orthomode"))
(setvar "orthomode" 0)
(command "_rectang" pause pause)
(setq en1 (entlast))
(setq db (vl-remove-if 'not (mapcar '(lambda (x) (if (= (car x) 10) (cdr x))) (entget en1))))
(setq p1(cadr db) p2(last db))
(setq p3(polar p1 (angle p1 p2) (/ (distance p1 p2) 2)))
(command "_revcloud" "a" "600" "" "s" "c" "o" "" en1 "N")
(setq en2(entlast))
(command "_line" p3 (setq p4(getpoint p3 "\n请输入直线第二点")) "" "")
(command "trim" en2 "" p3 "")
(entmake (list
             (cons 0 "TEXT")
             (cons 100 "AcDbText")
             (cons 1 "请输入文字内容")
             (cons 10 p4)             
             (cons 40 2000)
               (cons 7 "TSSD_Rein")
             (cons 8 "修订云线-OU")
             (cons 41 0.7)
             (cons 73 (cond ((>= (cadr p4) (cadr p3)) 1)
                        (t 3)))
             (cons 72 1)
             (cons 11 p4)
             ))
(setq en3(entlast))
(command "_ddedit" en3 "" pause)
(setvar "orthomode" orth)
(setvar "osmode" os)
(setvar "cmdecho" cm)
(setvar "clayer" name)
(princ)
)

edata 发表于 2013-12-13 21:32:20

本帖最后由 edata 于 2013-12-13 23:10 编辑

(command "_line" p3 (setq p4(getpoint p3 "\n请输入直线第二点")) "" )
或者 (command "_line" p3 (setq p4(getpoint p3 "\n请输入直线第二点")) nil )


(command "_ddedit" en3"")

yaokui25 发表于 2013-12-13 21:19:55

应该是那个地方空格多了吧

ou_y_x 发表于 2013-12-14 00:36:44

edata 发表于 2013-12-13 21:32 static/image/common/back.gif
(command "_line" p3 (setq p4(getpoint p3 "\n请输入直线第二点")) "" )
或者 (command "_line" p3 (setq ...

多谢。
顺便问一下,如果不用command “_ddedit”,怎么让文字处于编辑状态。

edata 发表于 2013-12-14 00:45:33

ou_y_x 发表于 2013-12-14 00:36 static/image/common/back.gif
多谢。
顺便问一下,如果不用command “_ddedit”,怎么让文字处于编辑状态。

平时都是通过getstring或者dcl对话框获取输入文本,所知有限,也只有ddedit很好。

1993063 发表于 2013-12-15 09:37:44

ou_y_x 发表于 2013-12-13 06:36 static/image/common/back.gif
多谢。
顺便问一下,如果不用command “_ddedit”,怎么让文字处于编辑状态。

(command "ddedit" (entlast))

迷不知途 发表于 2015-1-27 00:41:35

非常感谢!正在学习中!!!

zst1978 发表于 2020-8-24 20:08:19

(vl-load-com)加这个试试
页: [1]
查看完整版本: LSP可正常运行,却出现“未知命令”。