chelsea1307 发表于 2022-7-6 14:52:11

我想缺少一个括号

我终于发现哪个lisp给我的创业套件带来了问题。任何了解lisp的人都可以告诉我,为什么当这个lisp加载时,它会要求我选择要缩放的对象,并阻止启动套件中其余的LSP加载。任何帮助都会很好
;; This lisp breaks a two lines which cross each other
(defun c:sc ()
(setq pick (entsel "\nPick:")) (terpri)
(setq pnt (getpoint "\nPick point:" )) (terpri)
(setq scl (getstring "0.5"))
(command "scale" pick pnt scl )
)
(defun c:half ()
(prompt
"\nPick entities you want to scale: ")
(setq ss (ssget))
(setq pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 0.5)
)
(defun c:twice ()
(prompt
"\nPick entities you want to scale: ")
(setq ss (ssget))
(setq pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 2)
)
(defun c:1QUARTER ()
(prompt
"\nPick entities you want to scale: ")
(setq ss (ssget))
(setq pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 0.25)
)
(defun c:three4 ()
(prompt
"\nPick entities you want to scale: ")
(setq ss (ssget))
(setq pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 0.75)
)
defun c:alberto ()
(prompt
"\nPick entities you want to scale: ")
(setq ss (ssget))
(setq pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 1.5)
)
This one aaa lets you scale reference
(defun c:aaa ()
(command "OSNAP" "ins")
(SETQ object (entsel "\n pick object"))
(SETQ INS (GETPOINT "\NPICK POINT"))
(command "scale" object "" INS "R" "6-1/64" "4.5")
(command "osmode" "0")
)
(defun c:vsc ()
(prompt
"\nPick entities you want to scale: ")
(setq ss (ssget))
(setq pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt tom)
)
(defun c:t0 ()
(command "style" "" "" 0 "" "" "" "" ""))
)

Lee Mac 发表于 2022-7-6 14:59:58

听起来它在定义的函数(defun)之外有命令-把它放在这里,我应该能够为你排序

chelsea1307 发表于 2022-7-6 15:07:15

哎呀,我本来想把它贴在原版上的

JohnM 发表于 2022-7-6 15:13:26

试试这个,有几个问题
 

;; This lisp breaks a two lines which cross each other
(defun c:sc ()
(setq pick (entsel "\nPick:")) (terpri)
(setq pnt (getpoint "\nPick point:" )) (terpri)
(setq scl (getstring "0.5"))
(command "scale" pick pnt scl )
)
(defun c:half ()
(prompt
"\nPick entities you want to scale: ")
(setq ss (ssget))
(setq pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 0.5)
)
(defun c:twice ()
(prompt
"\nPick entities you want to scale: ")
(setq ss (ssget))
(setq pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 2)
)
(defun c:1QUARTER ()
(prompt
"\nPick entities you want to scale: ")
(setq ss (ssget))
(setq pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 0.25)
)
(defun c:three4 ()
(prompt
"\nPick entities you want to scale: ")
(setq ss (ssget))
(setq pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 0.75)
)
(defun c:alberto ()
(prompt
"\nPick entities you want to scale: ")
(setq ss (ssget))
(setq pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 1.5)
)
;;This one aaa lets you scale reference
(defun c:aaa ()
(command "OSNAP" "ins")
(SETQ object (entsel "\n pick object"))
(SETQ INS (GETPOINT "\NPICK POINT"))
(command "scale" object "" INS "R" "6-1/64" "4.5")
(command "osmode" "0")
)
(defun c:vsc ()
(prompt
"\nPick entities you want to scale: ")
(setq ss (ssget))
(setq pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt tom)
)
(defun c:t0 ()
(command "style" "" "" 0 "" "" "" "" ""))

Lee Mac 发表于 2022-7-6 15:18:51

快速浏览后-只需稍微整理一下:
 

(defun c:sc(/ pick pnt scl)
(setq    pick (entsel "\nPick:")
   pnt(getpoint "\nPick point:")
   scl(getstring "0.5"))
(command "scale" pick pnt scl)
(princ))

(defun c:half(/ ss pt)
(prompt "\nPick entities you want to scale: ")
(setq    ss (ssget)
   pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 0.5)
(princ))

(defun c:twice    (/ ss pt)
(prompt "\nPick entities you want to scale: ")
(setq    ss (ssget)
   pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 2)
(princ))

(defun c:1QUARTER(/ ss pt)
(prompt
   "\nPick entities you want to scale: ")
(setq    ss (ssget)
   pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 0.25)
(princ))

(defun c:three4   (/ ss pt)
(prompt "\nPick entities you want to scale: ")
(setq    ss (ssget)
   pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 0.75)
(princ))

(defun c:alberto(/ ss pt)
(prompt "\nPick entities you want to scale: ")
(setq    ss (ssget)
   pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt 1.5)
(princ))

(defun c:aaa(/ object ins)
(command "OSNAP" "ins")
(SETQ    object (entsel "\n pick object")
   INS    (GETPOINT "\NPICK POINT"))
(command "scale" object "" INS "R" "6-1/64" "4.5")
(command "osmode" "0")
(princ))

(defun c:vsc(/ ss pt)
(prompt "\nPick entities you want to scale: ")
(setq    ss (ssget)
   pt (getpoint "\n Pick scale point: "))
(command "scale" ss "" pt tom)
(princ))

(defun c:t0()
(command "style" "" "" 0 "" "" "" "" "")
(princ))


 

chelsea1307 发表于 2022-7-6 15:23:14

我知道。。。我没有写任何这些,我甚至没有使用这些。。。我的办公室害怕改变,尽管我认为如果我扔掉一个他们觉得奇怪的文件,就不会有人再使用这些了,所以我想我会尽量让它正常工作,而不会造成问题。。。

Lee Mac 发表于 2022-7-6 15:30:09

 
我完全明白你的意思-我工作的办公室是一样的。。。唯一的区别是,在大约10个人中,只有一个人听说过宏、DIESEL或LISP。

MaxwellEdison 发表于 2022-7-6 15:30:33

实际上,我的公司在某种程度上鼓励我学习C++,这样我就可以维护我们的脚本(用于附加hasbCAD),以防我的同事(编写上述脚本的人)屈服于“被总线击中”的场景。不幸的是,我唯一真正做过的编码是让我的Tandy在QBASIC中发出Für Elise的嘟嘟声。。。

lpseifert 发表于 2022-7-6 15:40:09

这里有一位拥有15年以上cadd经验的设计师(原文如此),他拒绝使用任何非OOTB的东西;没有lisp,没有pgp,他必须从图标中选择命令,他甚至不会使用鼠标上的滚轮来平移/缩放。当人们拒绝尝试和学习时,很难尝试实现任何进步(例如注释性文本、动态块)。每个人都有自己的我想。。。
哎呀,我不是故意劫持线程的。

chelsea1307 发表于 2022-7-6 15:46:46

很高兴知道我不是唯一一个这样的人
页: [1] 2
查看完整版本: 我想缺少一个括号