nnutting 发表于 2022-7-5 23:36:32

LSP的奇怪问题

所以我有一个例程,提供多边形的面积。。。请参阅下面的代码。
我现在遇到的问题是,命令行在设置文本大小后说ARA unknown“ARA”。
命令仍在运行,但我想找出出现错误的原因。
 
非常感谢。
 
(defun c:ARA ( / area en nm pt )
(command "textsize" 6"")
   (while
       (progn (setvar 'ERRNO 0) (setq en (car (entsel)))
         (cond
               (   (= 7 (getvar 'ERRNO))
                   (princ "\nMissed, try again.")
               )
               (   (eq 'ENAME (type en))
                   (if (vl-catch-all-error-p
                           (setq area (vl-catch-all-apply 'vlax-curve-getarea (list en)))
                     )
                     (princ "\nInvalid Object.")
                   )
               )
               (   (setq area nil)   )
         )
       )
   )
   (if (and area (setq pt (getpoint "\nPoint for Text: ")))
       (entmake
         (list
            '(0 . "TEXT")
               (cons 210 (setq nm (trans '(0.0 0.0 1.0) 1 0 t)))
               (cons10 (trans pt 1 nm))
               (cons40 (getvar 'TEXTSIZE))
               (assoc8 (entget en))
               (cons50 (angle '(0.0 0.0 0.0) (trans (getvar 'UCSXDIR) 0 nm t)))
               (cons   1 (rtos (/ area 144.0) 2))
         )
       )
   )
   (princ)
)
(vl-load-com) (princ)

MSasu 发表于 2022-7-5 23:57:18

有一个额外的,无用的,对你的命令调用;移除它,并应按预期工作:
(command "textsize" 6 "")

nnutting 发表于 2022-7-6 00:22:57

完美的非常感谢。

MSasu 发表于 2022-7-6 00:47:10

不客气!
页: [1]
查看完整版本: LSP的奇怪问题