NoelStalker 发表于 2022-7-6 12:23:25

图层转换lisp不工作

我试图创建一个lisp例程,将层设置为“1”,冻结所有(我有一个冻结所有的工作命令称为“fa”)chprop的所有层“am\U 0”,然后解冻所有(再次我有一个解冻所有的工作命令称为“ta”)。你们谁能告诉我为什么这个lisp例程不起作用?请参阅下面的代码。。。
 

(defun c:am0       ()
(command "-layer" "set" "1" " " "fa" "chprop" "all" " " "la" "am_0" " " "ta")
)

alanjt 发表于 2022-7-6 12:38:59

你不能再这样说了。要么包含适当的编码,要么在需要调用时使用(c:FA)。您必须启动一个新的命令字符串;不能包含(c:FA)或(c:TA)。

NoelStalker 发表于 2022-7-6 12:57:43

好啊谢谢alanjt。我把所有的命令都放进去了,但还是有一个错误。这次错误显示:
 
“命令:am0
 
无法冻结层“1”。它是当前层。
 
选项关键字无效。
; 错误:功能已取消
 
输入要更改的特性:
 
以下是我修改后的代码:
 
(defun c:am0       ()
(command "-layer" "set" "1" "freeze" "*" "" "chprop" "all" "" "la" "am_0" "thaw" "*" "")
)

alanjt 发表于 2022-7-6 13:05:05

 
 
 
在末尾再添加一个“”并尝试。如果您在层“1”上有对象,并且层“1”和“am\U 0”存在,它将起作用。
 
 
Command: am0
-layer
Current layer:"1"
Enter an option
[?/Make/Set/New/Rename/ON/OFF/Color/Ltype/LWeight/MATerial/Plot/Freeze/Thaw/LOck
/Unlock/stAte/Description/rEconcile]: set
Enter layer name to make current or <select object>: 1 Enter an option
[?/Make/Set/New/Rename/ON/OFF/Color/Ltype/LWeight/MATerial/Plot/Freeze/Thaw/LOck
/Unlock/stAte/Description/rEconcile]: freeze
Enter name list of layer(s) to freeze or <select objects>: *
Cannot freeze layer "1".It is the CURRENT layer.
Enter an option
[?/Make/Set/New/Rename/ON/OFF/Color/Ltype/LWeight/MATerial/Plot/Freeze/Thaw/LOck
/Unlock/stAte/Description/rEconcile]:
Command: chprop
Select objects: all 1 found

Select objects:
Enter property to change
: la
Enter new layer name <1>: am_0
Enter property to change
: thaw
Invalid option keyword.

Enter property to change
:

NoelStalker 发表于 2022-7-6 13:21:37

谢谢你,alanjt,我现在开始工作了。

alanjt 发表于 2022-7-6 13:34:18

 
好交易。没问题。
页: [1]
查看完整版本: 图层转换lisp不工作