mwade93 发表于 2022-7-5 22:56:41

额外的y工作了。非常感谢。

MSasu 发表于 2022-7-5 22:58:58

很高兴听到这个消息;不客气!

tmelancon 发表于 2022-7-5 23:03:27

我只是试了一下,虽然它正确地打印了所有内容,但还是回到了布局1。它没有切换回模型,保存并关闭。以下是我所拥有的:
 
(defun c:DPA ()
(foreach lay (layoutlist)
(setvar 'CTab lay)
(COMMAND"-plot"
"n"
"Drawing1"
""
"Brother HL-5370DW series"
"n"
"n"
"y"   )
   )
)
(setvar "CTAB" "MODEL")
(if (= (getvar "DWGTITLED") 1)
(command "_QSAVE" "_CLOSE")
)
 
看起来很滑稽。

tmelancon 发表于 2022-7-5 23:05:31

更新:我运行了代码,它只是一遍又一遍地打印布局1。然后继续布局1。我需要它来打印所有布局,然后切换回模型,关闭,并保存。一些图纸的布局为1,而其他图纸的布局为8。你能帮忙吗?

MSasu 发表于 2022-7-5 23:09:39

请注意,您将我建议的代码放置在DPA命令定义之外,因此,它将不会被执行。尽管如此,我不确定是什么让它看起来“有趣”。

tmelancon 发表于 2022-7-5 23:10:08

就是这样!我知道有些事情看起来很“滑稽”。这意味着它看起来不对劲。我现在已经将其转移到定义中,并对其进行了测试。尽管如此,它仍然没有打印所有布局。我需要Lisp程序寻找和绘图,无论多少可能在任何给定的图纸。一些有3个布局,其他有8个。

MSasu 发表于 2022-7-5 23:16:11

似乎您正在强制绘制名为“Drawing1”的布局;请考虑使用“”(绘制当前变量)或lay变量:
...
(setvar 'CTab lay)
(COMMAND "-plot"
      "n"
      "Drawing1" ""
...

tmelancon 发表于 2022-7-5 23:19:09

上次我会打扰你的。代码的工作原理与我所希望的一样,但只是绘制第一个布局。你能帮我查一下密码吗?
 
(defun c:DPA ()
(foreach lay (layoutlist)
(setvar 'CTab lay)
(COMMAND"-plot"
"n"
""
""
"Brother HL-5370DW series"
"n"
"n"
"y"   )
(COMMAND "CTAB" "MODEL")
(command "_QSAVE" "_CLOSE")
   )
)
 
非常感谢!

MSasu 发表于 2022-7-5 23:20:22

请注意,您已将结束代码放置在FOREACH循环中,因此将永远无法到达第二个和以下其他布局。

tmelancon 发表于 2022-7-5 23:23:51

我一直收到这个错误?我今天没空!我好像弄不懂!你能完成并提交吗?
 
错误:输入列表格式不正确
页: 1 [2]
查看完整版本: Lisp以绘制所有布局Malfu