【问题标题】:pyautocad - automate drawing - import DWG - write text - import imagepyautocad - 自动绘图 - 导入 DWG - 写入文本 - 导入图像
【发布时间】:2022-07-04 19:28:19
【问题描述】:

我不是专业的编码员,我很抱歉我的英语:) 希望你能理解。

我正在尝试自动化我的部分工作。 我必须创建 dwg;对我来说,每一层都是一张纸(如 A4 纸),因此我必须更改层并从我的存储库符号中导入特定的 dwg/dxf。

例如,我必须: (开始新项目) 打开新项目.dwg (粘贴dwg) 在第 n°3 层中导入 C:\repository_cad\symbol1.dwg,坐标 X 100 Y 200。 (在符号中间写上文字) 写入“SYMBOL_1”层 n°3 坐标 X 150 Y200 对齐中心。 (插入徽标图片) 导入 C:\repository_cad\image1.jpg 坐标 X 10 Y 20

我正在尝试使用 pyautocad,但我找不到导入 dxf 的命令,也找不到有关更改图层的信息。 我只找到了画线的命令,circle ecc,但是如果我必须通过 python 重新绘制我的所有存储库,我需要很多时间,我希望可以从另一个 dwg 复制绘制并将其粘贴到我的新 dwg 中。

有人可以帮我解决这 3 个命令吗? 也许不可能在pyautocad上制作这些东西? python还有其他库吗?

我阅读了文档,但没有看到有关某些导入功能的信息。 所以,我试过了:

from pyautocad import Autocad, APoint
acad = Autocad(create_if_not_exists=False)
acad.prompt("Hello, Autocad from Python\n")
print (acad.doc.Name)

它的工作原理,在 autocad 终端上我可以看到“你好,来自 Python 的 Autocad” 在文档中,我了解了如何从 python 编写 autocad 命令。 功能是: 迅速的() 我试过了:

acad.prompt('-INSERT') #-INSERT is the autocad command for import dxf or dwg
acad.prompt('C:\SPAC\Librerie\Elettr\02-15-04.dwg')#this is the path of the cad
acad.prompt('-15 -15') #coord X Y of the point where i want to paste
acad.prompt('1') # 1 is the scale factor in X
acad.prompt('1') # 1 is the scale factor in Y (autocad askt first in X and after in Y
acad.prompt('0') #degree of rotation

此时我在 python 上没有错误,在 autocad 终端上也没有错误,但绘图没有出现在 cad 上

谢谢 最大

【问题讨论】:

标签: python autocad autocad-scripts


【解决方案1】:

acad.prompt() 只会将字符串回显到命令行。您正在寻找的是 acad.doc.SendCommand(),例如

acad.doc.SendCommand('-INSERT ')

注意autocad命令后面有一个空格,代表激活命令。

【讨论】:

    【解决方案2】:

    如何在发送命令中传递变量而不是数字

    acad.doc.SendCommand('QLEADER' '0,500' '\n' '200,1000 ''\n' '500 ' 'UTSAB \n' '\n' ) 这行得通 acad.doc.SendCommand('QLEADER' 'a-s-s2-s2/2,-cc' '\n' '200,1000 ''\n' '500 ' 'UTSAB \n' '\n' ) 但这不是

    【讨论】:

      猜你喜欢
      • 2021-07-01
      • 2020-12-16
      • 2022-07-16
      • 2011-11-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多