James281 发表于 2022-7-6 07:06:06

帮助将2个lisp合并为1个

我有2个lisp例程帮助绘制方向线和标签,但我必须单独执行2个命令,所以我正在寻找人帮助我将它们结合在一起。
 
命令1是绘制方位。。。

;Tip1741:BD.LSP         Bearing/Distance lines         (c)2001, Joon Hong$50 Bonus Winner

(defun C:BD()
(setvar "cmdecho" 0)
(initget 1)
(setq PT (getpoint "\nPick a starting point: "))
(initget 1 "NE NW SE SW")
(setq BR (getkword "\nPick bearing (NE/NW/SE/SW): "))
(setq OPT (strcase BR))
(initget 1)
(setq LEN (getreal "\nType the length: "))
(setq DEG (getstring "\nType the degree: ")
       minx (getstring "\nType the minute: ")
       SEC (getstring "\nType the second: "))
(if (= DEG "")
   (setq DEG "0"))
(if (= minx "")
   (setq minx "0"))
(if (= SEC "")
   (setq SEC "0"))
(cond ((= "SW" OPT)
      (setvar "angbase" (cvunit 270 "degree" "radian"))
      (setvar "angdir" 1))
       ((= "SE" OPT)
      (setvar "angbase" (cvunit 270 "degree" "radian"))
      (setvar "angdir" 0))
       ((= "NW" OPT)
      (setvar "angbase" (cvunit 90 "degree" "radian"))
      (setvar "angdir" 0))
       ((= "NE" OPT)
      (setvar "angbase" (cvunit 90 "degree" "radian"))
      (setvar "angdir" 1)))
(command "line" PT (strcat "@" (rtos LEN) "<" DEG "d" minx "'" SEC "\"") "")
(setvar "angbase" 0)
(setvar "angdir" 0)
(setvar "cmdecho" 1)
(princ))
(princ "\nType 'BD' to draw lines with bearings")
(princ)

BIGAL 发表于 2022-7-6 08:24:35

页: [1]
查看完整版本: 帮助将2个lisp合并为1个