口齿不清。fas公司
我有30个lisp例程,我一直在使用,所以我把它全部放在一个大例程中,它运行得很好。现在我想把它从。lsp到。我使用vlide来更改它,但30个中有6个不允许我更改为。我得到的只是这个;错误:参数太多:(WHILE(=PICK“3”)(命令)。插入“ttv\u 3”0,0…)(命令“.zoom”“0,0”“50,50”)…);编译中止:发现致命错误。然后我试着在vlide中调试它,我得到的只是回调项?我能做什么?
谢谢你,迈克 麦克风55,
张贴冒犯性的例行公事。一定是出了什么问题。
ymg公司 我使用此lisp将lisp转换为fas
;;LSP2FAS.lsp ; Scot Harris11-29-2012
;; Minimizes the sequence needed to create FAS files.
;; Help facility added.
;; Streamlined from original program provided by aqdam1978.
(defun c:LSP2FAS-Help (/)
(alert (strcat
"\tLisp (LSP) to Fast and Secure (FAS) Help"
"\n "
"\nFile dialog begins in the current directory. "
"\nIt is suggested to place and open a drawing (DWG) "
"\ninside the input folder you wish to batch process. "
"\n "
"\nOutput file will be in the same folder as the file selected. "
"\n "
"\nThere is no provisional check for an existing FAS file of the same name. "
))
);end LSP2FAS-Help
(defun c:LSP2FAS ( / a )
(vl-load-com)
(prompt " Lisp to Fast and Secure (FAS). LSP2FAS-Help available. ")
(if (wcmatch (strcase (setq a (getfiled "Convert LSP File to FAS" (getvar "DWGPREFIX") "" 16))) "*.LSP")
(progn
(c:vlide)(vlisp-compile 'st a)
(princ (strcat "\n File " (vl-string-subst ".fas" ".lsp" a) " created. "))
);progn
(alert "File extension must be \".LSP\" ")
);if
(princ)
);end LSP2FAS
请阅读代码发布指南并编辑您的帖子,将代码包含在代码标签中。 当出现“\n选择一个数字1-35并点击回车”)时,输入3
当出现“\n输入T尺寸4-3/8英寸及以上{A}:”)时,输入6或>
这是令人讨厌的例行公事。如果你能把这个放到一个。fas让我知道你是如何一步一步地到达那里的,这样我就可以修复其他5个?
谢谢你,迈克 我从我的代码中复制了文本并粘贴进去,高亮显示代码并单击“代码”按钮,它看起来还是一样吗?先键入代码?
当出现“\n选择一个数字1-35并点击回车”)时,输入3
当出现“\n输入T尺寸4-3/8英寸及以上{A}:”)时,输入6或>
这是令人讨厌的例行公事。如果你能把这个放到一个。fas让我知道你是如何一步一步地到达那里的,这样我就可以修复其他5个?
谢谢你,迈克
两天。图纸
ttv_3。图纸 麦克风55,
如果您不能遵守张贴指南并包含代码标签,
我不明白我们为什么要花时间帮助你。
看看你贴的那些笑脸!,我们不能用这些废话。
也许上传Lisp程序。
ymg公司
我把你的代码粘贴到VLIDE中,运行“工具>在编辑器中检查文本”,得到了这个
.....
; error: too many arguments: (WHILE (= PICK "3") (COMMAND ".insert" "ttv_3" "0,0" ... ) (COMMAND ".zoom" "0,0" "50,50") ... )
; Check done.
如果将右括号上移几行,则其结果为ok。
我想知道你是否在(while)支持的论点数量上遇到了一些限制。
许多年前,这里讨论过这个问题,至少是因为它与列表的长度有关。
http://forums.autodesk.com/t5/AutoCAD-2000-2000i-2002-DWG/AutoLISP-List-Limits/td-p/229820
我只是尝试了这样一个简单的函数,当参数数达到255时,它就失败了。
(while (= 3 3)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1)
(setq a 1))
麦克风55,
R、 K关于错误的看法是正确的:参数太多:
如果用以下语法替换代码中的多个setq:
(setq a "abc"
b "def"
c "ghi"
etc....
)
你的while循环现在适合了。
我在附件中做了一些,现在错误消失了。
456.LSP 麦克风55,
总而言之!
很高兴我们能提供帮助,但优点在于R.K.McSwain
ymg公司
页:
[1]
2