Scottcad94 发表于 2022-7-6 23:17:23

Can#039;t退出上一个Com

你好
 
最近,我一直在用编写脚本来测试水,以尝试和自动化一些我反复做的功能,所以我是这方面的新手。不幸的是,我们只能访问AutoCAD LT,因此无法使用LISP或任何东西。已经尝试了其他论坛中建议的^C^C和(命令)。
 
基本上我的脚本是这样的:
 
-图层集基准
 
线路0,-14000 850000,-14000
 
-插入块1 1000020000 1 1 0
 
20000,20000 1 1 0
 
30000,20000 1 1 0
 
-插入块2 3700007000 1 1 0
 
当我在CAD中运行它时,它一直要求为BLOCK1提供一个插入点(即使我不希望图形中的插入点超过3个)-我如何退出此命令并移动到下一行命令(插入BLOCK2)。从本质上说,我想要相当于逃生键的钥匙。到处都找不到答案。
 
提前感谢

BIGAL 发表于 2022-7-6 23:26:07

您可能需要为每一行输入block1,空行表示输入,因此您已经在第二次执行-insert。
在我的版本中,请注意行末的空格。

LINE 0,-14000 850000,-14000

-INSERT
B1
10000,20000
1
1
0

B1
20000,20000
1
1
0

B1
30000,20000
1
1
0

B2
20000,30000
1
1
0

steven-g 发表于 2022-7-6 23:32:52

问题似乎是在第三次插入后出现空行。这实际上是再次启动insert命令,然后需要一个坐标。注意空格,每行末尾都有一个空格字符(视觉上看不到)。使用换行符分隔每个项目的Bigals方法是编写代码的更好方法。

Scottcad94 发表于 2022-7-6 23:37:31

@BIGAL,@steven-g,插入我的第二个区块效果很好,非常感谢。但是,我如何从插入块转移到一个全新的命令行或其他不同的东西呢?

steven-g 发表于 2022-7-6 23:47:33

只要确保在最后一个命令末尾没有多余的空格,运行脚本并查看命令行或打开命令行历史记录(F2),您应该能够看到发生了什么。一旦您的脚本从插入命令中完全完成,然后只需添加下一个命令,只要您的命令接受命令行输入(没有对话框),您就可以制作一个脚本,只要您愿意。

BIGAL 发表于 2022-7-6 23:56:15

像Steven-g一样,您已经完成了,在“line”命令和“-insert”之间有一个空行,因此一起启动一个新命令。
 
哦,粘贴到命令行会产生与加载脚本文件不同的结果,因此是单行方式
 
脚本版本,注意末尾的空行需要停止行命令

LINE 0,-14000 850000,-14000

-INSERT 001 10000,20000 1 1 0

001 20000,20000 1 1 0

001 30000,20000 1 1 0

002 20000,30000 1 1 0
LINE850000,-14000 0,0

Scottcad94 发表于 2022-7-7 00:03:04

非常感谢它现在可以创建新函数等。我在使用脚本时遇到的一个问题是,有时当我运行它时,它会将所有内容准确地插入我定义的位置,而有时它会偏离位置?为什么会这样?我需要添加暂停吗?

BIGAL 发表于 2022-7-7 00:04:35

2件事添加osmode 0这将关闭捕捉有时会发生有趣的事情,它会捕捉到线的末端等,第二个是你设置了一个UCS而不是世界。

Scottcad94 发表于 2022-7-7 00:11:55

@BIGAL no snaps已禁用,ucs设置为world

BIGAL 发表于 2022-7-7 00:19:19

有时,如果你看不到感兴趣的区域,AutoCAD可以做一些有趣的事情,你的插入量很大。试着添加一个“缩放C点比例”使用第一个插入点,x,y和一个比例,这是一个已知的错误,我们已经写了很长时间的代码。 
页: [1]
查看完整版本: Can#039;t退出上一个Com